Вычислите линейную модель с помощью итерации Steiglitz-McBride
[b,a] = stmcb(h,nb,na)
[b,a] = stmcb(y,x,nb,na)
[b,a] = stmcb(h,nb,na,niter)
[b,a] = stmcb(y,x,nb,na,niter)
[b,a] = stmcb(h,nb,na,niter,ai)
[b,a] = stmcb(y,x,nb,na,niter,ai)
Итерация Steiglitz-McBride является алгоритмом для нахождения БИХ-фильтра с предписанной импульсной характеристикой временного интервала. Это имеет приложения и в создании фильтра и в системе идентификации (параметрическое моделирование).
[b,a] = stmcb(h,nb,na) находит коэффициенты b и a из системы b (z)/a (z) с аппроксимированной импульсной характеристикой h, точно nb нули, и точно na полюса.
[b,a] = stmcb(y,x,nb,na) находит системные коэффициенты b и a из системы это, учитывая x как введено, имеет y как выведено. x и y должна быть та же длина.
[b,a] = stmcb(h,nb,na,niter) и
[b,a] = stmcb(y,x,nb,na,niter) используйте niter итерации. Значение по умолчанию для niter 5.
[b,a] = stmcb(h,nb,na,niter,ai) и
[b,a] = stmcb(y,x,nb,na,niter,ai) используйте векторный ai как первоначальная оценка коэффициентов знаменателя. Если ai не задан, stmcb использует выходной аргумент от [b,ai] = prony(h,0,na) как векторный ai.
stmcb возвращает БИХ-коэффициенты фильтра в длине nb+1 и na+1 векторы-строки b и a. Коэффициенты фильтра упорядочены в убывающих степенях z.
Если x и y имейте различные длины, stmcb производит это сообщение об ошибке:
Input signal X and output signal Y must have the same length.
stmcb попытки минимизировать квадратичную невязку между импульсной характеристикой h b (z) /a (z) и входным сигналом x.
stmcb выполняет итерации использования двух шагов:
Это предварительные фильтры h и x использование 1/a (z).
Это решает систему линейных уравнений для b и a использование \.
stmcb повторения этот процесс niter \times. Никакая проверка не сделана, чтобы видеть если b и a коэффициенты сходились в меньше, чем niter итерации.
[1] Steiglitz, K. и Л. Э. Макбрайд. “Метод для Идентификации Линейных систем”. IEEE® Transactions на Автоматическом управлении. Издание AC-10, 1965, стр 461–464.
[2] Ljung, Lennart. System Identification: Теория для Пользователя. 2-й Выпуск. Верхний Сэддл-Ривер, NJ: Prentice Hall, 1999, p. 354.