I am using invfreqs to obtain a transfer function from measured frequency response data. I employed the frequency scaling tip from the documentation to prevent numeric issues using the iterative method of invfreqs. I obtained a good transfer function, but need to re-scale back to the proper frequency space (Bode plot of transfer function shows frequency mapping issue). How do I re-scale the results back to my original frequency space?

2 件のコメント

Star Strider
Star Strider 2015 年 8 月 25 日
Posting your code (or attaching it if it is longer than about 20 lines, and attaching your data file if necessary, using the ‘paperclip’ icon and completing both steps for each file) would help.
Stephanie
Stephanie 2015 年 9 月 8 日
I thought the question was fairly generic so I didn't attach code. Regardless I found a solution. I converted the invfreqs output transfer function numerator and denominator to zero-pole form, scaled the zeros and poles by the inverse of the frequency scaling used prior to the invfreqs call, and then converted back to transfer function form. This solution works, but there may be other solutions as well. This one was not exactly elegant.

サインインしてコメントする。

 採用された回答

Stephanie
Stephanie 2015 年 9 月 8 日

0 投票

An answer is the following: Convert the invfreqs output transfer function numerator and denominator to zero-pole form, scaled the zeros and poles by the inverse of the frequency scaling used prior to the invfreqs call, and then convert back to transfer function form. This solution works, but there may be other solutions as well. This one was not exactly elegant.

その他の回答 (0 件)

カテゴリ

質問済み:

2015 年 8 月 25 日

回答済み:

2015 年 9 月 8 日

Community Treasure Hunt

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

Start Hunting!

Translated by