Преобразование частоты с нулями , полюса и усиления
[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 | Коэффициент усиления целевого фильтра |