Попытка использовать tfestimate и invfreqz для нахождения коэффициентов линейной системы второго порядка
Я хотел бы использовать tfestimate
а также invfreqz
определить коэффициенты в линейной системе второго порядка.
В идеале это будет выглядеть примерно так:
Nsamp = 2^16;
t = linspace(0,100,Nsamp);
x = square(t/30) + .1*randn(1,Nsamp);
Num = 1;
Den = [20 2 10];
sys = tf(Num, Den);
y = lsim(sys,x,t);
[txy, phi] = tfestimate(x,y);
[b, a] = invfreqz(txy,phi,2,0);
Таким образом, я надеюсь, что значения в b
хорошие оценки для исходных значений, используемых в Den
,
Тем не менее, мои ценности полностью выключены. Если я построю план системы и tfestimate
Я вижу, что они совсем не близки. Я попробовал возиться со всеми настройками в tfestimate
- тип и размер окна, частота дискретизации, nfft и т. д., но я не могу получить точный ответ.
Я не уверен, что понимаю достаточно tfestimate
спектральный анализ, чтобы настроить его правильно. Или, может быть, лучше сделать это вообще, чего я не понимаю.
Кроме того, у меня нет доступа к инструментарию System ID, поэтому я не могу ничего из этого использовать.