How to get impulse response of an array of values aiming to apply fast fourier transform (fft) on impulse response array
3 次查看(过去 30 天)
显示 更早的评论
Dear colleagues, I have a challenge in building or extracting the transfer function in the form of Laplace based on a signal plotted in time domain in a pdf paper/articles. So far i managed to evaluate manually the coordinates of the signal in time domain by the following code in Matlab:
t0=[0 20 30 48 63 77 100 110 150 180 200 233 300 330 370 400 450 500 600 700 800];% points of t are obtained from the signal in whalley's paper%
y0=[0 0.5 1 1.5 2 2.5 2.875 3 3.375 3.5 3.55 3.57 3.6 3.57 3.55 3.52 3.48 3.44 3.35 3.25 3.15];% points of y are obtained from the signal in whalley's paper%
figure
plot(t0,y0,'o');
The question is how can I get the impulse response of the signal y0(t0) and how can I get the frequency response of the same signal for the same time duration. At the end I want to get the frequency response to plot bode diagram and to try to conclude the transfer function in the Laplace transform from Bode plot. Any suggestion from you ends?
0 个评论
采纳的回答
Star Strider
2016-11-6
You are doing ‘system identification’. MATLAB has an entire System Identification Toolbox devoted to it, and the Signal Processing Toolbox has the invfreqz function that will approximate it. This will be in discrete z-space. You can later use the bilinear transform to convert it to Laplace s-space. You will have to experiment to get the result you want.
5 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spectral Measurements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!