@@ -318,25 +318,28 @@ def phase_crossover_frequencies(sys):
318
318
def margin (* args ):
319
319
"""Calculate gain and phase margins and associated crossover frequencies
320
320
321
- Function ``margin`` takes either 1 or 3 parameters.
322
-
323
321
Parameters
324
322
----------
325
- sys : StateSpace or TransferFunction
326
- Linear SISO system
327
- mag, phase, w : array_like
328
- Input magnitude, phase (in deg.), and frequencies (rad/sec) from
329
- bode frequency response data
323
+ sysdata: LTI system or (mag, phase, omega) sequence
324
+ sys : StateSpace or TransferFunction
325
+ Linear SISO system
326
+ mag, phase, omega : sequence of array_like
327
+ Input magnitude, phase (in deg.), and frequencies (rad/sec) from
328
+ bode frequency response data
330
329
331
330
Returns
332
331
-------
333
- gm, pm, Wcg, Wcp : float
334
- Gain margin gm, phase margin pm (in deg), phase crossover frequency
335
- (corresponding to gain margin, where phase=-180) and gain crossover
336
- frequency (corresponding to phase margin, where gain is 0dB),
337
- in rad/sec of SISO open-loop.
338
- If more than one crossover frequency is detected for gain or phase,
339
- this returns one with the lowest corresponding margin.
332
+ gm : float
333
+ Gain margin
334
+ pm : float
335
+ Phase margin (in degrees)
336
+ Wcg : float
337
+ Gain crossover frequency (corresponding to phase margin)
338
+ Wcp : float
339
+ Phase crossover frequency (corresponding to gain margin) (in rad/sec)
340
+
341
+ Margins are of SISO open-loop. If more than one crossover frequency is
342
+ detected, returns the lowest corresponding margin.
340
343
341
344
Examples
342
345
--------
0 commit comments