summaryrefslogtreecommitdiff
path: root/257/CH11/EX11.17/example_11_17.sce
diff options
context:
space:
mode:
Diffstat (limited to '257/CH11/EX11.17/example_11_17.sce')
-rw-r--r--257/CH11/EX11.17/example_11_17.sce23
1 files changed, 23 insertions, 0 deletions
diff --git a/257/CH11/EX11.17/example_11_17.sce b/257/CH11/EX11.17/example_11_17.sce
new file mode 100644
index 000000000..2e9f6a3bb
--- /dev/null
+++ b/257/CH11/EX11.17/example_11_17.sce
@@ -0,0 +1,23 @@
+s=poly(0,'s');
+F=syslin('c',[10*(s*0.5+1)/((1+0.25*s)*s*(0.2*s+1))])
+
+fmin=0.1; //Min freq in Hz
+fmax=20; //Max freq in Hz
+scf(1);clf;
+bode(F,fmin,fmax); //Plots frequency response of open-loop system in Bode diagram
+
+[GainMargin,freqGM]=g_margin(F) //Calculates gain margin [dB] and corresponding frequency [Hz]
+disp(GainMargin,"GM=")
+disp(freqGM*2*3.14,"omegaPC=")
+
+[PhaseMargin,freqPM]=p_margin(F) //Calculates phase [deg] and corresponding freq [Hz] of phase margin
+disp(PhaseMargin,"PM=")
+disp(freqPM*2*3.14,"omegaGC")
+
+show_margins(F) //display gain and phase margin and associated crossover frequencies
+
+if(GainMargin>0 & PhaseMargin>0 )
+ disp("stable system")
+else
+ disp("unstable system")
+end