Передаточная функция к двойному allpass
[d1,d2] = tf2ca(b,a)
[d1,d2] = tf2ca(b,a)
[d1,d2,beta] = tf2ca(b,a)
[d1,d2] = tf2ca(b,a)
где b
действительный, симметричный вектор коэффициентов числителя и a
вектор действительных чисел коэффициентов знаменателя, соответствуя устойчивому цифровому фильтру, возвращает вектора действительных чисел d1
и d2
содержание коэффициентов знаменателя allpass фильтрует H1(z) и H2(z), таким образом что
представление двойного allpass разложения.
[d1,d2] = tf2ca(b,a)
где b
действительный, антисимметричный вектор коэффициентов числителя и a
вектор действительных чисел коэффициентов знаменателя, соответствуя устойчивому цифровому фильтру, возвращает вектора действительных чисел d1
и d2
содержание коэффициентов знаменателя allpass фильтрует H1(z) и H2(z), таким образом что
В некоторых случаях разложение не возможно с действительным H1(z) и H2(z). В тех случаях связался обобщенный, allpass разложение может быть возможным, как описано в следующем синтаксисе.
[d1,d2,beta] = tf2ca(b,a)
возвращает комплексные векторы d1
и d2
содержание коэффициентов знаменателя allpass фильтрует H1(z) и H2(z) и комплексный скалярный beta
, удовлетворение |beta
| = 1, такой, что
представление обобщенного allpass разложения.
В вышеупомянутых уравнениях H1(z) и H2(z) действительны или объединяют allpass БИХ-фильтры, данные
где D1(z) и D2(z) являются полиномами, коэффициенты которых даны d1
и d2
.
Двойное allpass разложение не всегда возможно. Тем не менее, Баттерворт, Чебышев, и Эллиптические БИХ-фильтры, среди других, могут быть включены в этот способ. Для получения дополнительной информации обратитесь к Руководству пользователя Signal Processing Toolbox™.
[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.
ca2tf
| cl2tf
| iirpowcomp
| latc2tf
| tf2latc