Nyquist Example #5

MATLAB Code




%         ***** MATLAB Code Starts Here
%

%NYQUIST_05_MAT

%

fig_size = [232 84 774 624];

n1 = 2*conv([1 1],[1/2 1]); d1 = conv([1/0.1 1],conv([1/0.2 1],conv([1/0.3 1],[1/10 1])));

n2 = 2*conv([-1 1],[1/2 1]); d2 = conv([1/0.1 1],conv([1/0.2 1],conv([1/0.3 1],[1/10 1])));

n3 = 2*conv([1 -1],[1/2 1]); d3 = conv([1/0.1 1],conv([1/0.2 1],conv([1/0.3 1],[1/10 1])));

n4 = 2*conv([1 1],[1/2 1]); d4 = conv([-1/0.1 1],conv([1/0.2 1],conv([1/0.3 1],[1/10 1])));

w = logspace(-3,3,601);

[mag1,ph1] = bode(n1,d1,w);

[mag2,ph2] = bode(n2,d2,w);

[mag3,ph3] = bode(n3,d3,w);

[mag4,ph4] = bode(n4,d4,w);

figure(1),clf,subplot(221),plot(mag1.*cos(ph1*pi/180),mag1.*sin(ph1*pi/180),...

mag1.*cos(-ph1*pi/180),mag1.*sin(-ph1*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_1(s)'),axis('square'),axis([-0.5 2.5 -1.5 1.5]),...

subplot(222),plot(mag2.*cos(ph2*pi/180),mag2.*sin(ph2*pi/180),...

mag2.*cos(-ph2*pi/180),mag2.*sin(-ph2*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_2(s)'),axis('square'),axis([-0.5 2.5 -1.5 1.5]),...

subplot(223),plot(mag3.*cos(ph3*pi/180),mag3.*sin(ph3*pi/180),...

mag3.*cos(-ph3*pi/180),mag3.*sin(-ph3*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_3(s)'),axis('square'),axis([-2.5 0.5 -1.5 1.5]),...

subplot(224),plot(mag4.*cos(ph4*pi/180),mag4.*sin(ph4*pi/180),...

mag4.*cos(-ph4*pi/180),mag4.*sin(-ph4*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_4(s)'),axis('square'),axis([0 2 -1 1]),...

set(gcf,'Position',fig_size)

n1 = 2*conv([1/0.2 1],[1/0.3 1]); d1 = conv([1/0.1 1],conv([1 1],conv([1/2 1],[1/10 1])));

n2 = 2*conv([-1/0.2 1],[1/0.3 1]); d2 = conv([1/0.1 1],conv([1 1],conv([1/2 1],[1/10 1])));

n3 = 2*conv([1/0.2 -1],[1/0.3 1]); d3 = conv([1/0.1 1],conv([1 1],conv([1/2 1],[1/10 1])));

n4 = 2*conv([1/0.2 1],[1/0.3 1]); d4 = conv([-1/0.1 1],conv([1 1],conv([1/2 1],[1/10 1])));

[mag1,ph1] = bode(n1,d1,w);

[mag2,ph2] = bode(n2,d2,w);

[mag3,ph3] = bode(n3,d3,w);

[mag4,ph4] = bode(n4,d4,w);

figure(2),clf,subplot(221),plot(mag1.*cos(ph1*pi/180),mag1.*sin(ph1*pi/180),...

mag1.*cos(-ph1*pi/180),mag1.*sin(-ph1*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_1(s)'),axis('square'),axis([-1 3 -2 2]),...

subplot(222),plot(mag2.*cos(ph2*pi/180),mag2.*sin(ph2*pi/180),...

mag2.*cos(-ph2*pi/180),mag2.*sin(-ph2*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_2(s)'),axis('square'),axis([-2.5 2.5 -2.5 2.5]),...

subplot(223),plot(mag3.*cos(ph3*pi/180),mag3.*sin(ph3*pi/180),...

mag3.*cos(-ph3*pi/180),mag3.*sin(-ph3*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_3(s)'),axis('square'),axis([-2.5 2.5 -2.5 2.5]),...

subplot(224),plot(mag4.*cos(ph4*pi/180),mag4.*sin(ph4*pi/180),...

mag4.*cos(-ph4*pi/180),mag4.*sin(-ph4*pi/180),'r--'),grid,xlabel('Real Axis'),...

ylabel('Imag Axis'),title('G_4(s)'),axis('square'),axis([-2.5 2.5 -2.5 2.5]),...

set(gcf,'Position',fig_size)

%

%
%         ***** MATLAB Code Stops Here

Click the icon to return to the Dr. Beale's home page

Lastest revision on Wednesday, June 7, 2006 12:41 PM