Подгонка данных величины частотной характеристики с помощью модели пространства состояний минимальной фазы с использованием проекта величины Чебышева
B = fitmagfrd(A,N) B = fitmagfrd(A,N,RD) B = fitmagfrd(A,N,RD,WT) B = fitmagfrd(A,N,RD,WT,C)
B = fitmagfrd(A,N)
является стабильной, минимально-фазовой ss
объект с размерностью состояния N
, величина частотной характеристики которого тесно совпадает с данными величины в A
. A
представляет собой frd
1 на 1 объект, и
N
является неотрицательным целым числом.
B = fitmagfrd(A,N,RD)
увеличивает относительную степень B
чтобы быть RD
. RD
должно быть неотрицательным целым числом, значение по умолчанию которого 0
. Можно задать значение по умолчанию для RD
путем установки RD
в пустую матрицу.
B = fitmagfrd(A,N,RD,WT)
использует величину WT
для взвешивания критериев подгонки оптимизации. WT
может быть double
, ss
или frd
. Если WT
является скаляром, затем используется для взвешивания всех записей критериев ошибки (A-B)
. Если WT
является вектором, он должен быть того же размера, что и A
, и каждый отдельный ввод WT
действует как функция взвешивания на соответствующем элементе (A-B
). Значение по умолчанию для WT
равен 1, и вы можете задать его путем установки WT
в пустую матрицу.
B = fitmagfrd(A,N,RD,WT,C)
применяет дополнительные ограничения величины к B
, заданный значениями C.LowerBound
и C.UpperBound
. Они могут быть пустыми double
или frd
(с C.Frequency
равно A.Frequency
). Если C.LowerBound
непусто, тогда величина B
ограничено лежать выше C.LowerBound
. Никакая нижняя граница не применяется на частотах, где C.LowerBound
равно -inf. Точно так же UpperBound
поле может использоваться, чтобы задать верхнюю границу на величину B
. Если C
является double
или frd
(с C.Frequency
равно A.Frequency
), затем верхние и нижние ограничения, накладываемые на B
берутся непосредственно из A
как:
если C (w) = = -1, тогда примените abs (B (w)) < = abs (A (w))
если C (w) = = 1, тогда примените abs (B (w)) > = abs (A (w))
если C (w) = = 0, то никаких дополнительных ограничений
где w
обозначает частоту.
Этот входной frd
объект должен быть скаляром объектом 1 на 1 или строкой или вектором-столбцом.
fitmagfrd
использует версию log-Chebyshev величины проекта, решая
min f subject to (at every frequency point in A): |d|^2 /(1+ f/WT) < |n|^2/A^2 < |d|^2*(1 + f/WT)
плюс дополнительные ограничения, накладываемые на C
. n, d
обозначает числитель и знаменатель, соответственно, и B = n/d
. n
и d
иметь порядки (N-RD
) и N
, соответственно. Задача решается с помощью линейного программирования для фиксированных f and
бисекция для минимизации f
. Альтернативный аппроксимационный метод, который не может применить ограничения, заданные C
, есть B = fitfrd(genphase(A),N,RD,WT)
.
Oppenheim, A.V., and R.W. Schaffer, Digital Signal Processing, Prentice Hall, New Jersey, 1975, p. 513.
Boyd, S. and Vandenberghe, L., Convex Optimization, Cambridge University Press, 2004.