tf2ca

Передаточная функция к двойному 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), таким образом что

H(z)=B(z)A(z)=(12)[H1(z)+H2(z)]

представление двойного allpass разложения.

[d1,d2] = tf2ca(b,a) то, где b является действительным, антисимметричным вектором коэффициентов числителя, и a является вектором действительных чисел коэффициентов знаменателя, соответствуя стабильному цифровому фильтру, возвращает вектора действительных чисел, d1 и d2, содержащий коэффициенты знаменателя allpass, фильтруют H1(z) и H2(z), таким образом что

H(z)=B(z)A(z)=(12)[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, такой что

H(z)=B(z)A(z)=(12)[β¯H1(z)+βH2(z)]

представление обобщенного allpass разложения.

В вышеупомянутых уравнениях H1(z) и H2(z) действительны или объединяют allpass БИХ-фильтры, данные

H1(z)=fliplr((D1(z))¯)D1(z),H2(1)(z)=fliplr((D2(1)(z)¯))D2(1)(z)

где 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.

Расширенные возможности

Смотрите также

| | | |

Введенный в R2011a

Для просмотра документации необходимо авторизоваться на сайте