Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.4.1 - Русский

Change language to:
English - Français - 日本語 - Português -

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

Scilab help >> CACSD > p_margin


phase margin and associated crossover frequency

Calling Sequence

[phm,fr] = p_margin(h)



a SISO linear system (see :syslin).


a number, the phase margin in degree if it exists or an empty matrix.


a number, the corresponding frequency ( in hz) or an empty matrix.


Given a SISO linear system in continuous or discrete time, p_margin returns phm, the phase margin in degree of h and fr, the achieved corresponding frequency in hz.

The phase margin is the values of the phase at frequency points where the nyquist plot of h crosses the unit circle. In other words the phase margin is the difference between the phase of the frequency response of h and -180° when the gain of h is 1.

The algorithm uses polynomial root finder to solve the equations:


for the continuous time case.


for the discrete time case.


//continuous case

//discrete case
h = syslin(0.1,0.04798*%z+0.0464,%z^2-1.81*%z+0.9048);//ok
[p ,f]=p_margin(h)

See Also

  • p_margin — gain 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
  • chart — Nichols chart
  • nyquist — nyquist plot
Report an issue
<< obsvss CACSD parrot >>

Copyright (c) 2022-2023 (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:
Tue Apr 02 17:37:55 CEST 2013