How to set the frequency range of a nyquist plot?

21 views (last 30 days)
I use the following command to draw a Nyquist plot a dynamic transfer function:
s=tf('s');
G0=(d_x*(d_Fx*SYSD{1,1}+d_Fy*SYSD{2,1}+d_Fz*SYSD{3,1})+...
d_y*(d_Fx*SYSD{2,1}+d_Fy*SYSD{2,2}+d_Fz*SYSD{3,2})+...
d_z*(d_Fx*SYSD{3,1}+d_Fy*SYSD{3,2}+d_Fz*SYSD{3,3}))*(...
exp(-T_t*s)-1)*b*k_cb;
figure(8);
NyquistPlot=nyquistplot(G0);
setoptions(NyquistPlot,'ShowFullContour','off','FreqUnits','Hz','Grid','off');
CurrentPlots=get(gca,'children');
set(CurrentPlots(1),'DisplayName',['a_p=',num2str(a_p),' mm']);
set(gcf,'color','w');
set(gca, 'XMinorGrid','on', 'YMinorGrid','on');
legend('Location','best');
title('Ortskurve von G_0(jw)');
hold on;
xline(1,'HandleVisibility','off');
For the purpose of my analysis, I only need Nyquist plot from 20 Hz to 200 Hz range and I want to hide the Nyquist curve outside the abovementioned frequency range. However I didn't find any option about manipulating the frequency limit of the curve.

Answers (1)

Cris LaPierre
Cris LaPierre on 17 Feb 2022
You should be able to set the freqeuncy range using the following syntax:
  • h = nyquistplot(___,w) plots Nyquist diagram for frequencies specified by the frequencies in w.
  • If w is a cell array of the form {wmin,wmax}, then nyquistplot plots the Nyquist diagram at frequencies ranging between wmin and wmax.
  • Specify frequencies in units of rad/TimeUnit, where TimeUnit is the TimeUnit property of the model.
See here for more.
load TransferFcnNyquist.mat
s=tf('s');
G0=(d_x*(d_Fx*SYSD{1,1}+d_Fy*SYSD{2,1}+d_Fz*SYSD{3,1})+...
d_y*(d_Fx*SYSD{2,1}+d_Fy*SYSD{2,2}+d_Fz*SYSD{3,2})+...
d_z*(d_Fx*SYSD{3,1}+d_Fy*SYSD{3,2}+d_Fz*SYSD{3,3}))*(...
exp(-T_t*s)-1)*b*k_cb;
figure(8);
NyquistPlot=nyquistplot(G0,{20*2*pi,200*2*pi});
% ^^^^^^^^^^^^^^^^^^ specify range in rad
setoptions(NyquistPlot,'ShowFullContour','off','FreqUnits','Hz','Grid','off');
CurrentPlots=get(gca,'children');
set(CurrentPlots(1),'DisplayName',['a_p=',num2str(a_p),' mm']);
set(gcf,'color','w');
set(gca, 'XMinorGrid','on', 'YMinorGrid','on');
legend('Location','best');
title('Ortskurve von G_0(jw)');
xline(1,'HandleVisibility','off');

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!