Dynamics & Control · Lab
Root Locus Lab
Enter the base system G(s) as polynomial coefficients or directly as ω_n and ζ, then move the scalar gain. The locus shows where the closed-loop poles of 1 + K·G(s) = 0 travel; the panels show exactly what the current gain does to stability and to the response.
Base system G(s)
loop L(s) = K · G(s) with K = 1
characteristic equation 1 + K·G(s) = 0 → D(s) + K·N(s) = 0
closed loop T(s) = K·N(s) / [D(s) + K·N(s)]
Gain K
Read as the classical locus parameter: the swept scalar multiplies G(s) in L(s) = K·G(s). Switch to proportional control to read the same number as a controller gain.
Range in use: 0 … 10000. The automatic range is large enough for finite-zero convergence and asymptotic behaviour, and it always contains every stability crossing that was found.
Current lower bound 0.
Root-locus properties
| Branches (n) | 3 |
|---|---|
| Finite zeros (m) | 0 |
| Branches to infinity (n − m) | 3 |
| Asymptote centroid σ_a | -1 |
| Asymptote angles | 60°, 180°, 300° |
Open-loop poles and zeros
- × pole s = -1
- × pole s = -2
- × pole s = 0
- No finite zeros.
Real-axis segments
- −∞ ≤ Re(s) ≤ -2
- -1 ≤ Re(s) ≤ 0
Breakaway / break-in points (1)
- ◇ s = -0.4226 · breakaway at K = 0.3849
Rejected candidates (1)
- s = -1.577 · rejected — Not on a positive-K real-axis locus segment.
Key points
- ✕ open-loop pole s = -1
- ✕ open-loop pole s = -2
- ✕ open-loop pole s = 0
- 3 branch(es) leave along the asymptotes from σ_a = -1
- ◇ breakaway at s = -0.4226 ·
- △ ω = 1.414 rad/s · · destabilizing
Angle and magnitude conditions
Angle condition. A point s belongs to the positive-K locus when the open-loop phase satisfies ∠G(s) = (2l + 1)·180° — the phase contributed by the zeros minus the phase contributed by the poles is an odd multiple of 180°.
Magnitude condition. The gain at such a point follows from |K·G(s)| = 1, i.e. K = 1/|G(s)|. Every branch point plotted here obeys both conditions by construction: it is a root of D(s) + K·N(s).
Root locus — 1 + K·G(s) = 0
- ✕ open-loop poles (3)
- ■ closed-loop poles at K = 1
- — locus branches
- ▬ real-axis locus
- ┄ asymptotes
- ✛ centroid σ_a = -1
- ◇ break points (1)
- △ imaginary-axis crossings
- ◌ landmarks too close to separate on screen — the ring lists them all
- ┆ stability boundary Re(s) = 0; shaded side is unstable
Closed-loop poles at the current gain
| Gain K | 1 |
|---|---|
| Closed-loop verdict | Asymptotically stable |
| Right-half-plane poles | 0 |
| Imaginary-axis poles | 0 |
| Dominant Re(s) | -0.3376 |
| Pole | Re(s) | Im(s) | Half-plane |
|---|---|---|---|
| ■ 1 | -2.325 | 0 | Left |
| ■ 2 | -0.3376 | 0.5623 | Left |
| ■ 3 | -0.3376 | -0.5623 | Left |
Closed-loop response T(s) = K·G/(1 + K·G)
| Final value y∞ | 1 |
|---|---|
| Peak value | 1.145 |
| Peak time | 6.053 s |
| Percent overshoot | 14.46 % |
| Settling time (2%) | 12.37 s |
| Settling time (5%) | 8.526 s |
| Rise time (10%–90%) | 2.678 s |
Stability range in K
- 0 ≤ K < 6 · stable
- 6 ≤ K (up to the largest gain examined) · unstable (2 RHP pole(s))
- K = 6 · ω = 1.414 rad/s · destabilizing
These are computed landmarks, not recommendations: root locus is an analysis tool and there is no universal optimal gain.
Loop frequency summary — L(s) = K·G(s)
| Gain crossover ω_gc | 0.4457 rad/s |
|---|---|
| Phase margin | 53.41° |
| Gain margin | 15.56 dB |
The full Bode and Nyquist workspace lives in the Transfer Function Lab; this is a compact reading of the current loop only.
Continue with this system
The current model travels with the link; nothing is re-entered and nothing opens on its own.
The gain travels as part of the loop numerator, so it means the same thing in every workspace: the loop analysed there is exactly K·G(s), while the plant links carry the untouched G(s).
Diagnostics
Diagnostics
- · Info Simple poles on the imaginary axis give a bounded, non-decaying mode: the system is marginally stable, not asymptotically stable.
What this Lab models
The closed-loop pole trajectories of 1 + K·G(s) = 0 as the scalar gain K varies: real-axis segments, asymptotes, breakaway points, imaginary-axis crossings, the stable gain interval(s) and the resulting closed-loop response at the selected K.