Sampled gain and phase crossover margins calculator

Calculate gain crossovers [rad/s,phase margin degrees] JSON and phase crossovers [rad/s,gain margin dB] JSON with your own figures.

Your numbers

Use the units shown. Results update as you change valid inputs.

Use gain crossovers [rad/s,phase margin degrees] JSON and phase crossovers [rad/s,gain margin dB] JSON to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

Increasing angular frequencies (rad/s)
0.1,1,10,100
Open-loop magnitudes (dB)
20,10,-10,-30
Unwrapped phases (degrees)
-30,-90,-150,-210
Gain crossovers [rad/s,phase margin degrees] JSON
[[3.16227766017,60]]
Phase crossovers [rad/s,gain margin dB] JSON
[[31.6227766017,20]]

Try another scenario

Increasing angular frequencies (rad/s)
[0.1, 2, 10, 100]
Open-loop magnitudes (dB)
[20, 10, -10, -30]
Unwrapped phases (degrees)
[-30, -90, -150, -210]
Gain crossovers [rad/s,phase margin degrees] JSON
[[4.472135955,60]]
Phase crossovers [rad/s,gain margin dB] JSON
[[31.6227766017,20]]
Calculation method

Calculation method

Gain crossovers [rad/s,phase margin degrees] JSON

Detect isolated0dB and odd180degree crossings including exact first-sample endpoints; interpolate dB and unwrapped phase against log frequency. Phase margins are principal signed angular differences in (−180,180]degrees. No bracketed crossing does not imply infinite stability margin.

Phase crossovers [rad/s,gain margin dB] JSON

Detect isolated0dB and odd180degree crossings including exact first-sample endpoints; interpolate dB and unwrapped phase against log frequency. Phase margins are principal signed angular differences in (−180,180]degrees. No bracketed crossing does not imply infinite stability margin.

Symbols and units
a
Increasing angular frequencies (rad/s)
b
Open-loop magnitudes (dB)
c
Unwrapped phases (degrees)

Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.

Assumptions & limits

Assumptions & limits

  • User-supplied measurements and assumptions; Detect bracketed 0 dB and odd-180° crossings; interpolate dB and unwrapped phase against log frequency. Empty lists mean no crossing bracketed, not infinite stability margin. Supported limits: Finite numeric values bounded to 1e9 magnitude; lists and tables contain 1–100 records unless a stricter bound is stated. Inputs use the units shown. Lists explicitly paired by a method must have matching lengths; independent polynomial coefficient vectors may differ. Respect stated physical, interpolation, policy and computational domain limits. A whole interval at0dB or odd180degrees has a continuum of crossovers and is rejected as nonisolated rather than assigned one margin.
Are these inputs private?

These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.

Further reading

Method reference ↗

Background reading; this does not imply endorsement or independent review of SumFizz.

Share this page
Share this calculator

Leave unchecked to share the page without your entered values.