Estimating the Impulse Response from Data, SISO system.
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I would like to know more details on how does the function impulse work? In case,
ze = iddata(y,u,Ts)
impulse(ze)
Where, y= output sampled data; u= input sampled data; Ts= sample time
The explanation given in http://www.mathworks.com/help/toolbox/ident/ref/impulse.html is very superficial. Could you give me more details (mathematically speaking) on the function impulse? If possible please point me to articles that talk about it.
Thanks.
0 个评论
采纳的回答
Rajiv Singh
2011-4-12
It performs FIR modeling for an appropriately selected number of lags: y(t) = \sum_{i=0}{N-1} b_i*u(t-i). For example, you may do arx(data, [na nb nk]) where na = 0, nb = 20, nk = 0 for a SISO system.
The "data" here in an iddata object containing the measured output signal and a "pre-whitened" input signal (u_white). The prewhitening of the input is performed by filtering the actual input signal using the model: u_white(t) = 1/a(q) u(t). For example, do the following to obtain the prewhitened input:
M = arx(u, 4); A = M.a; u_white = filter(u,A,[1, zeros(1,3)]);
The time horizon selected for estimation includes a portion of negative real axis so that feedback effects in the data may be detected. Please see the code in iddata/impulse to see how this is done. In many situations, this detail is irrelevant.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Analyze Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!