Вычислите линейную модель с помощью итерации 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. Никакая проверка не сделана, чтобы видеть, сходились ли 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.