Преобразование полинома фильтра прогнозирования в коэффициенты отражения
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.
Если abs(k(i)) == 1 для любого iпоиск коэффициентов отражения является плохо обусловленной проблемой. poly2rc возвращает некоторые NaNs и предоставляет предупреждающее сообщение в этих случаях.
Простой, быстрый способ проверить, a имеет все корни внутри единичной окружности, чтобы проверить, каждый ли из элементов k имеет величину менее 1.
stable = all(abs(poly2rc(a))<1)
poly2rc реализует эту рекурсивную связь:
− k (n) 2, m=1,2,⋯,n−1
Это отношение основано на рекурсии Левинсона [1]. Для его реализации poly2rc петли через a в обратном порядке после отбрасывания его первого элемента. Для каждой итерации цикла i, функция:
Наборы k(i) равно a(i)
Применяет вторую приведенную выше взаимосвязь к элементам от 1 до i вектора a.
a = (a-k(i)*fliplr(a))/(1-k(i)^2);
[1] Кей, Стивен М. Современная спектральная оценка. Энглвуд Клиффс, Нью-Джерси: Прентис-Холл, 1988.