zpkftransf
Zero-pole-gain frequency transformation
Syntax
[Z2,P2,K2] = zpkftransf(Z,P,K,AllpassNum,AllpassDen)
Description
[Z2,P2,K2] = zpkftransf(Z,P,K,AllpassNum,AllpassDen) returns
zeros, Z2, poles, P2,
and gain factor, K2, of
the transformed lowpass digital filter. The prototype lowpass filter
is given with zeros, Z, poles, P,
and gain factor, K. If AllpassDen is
not specified it will default to 1. If neither AllpassNum nor AllpassDen is
specified, then the function returns the input filter.
Examples
Design a prototype real IIR halfband filter using a standard elliptic approach:
[b,a] = ellip(3,0.1,30,0.409); [AlpNum,AlpDen] = allpasslp2lp(0.5,0.25); [z2,p2,k2] = zpkftransf(roots(b),roots(a),b(1),AlpNum,AlpDen);
Verify the result by comparing the prototype filter with the target filter:
filterAnalyzer(b,a,k2*poly(z2),poly(p2));
After transforming the filter, you get the response shown in the figure, where the passband has been shifted towards zero.

Arguments
| Variable | Description |
|---|---|
Z | Zeros of the prototype lowpass filter |
P | Poles of the prototype lowpass filter |
K | Gain factor of the prototype lowpass filter |
FTFNum | Numerator of the mapping filter |
FTFDen | Denominator of the mapping filter |
Z2 | Zeros of the target filter |
P2 | Poles of the target filter |
K2 | Gain factor of the target filter |
Version History
Introduced in R2011a