residuez

Частично-дробное расширение Z-преобразования

Описание

пример

[ro,po,ko] = residuez(bi,ai) находит остатки, полюса и прямые условия расширения элементарной дроби отношения полинома числителя и полинома знаменателя, b и a.

[bo,ao] = residuez(ri,pi,ki) с тремя входными параметрами и двумя выходными аргументами, преобразует расширение элементарной дроби назад на полиномы с коэффициентами в векторах-строках b и a.

Примеры

свернуть все

Вычислите частично-дробное расширение, соответствующее БИХ третьего порядка фильтр lowpass, описанный передаточной функцией

H(z)=0.05634(1+z-1)(1-1.0166z-1+z-2)(1-0.683z-1)(1-1.4461z-1+0.7957z-2).

Выразите числитель и знаменатель как полиномиальные свертки.

b0 = 0.05634;
b1 = [1  1];
b2 = [1 -1.0166 1];
a1 = [1 -0.683];
a2 = [1 -1.4461 0.7957];

b = b0*conv(b1,b2);
a = conv(a1,a2);

Вычислите остатки, полюса и прямые условия частично-дробного расширения.

[r,p,k] = residuez(b,a)
r = 3×1 complex

  -0.1153 - 0.0182i
  -0.1153 + 0.0182i
   0.3905 + 0.0000i

p = 3×1 complex

   0.7230 + 0.5224i
   0.7230 - 0.5224i
   0.6830 + 0.0000i

k = -0.1037

Постройте полюса и нули передаточной функции и наложите полюса, которые вы только нашли.

zplane(b,a)
hold on
plot(p,'^r')
hold off

Используйте residuez снова восстановить передаточную функцию.

[bn,an] = residuez(r,p,k)
bn = 1×4

    0.0563   -0.0009   -0.0009    0.0563

an = 1×4

    1.0000   -2.1291    1.7834   -0.5435

Входные параметры

свернуть все

Полиномиальные коэффициенты, заданные как векторы. Векторы b и a задайте коэффициенты полиномов системы дискретного времени b (z)/a (z) в убывающих степенях z.

B(z)=b0+b1z1+b2z2++bmzmA(z)=a0+a1z1+a2z2++anzn

Если существует несколько корней и a > n-1,

B(z)A(z)=r(1)1p(1)z1++r(n)1p(n)z1+k(1)+k(2)z1++k(mn+1)z(mn)

Остатки элементарной дроби, заданной как вектор.

Полюса элементарной дроби, заданной как вектор.

Прямые условия, заданные как вектор-строка.

Выходные аргументы

свернуть все

Остатки элементарной дроби, возвращенной как вектор.

Полюс элементарной дроби, возвращенной как вектор. Количество полюсов

n = length(a)-1 = length(r) = length(p)

Если     p(j) = ... = p(j+s-1) полюс кратности s, затем расширение включает условия формы

r(j)1p(j)z1+r(j+1)(1p(j)z1)2++r(j+sr1)(1p(j)z1)s

Прямые условия, возвращенные как вектор-строка. Прямой вектор коэффициентов термина k пусто если length(b) меньше length(a); в противном случае:

length(k) = length(b) - length(a) + 1

Полиномиальные коэффициенты, возвращенные как векторы.

Алгоритмы

residuez преобразует систему дискретного времени, выраженную как отношение двух полиномов, к расширению элементарной дроби, или остатку, форме. Это также преобразует расширение элементарной дроби назад на исходные полиномиальные коэффициенты.

Примечание

Численно, расширение элементарной дроби отношения полиномов является плохо изложенной проблемой. Если полином знаменателя около полинома с несколькими корнями, то небольшие изменения в данных, включая ошибки округления, могут вызвать произвольно большие изменения в получившихся полюсах и остатках. Необходимо использовать пространство состояний или нулевые полюсом представления вместо этого.

residuez применяет стандартные функции MATLAB® и методы элементарной дроби, чтобы найти rP, и k от b и a. Это находит

  • Прямые условия a использование deconv (полиномиальное длинное деление), когда length(b) > length(a)-1.

  • Полюса с помощью p = roots(a).

  • Любые повторные полюса, переупорядочивая полюса согласно их кратности.

  • Остаток для каждого неповторения подпирает шестами pj путем умножения b (z)/a (z) 1 / (1 - pj z −1) и выполнения получившейся рациональной функции в z = pj.

  • Остатки для повторных полюсов путем решения

    S2*r2 = h - S1*r1
    

    для r2 использование \H импульсная характеристика уменьшаемого b (z)/a (z), S1 матрица, столбцы которой являются импульсными характеристиками систем первого порядка, составленных из неповторяющихся корней и r1 столбец, содержащий остатки для неповторяющихся корней. Каждый столбец матричного S2 импульсная характеристика. Для каждого корневого pj кратности sj, S2 содержит столбцы sj, представляющие импульсные характеристики каждой из следующих систем.

    11pjz1,1(1pjz1)2,,1(1pjz1)sj

    Векторный h и матрицы S1 и S2 имейте n + xtra строки, где n общее количество корней и внутреннего параметра xtra, установите на 1 по умолчанию, определяет степень сверхопределения системы уравнений.

Примечание

residue функция на стандартном языке MATLAB очень похожа на residuez. Это вычисляет расширение элементарной дроби систем непрерывного времени в области Лапласа (см. ссылку [1]), а не системы дискретного времени в z - область, как делает residuez.

Ссылки

[1] Оппенхейм, Алан V, Рональд В. Шафер и Джон Р. Бак. Обработка сигналов дискретного времени. 2-й Эд. Верхний Сэддл-Ривер, NJ: Prentice Hall, 1999.

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

| | | | | | | | | |

Представлено до R2006a

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