Frequency Scaling in INVFREQS

3 views (last 30 days)
Stephanie
Stephanie on 25 Aug 2015
Answered: Stephanie on 8 Sep 2015
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 Comments
Star Strider
Star Strider on 25 Aug 2015
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 on 8 Sep 2015
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.

Sign in to comment.

Accepted Answer

Stephanie
Stephanie on 8 Sep 2015
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.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!