Преобразование частоты нулей, полюсов и усиления
[Z2,P2,K2] = zpkftransf(Z,P,K,AllpassNum,AllpassDen)
[Z2,P2,K2] = zpkftransf(Z,P,K,AllpassNum,AllpassDen) возвращает нули, Z2, полюса, P2, и фактор усиления, K2, преобразованного цифрового фильтра lowpass. Прототип фильтр lowpass дан с нулями, Z, полюса, P, и фактор усиления, K. Если AllpassDen не задан это примет значение по умолчанию к 1. Если никакой AllpassNum ни AllpassDen задан, затем функция возвращает входной фильтр.
Спроектируйте прототип действительный БИХ-полуленточный фильтр с помощью стандартного эллиптического подхода:
[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);
Проверьте результат путем сравнения прототипного фильтра с целевым фильтром:
fvtool(b, a, k2*poly(z2), poly(p2));
После преобразования фильтра вы получаете показанный на рисунке ответ, где полоса пропускания была смещена по направлению к нулю.

| Переменная | Описание |
|---|---|
Z | Нули прототипа фильтр lowpass |
P | Полюса прототипа фильтр lowpass |
K | Фактор усиления прототипа фильтр lowpass |
FTFNum | Числитель фильтра отображения |
FTFDen | Знаменатель фильтра отображения |
Z2 | Нули целевого фильтра |
P2 | Полюса целевого фильтра |
K2 | Фактор усиления целевого фильтра |