tf2ca
Transfer function to coupled allpass
Syntax
[d1,d2] = tf2ca(b,a)
[d1,d2] = tf2ca(b,a)
[d1,d2,beta] = tf2ca(b,a)
Description
[d1,d2] = tf2ca(b,a)
where b
is
a real, symmetric vector of numerator coefficients and a
is
a real vector of denominator coefficients, corresponding to a stable
digital filter, returns real vectors d1
and d2
containing
the denominator coefficients of the allpass filters H1(z) and H2(z) such
that
representing a coupled allpass decomposition.
[d1,d2] = tf2ca(b,a)
where b
is
a real, antisymmetric vector of numerator coefficients and a
is
a real vector of denominator coefficients, corresponding to a stable
digital filter, returns real vectors d1
and d2
containing
the denominator coefficients of the allpass filters H1(z) and H2(z) such
that
In some cases, the decomposition is not possible with real H1(z) and H2(z). In those cases a generalized coupled allpass decomposition may be possible, as described in the following syntax.
[d1,d2,beta] = tf2ca(b,a)
returns complex
vectors d1
and d2
containing
the denominator coefficients of the allpass filters H1(z) and H2(z),
and a complex scalar beta
, satisfying |beta
|
= 1, such that
representing the generalized allpass decomposition.
In the above equations, H1(z) and H2(z) are real or complex allpass IIR filters given by
where D1(z) and D2(z) are
polynomials whose coefficients are given by d1
and d2
.
Note
A coupled allpass decomposition is not always possible. Nevertheless, Butterworth, Chebyshev, and Elliptic IIR filters, among others, can be factored in this manner. For details, refer to Signal Processing Toolbox™ User's Guide.
Examples
[b,a]=cheby1(9,.5,.4); [d1,d2]=tf2ca(b,a); % TF2CA returns denominators of the allpass. num = 0.5*conv(fliplr(d1),d2)+0.5*conv(fliplr(d2),d1); den = conv(d1,d2); % Reconstruct numerator and denonimator. MaxDiff=max([max(b-num),max(a-den)]); % Compare original and reconstructed % numerator and denominators.
Extended Capabilities
Version History
Introduced in R2011a
See Also
ca2tf
| cl2tf
| iirpowcomp
| latc2tf
| tf2latc