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) | 2 |
|---|---|
| Finite zeros (m) | 0 |
| Branches to infinity (n − m) | 2 |
| Asymptote centroid σ_a | -0.75 |
| Asymptote angles | 90°, 270° |
Open-loop poles and zeros
- × pole s = -0.75 + 4.943j
- × pole s = -0.75 − 4.943j
- No finite zeros.
Real-axis segments
- No part of the real axis is on the locus.
Breakaway / break-in points (0)
- No verified break point: dK/ds = 0 has no real solution on a positive-gain segment here.
Rejected candidates (1)
- s = -0.75 · rejected — Not on a positive-K real-axis locus segment.
Departure and arrival angles
- departure from -0.75 + 4.943j · 90°
- departure from -0.75 − 4.943j · 270°
Key points
- ✕ open-loop pole s = -0.75 + 4.943j
- ✕ open-loop pole s = -0.75 − 4.943j
- 2 branch(es) leave along the asymptotes from σ_a = -0.75
- None on the positive-gain locus.
- None in the gain range examined: the locus stays on one side of Re(s) = 0.
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 (2)
- ■ closed-loop poles at K = 1
- — locus branches
- ┄ asymptotes
- ✛ centroid σ_a = -0.75
- ◌ 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.75 |
| Pole | Re(s) | Im(s) | Half-plane |
|---|---|---|---|
| ■ 1 | -0.75 | 4.994 | Left |
| ■ 2 | -0.75 | -4.994 | Left |
| Regime | Underdamped (0 < ζ < 1) |
|---|---|
| ω_n | 5.05 rad/s |
| ζ | 0.1485 |
| ω_d | 4.994 rad/s |
| Percent overshoot | 62.39 % |
| Settling time (2%, envelope) | 5.333 s |
These metrics are reported only because the closed loop really is the canonical second-order form here: a degree-2 characteristic polynomial with no closed-loop zero. Add a zero or a third pole and they disappear rather than being approximated.
Closed-loop response T(s) = K·G/(1 + K·G)
| Final value y∞ | 0.01961 |
|---|---|
| Peak value | 0.03183 |
| Peak time | 0.6361 s |
| Percent overshoot | 62.35 % |
| Settling time (2%) | 5.159 s |
| Settling time (5%) | 3.911 s |
| Rise time (10%–90%) | 0.2282 s |
Stability range in K
- 0 ≤ K (up to the largest gain examined) · stable
- No crossing was found in the gain range examined.
This system has no special gain to jump to.
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 | None in range |
|---|---|
| Phase margin | Not defined |
| Gain margin | Not defined — no −180° crossing |
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 The loop magnitude never reaches 0 dB inside the evaluated range, so no phase margin is defined here.
- · Info The loop phase never reaches -180° (modulo 360°) inside the evaluated range: no finite gain margin is defined here.
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.