tf2cl

Передаточная функция к двойной решетке allpass

Синтаксис

[k1,k2] = tf2cl(b,a)
[k1,k2] = tf2cl(b,a)
[k1,k2,beta] = tf2cl(b,a)

Описание

[k1,k2] = tf2cl(b,a) то, где b является действительным, симметричным вектором коэффициентов числителя, и a является вектором действительных чисел коэффициентов знаменателя, соответствуя стабильному цифровому фильтру, выполнит двойное allpass разложение

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

из стабильного БИХ фильтруют H(z) и преобразовывают allpass передаточные функции H1(z) и H2(z) к двойной решетке allpass структура с коэффициентами, данными в векторах k1 и k2.

[k1,k2] = tf2cl(b,a) то, где b является действительным, антисимметричным вектором коэффициентов числителя, и a является вектором действительных чисел коэффициентов знаменателя, соответствуя стабильному цифровому фильтру, выполняет двойное allpass разложение

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

из стабильного БИХ-фильтра H(z) и преобразовывает allpass передаточные функции H1(z) и H2(z) к двойной решетке allpass структура с коэффициентами, данными в векторах k1 и k2.

В некоторых случаях разложение не возможно с действительным H1(z) и H2(z). В тех случаях связался обобщенный, allpass разложение может быть возможным, с помощью синтаксиса, описанного ниже.

[k1,k2,beta] = tf2cl(b,a) выполняет обобщенное allpass разложение стабильного БИХ-фильтра H(z) и преобразовывает комплекс allpass передаточные функции H1(z) и H2(z) к соответствующей решетке allpass фильтры

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

где beta является комплексным скаляром значения, равного 1.

Примечание

Связанное allpass разложение не всегда возможно. Тем не менее, Баттерворт, Чебышев, и Эллиптические БИХ-фильтры, среди других, могут быть включены в этот способ. Для получения дополнительной информации обратитесь к Руководству пользователя Signal Processing Toolbox™.

Примеры

[b,a]=cheby1(9,.5,.4);
[k1,k2]=tf2cl(b,a); % Get the reflection coeffs. for the lattices.
[num1,den1]=latc2tf(k1,'allpass'); % Convert each allpass lattice
[num2,den2]=latc2tf(k2,'allpass'); % back to transfer function.
num = 0.5*conv(num1,den2)+0.5*conv(num2,den1);
den = conv(den1,den2); % Reconstruct numerator and denonimator.
MaxDiff=max([max(b-num),max(a-den)]); % Compare original and reconstructed
							% numerator and denominators.

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

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

| | | | |

Введенный в R2011a

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