poly2rc

Преобразуйте полином предсказательного фильтра в отражательные коэффициенты

Синтаксис

k = poly2rc(a)
[k,r0] = poly2rc(a,efinal)

Описание

k = poly2rc(a) преобразует полином предсказательного фильтра a к отражательным коэффициентам соответствующей структуры решетки. a может быть действительным или комплексным, и a(1) не может быть 0. Если a(1) не равно 1, poly2rc нормирует полином предсказательного фильтра на a(1)K вектор-строка из размера length(a)-1.

[k,r0] = poly2rc(a,efinal) возвращает автокорреляцию нулевой задержки, r0, на основе итоговой ошибки предсказания, efinal.

Примеры

свернуть все

Учитывая полином предсказательного фильтра, a, и итоговая ошибка предсказания, efinal, определите отражательные коэффициенты соответствующей структуры решетки и автокорреляции нулевой задержки.

a = [1.0000 0.6149 0.9899 0.0000 0.0031 -0.0082];
efinal = 0.2;
[k,r0] = poly2rc(a,efinal)
k = 5×1

    0.3090
    0.9801
    0.0031
    0.0081
   -0.0082

r0 = 5.6032

Ограничения

Если abs(k(i)) == 1 для любого i, нахождение отражательных коэффициентов является плохо обусловленной проблемой. poly2rc возвращает некоторый NaNs и предоставляет предупреждающее сообщение в тех случаях.

Советы

Простой, быстрый способ проверять, если a имеет все его корни в модульном кругу, должен проверять если каждый из элементов k имеет величину меньше чем 1.

stable = all(abs(poly2rc(a))<1)

Алгоритмы

poly2rc реализации это рекурсивное отношение:

k(n)=an(n)an1(m)=an(m)k(n)an(nm)1k(n)2,m=1,2,,n1

Это отношение основано на рекурсии Левинсона [1]. Реализовывать его, poly2rc циклы через a в обратном порядке после отбрасывания его первого элемента. Для каждой итерации цикла i, функция:

  1. Наборы k(i) равняйтесь a(i)

  2. Применяет второе отношение выше к элементам 1 через i из векторного a.

    a = (a-k(i)*fliplr(a))/(1-k(i)^2);
    

Ссылки

[1] Кей, Стивен М. Современная спектральная оценка. Englewood Cliffs, NJ: Prentice Hall, 1988.

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

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

| | | | |

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