Main Content

Wave Digital Filter to allpass coefficient transformation

accepts
the cell array of transformed allpass coefficient vectors `A`

= wdf2allpass(`W`

)`W`

.
Each cell of `W`

contains the transformed real
coefficients of a section of a cascade allpass filter. The output `A`

is
also a cell array, and each cell of `A`

contains
the conventional polynomial version of the corresponding cell of `W`

. `W`

is
used by allpass filter objects such as `dsp.AllpassFilter`

and `dsp.CoupledAllpassFilter`

,
with `Structure`

set to `'Wave Digital Filter'`

.
Every cell of `W`

must contain a real vector of
length 1,2, or 4. When the length is 4, the second and fourth components
must both be zero. `W`

can be a row or column vector
of cells while `A`

is always returned as column.

`wdf2allpass`

provides the inverse operation
of `allpass2wdf`

, by transforming the transformed
cascade of allpass coefficients `W`

into their
conventional polynomial representation `A`

. Please
refer to the reference page for `allpass2wdf`

for
more details about the two representations.

`W`

defines a multisection allpass filter,
and `wdf2allpass`

applies separately to each section,
with the same transformation used in the single-section case. In this
case, the numeric coefficients vector `w`

can have
order 1, 2, or 4.

The relations between the vector of section coefficients *a* and *w* respectively
depend on the order, as follows:

$$\begin{array}{l}for\text{}order\text{}1\text{:}\\ {a}_{1}={w}_{1}\\ for\text{}order\text{}2:\\ {a}_{1}={w}_{2}(1+{w}_{1})\\ {a}_{2}={w}_{1}\\ for\text{}order\text{}4:\\ {a}_{2}={w}_{3}(1+{w}_{1})\\ {a}_{4}={w}_{1}\\ {a}_{1}={a}_{3}=0\end{array}$$

[1] M. Lutovac, D. Tosic, B. Evans, *Filter Design
for Signal Processing using MATLAB and Mathematica*. Prentice
Hall, 2001.

`allpass2wdf `

| `ca2tf`

| `dsp.AllpassFilter `

| `dsp.CoupledAllpassFilter`

| `latc2tf`