Change frequency units of frequency-response data model
sys_new = chgFreqUnit(sys,newfrequnits) changes units of the frequency points in sys to newfrequnits. Both Frequency and FrequencyUnit properties of sys adjust so that the frequency responses of sys and sys_new match.
New units of frequency points, specified as one of the following strings:
rad/TimeUnit and cycles/TimeUnit express frequency units relative to the system time units specified in the TimeUnit property.
Frequency-response data model of the same type as sys with new units of frequency points. The frequency response of sys_new is same as sys.
This example shows how to change units of the frequency points in a frequency-response data model.
Create a frequency-response data model.
load AnalyzerData; sys = frd(resp,freq);
The data file AnalyzerData has column vectors freq and resp. These vectors contain 256 test frequencies and corresponding complex-valued frequency response points, respectively. The default frequency units of sys is rad/TimeUnit, where TimeUnit is the system time units.
Change the frequency units.
sys1 = chgFreqUnit(sys,'rpm');
The FrequencyUnit property of sys1 is rpm.
Compare the Bode responses of sys and sys1.
The magnitude and phase of sys and sys1 match.
(Optional) Change the FrequencyUnit property of sys to compare the Bode response with the original system.
sys2=sys; sys2.FrequencyUnit = 'rpm'; bodeplot(sys,'r',sys2,'gx'); legend('sys','sys2');
Changing the FrequencyUnit property changes the original system. Therefore, the Bode responses of sys and sys2 do not match. For example, the original corner frequency at 2 rad/s changes to 2 rpm (or 0.2 rad/s).