フィルターのクリア

Best way for finding transfer function in time domain

19 ビュー (過去 30 日間)
mehrab zamanian
mehrab zamanian 2023 年 1 月 29 日
回答済み: Star Strider 2023 年 1 月 29 日
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

採用された回答

Star Strider
Star Strider 2023 年 1 月 29 日
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 件)

カテゴリ

Help Center および File ExchangeAnalog Filters についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by