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, Нью-Джерси: Prentice Hall, 1988.

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

.

См. также

| | | | |

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