Best way for finding transfer function in time domain
23 views (last 30 days)
Show older comments
mehrab zamanian
on 29 Jan 2023
Answered: Star Strider
on 29 Jan 2023
I have the input and output in time domain and I want to find transfer function in time domain. one way is fist find transfer function in freq domain and after that get ifft for caculate transfer function in time domain. I explain this way in the following code:
FT_input=fft(input,NFFT);
FT_output=fft(output,NFFT);
TransferFunction=(FT_output./FT_input);
TimeDomainTF=ifft(TransferFunction,NFFT);
I want to know is there any simple way that I dont have ti get fft and ifft. I want to find Ht in following eqn:
conv(input,Ht)=output
0 Comments
Accepted Answer
Star Strider
on 29 Jan 2023
If you want to create a filter from it (returning numerator and denominator coefficient vectors), use the Signal Processing Toolbox invfreqz function. Then use filtfilt with the estimated filter and ‘input’ to get ‘output’.
To estimate it as a control system, use the System Identification Toolbox functions iddata and then either ssest or tfest. Then use lsim with ‘input’ (and its associated time vector) to get ‘output’.
The approach you use depends on the result you want.
.
0 Comments
More Answers (0)
See Also
Categories
Find more on Transfer Function Models in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!