Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.5.1 - Français

Change language to:
English - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function

Aide de Scilab >> CACSD (Computer Aided Control Systems Design) > g_margin


gain margin and associated crossover frequency

Calling Sequence




a SISO linear system (see :syslin).


a number, the gain margin (in dB) if any of Inf


a number, the associated frequency in hertz, or an empty matrix if the gain margin does not exist.


Given a SISO linear system in continuous or discrete time, g_margin returns gm, the gain margin in dB of h and fr, the achieved corresponding frequency in Hz.

The gain margin, if it exists, is the minimal value of the system gain at points where the nyquist plot crosses the negative real axis. In other words the gain margin is 20*log10(1/g) where g is the open loop gain of h when the frequency response phase of h equals -180°

The algorithm uses polynomial root finder to solve the equations:


for the continuous time case.


for the discrete time case.


h=syslin('c',-1+%s,3+2*%s+%s^2) //continuous time case
h = syslin(0.1,0.04798*%z+0.0464,%z^2-1.81*%z+0.9048);//discrete time case
[g ,fr]=g_margin(h);

See Also

  • p_margin — phase margin and associated crossover frequency
  • show_margins — display gain and phase margin and associated crossover frequencies
  • repfreq — frequency response
  • black — Black-Nichols diagram of a linear dynamical system
  • bode — Bode plot
  • nicholschart — Nichols chart
  • nyquist — nyquist plot
Report an issue
<< fstabst CACSD (Computer Aided Control Systems Design) gamitg >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 02 13:54:31 CEST 2014