Skip to main content
engineering

Root Locus Plotter

Plot how closed-loop poles move as gain K varies; interactive K slider shows closed-loop poles, open-loop poles, and zeros

By Christopher FloiedPublished Updated

Plot how closed-loop poles move as gain K varies. Standard form: 1 + K · G(s) = 0. Includes asymptotes, breakaway points, jω crossings, ζ/ω_n design overlays, and stability indicator.

Open-loop transfer function

G(s)=K⋅1s3+6s2+5sG(s) = K \cdot \frac{1}{s^{3} + 6s^{2} + 5s}

N(s) = 1, D(s) = s³ + 6s² + 5s

e.g. 1 0 -4 means s² − 4

e.g. 1 3 2 means s² + 3s + 2

  • Branch 1
  • Branch 2
  • Branch 3
  • OL poles
  • OL zeros
  • Current CL poles
  • jω crossings

× open-loop poles · ○ open-loop zeros · ★ current closed-loop poles · ▲ jω crossings (K_ult) · branches in distinct colors track each closed-loop pole as K varies from 0 to K_max. Both axes use the same scale.

STABLE at K = 5.000

Closed-loop poles at K = 5.000

Pole (s)ω_nζStable
-0.3868 + 0.8984j0.9780.395✓
-0.3868 − 0.8984j0.9780.395✓
-5.22645.2261.000✓

Critical K values

K_ult (instability boundary)

30.000 becomes unstable

ω_x = 2.236 rad/s

Stable for 0 < K < 30.000

K @ ζ = 0.7 (textbook target)

2.105

s = -0.4497 ± 0.4588j, ζ = 0.700

K at first breakaway

1.128

s = -0.472

Plot overlays

System diagnostics

  • Order: n = 3, m = 0, asymptotes = 3
  • System type: Type 1
  • Asymptote angles: 60°, 180°, -60° (centroid σ = -2.000)
  • Real-axis breakaway s = -0.472

Continue your calculation

Use the same transfer function in each view: inspect pole movement, check frequency margins, then compare transient response. Stability alone does not guarantee acceptable settling or overshoot.

How to Use This Calculator

1

Enter your input values

Fill in all required input fields for the Root Locus Plotter. Follow the units and input format printed next to each field. Where a unit selector is available, choose the units that match your data.

2

Review your inputs

Double-check that all values are correct and match the units or format shown for each field. Incorrect units are the most common source of calculation errors and can produce results that are off by factors of 2, 10, or more.

3

Read the results

The Root Locus Plotter computes the output in your browser and displays the results, with units clearly labeled, as soon as they are ready — no data sent to a server.

4

Explore parameter sensitivity

Try adjusting individual input values to see how the output changes. This is a quick and effective way to develop intuition about how different parameters influence the result and to identify which inputs have the largest effect.

Formula Reference

Closed-Loop Characteristic Equation (Root Locus Condition)

1 + K·G(s) = 0 | ⇔ | D(s) + K·N(s) = 0 | where G(s) = N(s)/D(s)

Variables: s = complex frequency σ + jω (rad/s), N(s) = open-loop numerator polynomial of degree m, coefficients entered in descending powers of s (units (rad/s)^m), D(s) = open-loop denominator polynomial of degree n (units (rad/s)^n), G(s) = open-loop transfer function N(s)/D(s) (units (rad/s)^(m−n)), K = loop gain swept by the plotter (units (rad/s)^(n−m), so K is dimensionless only when n = m; for the default plant G = 1/(s(s+1)(s+5)) the reported K_ult = 30 carries units of s⁻³). Source: Ogata, Modern Control Engineering, 5th ed., Ch. 6 (Root-Locus Analysis)

Asymptote Centroid and Angles

σa = (Σ pᵢ − Σ zⱼ) / (n − m) | θk = (2k + 1)·180° / (n − m) | k = 0, 1, …, n − m − 1 | θk = 2k·180° / (n − m) when N(s) and D(s) have leading coefficients of opposite sign | (defined only for n > m)

Variables: pᵢ = open-loop poles, the roots of D(s) (rad/s), zⱼ = open-loop zeros, the roots of N(s) (rad/s), n = number of open-loop poles (dimensionless count), m = number of open-loop zeros (dimensionless count), σa = asymptote centroid on the real axis (rad/s), θk = asymptote angle measured from the positive real axis (degrees; displayed wrapped to the range (−180°, 180°], so the third asymptote of a 3-branch system reads −60° rather than 300°), k = asymptote index (dimensionless). When n ≤ m no branch goes to infinity and no asymptotes are drawn. With leading coefficients of opposite sign (a right-half-plane zero typed as 1 − s, or a negative gain), K·G(s) ≈ −|K·nₘ/dₙ|·s^(m−n) at large |s|, so the far poles head out at 2k·180°/(n − m), e.g. 0° for (1 − s)/(s(s + 2)). Source: Nise, Control Systems Engineering, 7th ed., Ch. 8 (Root Locus Techniques), behavior-at-infinity (asymptote) sketching rule

Breakaway and Break-In Points

dK/ds = 0 | ⇔ | N(s)·D′(s) − D(s)·N′(s) = 0 | real roots retained only where K = −D(s)/N(s) > 0

Variables: s = real-axis candidate point, a real root of N·D′ − D·N′ (rad/s), N′(s) = dN/ds (units (rad/s)^(m−1)), D′(s) = dD/ds (units (rad/s)^(n−1)), K = loop gain at that point, evaluated as K = −D(s)/N(s) (units (rad/s)^(n−m)), n = degree of D(s) (dimensionless count), m = degree of N(s) (dimensionless count). A retained candidate is labelled a breakaway point when K decreases just to the right of s and a break-in point when K increases. Source: Ogata, Modern Control Engineering, 5th ed., Ch. 6 (Root-Locus Analysis), breakaway and break-in point rule

Damping Ratio and Natural Frequency of a Closed-Loop Pole

ωn = |s| = √(σ² + ω²) | ζ = −Re(s)/|s| = −σ/ωn

Variables: s = closed-loop pole σ + jω, a root of D(s) + K·N(s) (rad/s), σ = Re(s) (rad/s; σ < 0 is a decaying mode, σ > 0 an unstable one), ω = Im(s) (rad/s), ωn = undamped natural frequency (rad/s), ζ = damping ratio (dimensionless; reported as 0 when |s| < 1e-9, and ζ ≥ 1 for a real pole). Source: Ogata, Modern Control Engineering, 5th ed., Ch. 5 (Transient-Response Analysis), second-order pole geometry

When to Use This Calculator

  • •Use the Root Locus Plotter to check your hand calculations on homework or exam problems — comparing its result with your own working helps identify arithmetic errors before they propagate.
  • •Use it during the early design phase to rapidly iterate on parameters and narrow down feasible configurations before committing time to detailed finite element simulations or full design packages.
  • •Use it when reviewing a colleague's calculation or checking a vendor's data sheet for plausibility — a quick sanity check can prevent costly downstream errors.
  • •Use it to generate reference data for a technical report or presentation without manual computation, ensuring consistent, reproducible numbers throughout the document.
  • •Use it in the field when a quick estimate is needed and a full engineering software package is not available.

About This Calculator

The Root Locus Plotter is a precision engineering calculation tool designed for students, engineers, and technical professionals. Plot how closed-loop poles move as gain K varies; interactive K slider shows closed-loop poles, open-loop poles, and zeros All calculations are performed using established engineering formulas from the relevant scientific literature and standards. Follow the units printed beside each field. Where a unit selector is provided, the selected unit is converted internally. Results are computed in your browser without sending data to a server, which keeps your inputs private. This calculator is intended as a supplementary tool for learning and design exploration; always verify results against authoritative references for safety-critical applications.

The Theory Behind It

A root locus plot shows how the poles of a closed-loop system move in the complex plane as a parameter (typically the loop gain K) varies from 0 to infinity. The root locus is constructed for a characteristic equation 1 + K·G(s)·H(s) = 0. At K = 0, the closed-loop poles equal the open-loop poles. As K increases, the poles migrate along paths toward either open-loop zeros or infinity. Key construction rules: (1) the locus starts at open-loop poles (K = 0) and ends at open-loop zeros (K = ∞); (2) the number of branches equals the system order; (3) branches on the real axis exist where the number of poles+zeros to the right is odd; (4) asymptotes at ±180°/m for branches going to infinity, where m = n_poles − n_zeros; (5) breakaway points occur where d(G(s)·H(s))/ds = 0. The root locus shows the closed-loop pole locations at any gain value, enabling visual design of feedback controllers. A designer can see the maximum gain for stability, the effect of adding poles or zeros (compensator design), and the relationship between gain and damping. The calculator plots root locus interactively as gain K varies and marks dominant closed-loop pole locations.

Real-World Applications

  • •Proportional gain tuning: determine the maximum gain K_max that keeps the closed-loop system stable, and choose operating gain well below this for robustness.
  • •Lead-lag compensator design: evaluate the effect of adding zeros (lead) or poles (lag) on the root locus shape, and position them to achieve desired closed-loop performance.
  • •Robustness analysis: see how closely the operating point is to the stability boundary (jω axis) to assess robustness to parameter variations.
  • •PID controller design: interpret PID gains (P, I, D) in terms of their effect on the root locus and closed-loop pole locations.
  • •Educational visualization: root locus is a powerful visual tool for understanding feedback control concepts and is taught in all undergraduate control courses.

Frequently Asked Questions

What is a root locus?

A root locus plot shows the trajectories of closed-loop poles in the complex plane as the loop gain K varies. Each branch starts at an open-loop pole (K = 0) and ends at either an open-loop zero or infinity (K = ∞). The plot reveals how closed-loop stability and transient response change with gain, enabling visual controller design.

Why is the root locus useful?

It provides visual insight into how feedback gain affects closed-loop pole locations, which determine stability and transient response. You can quickly see: maximum gain for stability, damping ratio at any given gain, effect of adding compensator zeros/poles, and how closely the operating point is to the jω-axis (stability boundary). This intuition is valuable for iterative controller design.

What's a breakaway point?

A breakaway point is where two root locus branches meet on the real axis and then split off into complex conjugate paths. It occurs where d(G·H)/ds = 0 on a valid portion of the real axis locus. Below the breakaway gain, poles are real (overdamped); above, they become complex (underdamped). Breakaway points are marked on root locus plots to help locate the transition.

How do I choose K from a root locus?

Select the gain that places closed-loop poles at a desired location (based on target damping ratio, settling time, or overshoot). Use the magnitude condition |K·G·H| = 1 to compute K at the chosen point. Alternatively, use the phase condition ∠(G·H) = ±180° to verify the point is on the locus and measure the distance from poles and zeros to compute K graphically.

What's the stability limit on a root locus?

The gain at which a closed-loop pole crosses the jω axis (imaginary axis) from left to right. Below this gain, all poles are in the left half plane (stable). Above this gain, at least one pole is in the right half plane (unstable). The crossing gain and frequency can be found using the Routh-Hurwitz method or by graphical estimation.

Worked Examples

Example 1: Ogata Ex 6-1: 3rd-order type-1 plant — find K_ult and asymptotes

G(s) = 1 / (s(s+1)(s+5)) — open-loop poles at s = 0, −1, −5; no zeros. Find: number of asymptotes, asymptote angles, centroid, and K_ult (the gain at which the closed loop just becomes unstable).

Step 1:Polynomial form: N(s) = 1 (m = 0 zeros), D(s) = s³ + 6s² + 5s (n = 3 poles). Plant order n = 3, n − m = 3.
Step 2:Number of asymptotes = n − m = 3. (Three branches go to infinity as K → ∞.)
Step 3:Asymptote angles: θ_k = (2k+1) · 180°/(n − m) for k = 0, 1, 2 → 60°, 180°, −60° (or equivalently 300°).
Step 4:Centroid: σ_a = (Σ poles − Σ zeros)/(n − m) = ((0 + (−1) + (−5)) − 0)/3 = −6/3 = −2. The three asymptotes intersect the real axis at s = −2.
Step 5:Routh-Hurwitz array for the closed-loop characteristic equation s³ + 6s² + 5s + K = 0:
Step 6: s³ row: 1 5
Step 7: s² row: 6 K
Step 8: s¹ row: (30 − K)/6
Step 9: s⁰ row: K
Step 10:Stability requires all entries in the first column positive: 6 > 0 ✓, (30 − K)/6 > 0 ⇒ K < 30, K > 0. So K_ult = 30.
Step 11:At K = K_ult = 30, the s¹ entry is zero — auxiliary equation: 6s² + 30 = 0 → s² = −5 → ω_x = √5 ≈ 2.236 rad/s.

n = 3 asymptotes at ±60° and 180° intersecting at σ_a = −2. K_ult = 30 with crossing frequency ω_x = √5 rad/s. Picking the default plant in this calculator and pushing K past 30 will visually confirm the locus crossing the jω axis at ±j2.236.

Example 2: Type-1 plant: find K for a target ζ = 0.7

G(s) = 1 / (s(s+5)) — proportional control with a target damping ratio ζ = 0.7 for the dominant complex pole pair. Determine the required K and the resulting natural frequency ω_n.

Step 1:Closed-loop characteristic equation: 1 + K/(s(s+5)) = 0 ⇒ s² + 5s + K = 0.
Step 2:Standard 2nd-order form: s² + 2ζω_n·s + ω_n² = 0. Match coefficients: 2ζω_n = 5 (so ζ·ω_n = 2.5), ω_n² = K.
Step 3:Apply target ζ = 0.7: ω_n = 2.5/ζ = 2.5/0.7 = 3.571 rad/s.
Step 4:Compute K from ω_n²: K = ω_n² = (2.5/0.7)² = 12.755.
Step 5:Verify the closed-loop poles: s = −ζω_n ± jω_n·√(1−ζ²) = −2.5 ± j(3.571)(√0.51) = −2.5 ± j2.551.
Step 6:Verify ζ from poles: ω_n = √(2.5² + 2.551²) = √(6.25 + 6.508) = 3.572 ✓; ζ = 2.5/3.572 = 0.700 ✓.

K ≈ 12.76 places the dominant pole pair at s = −2.5 ± j2.551, achieving ζ = 0.7. Settling time t_s ≈ 4/(ζω_n) = 4/2.5 = 1.6 s. The 'K @ ζ = 0.7' card in this calculator's readout solves for this gain on whatever plant you enter (the smallest K at which the dominant complex pole pair has ζ = 0.7, with a note when a slower real pole dominates the response instead); with the Type-1 example loaded it shows 12.76 and the pole −2.500 ± 2.551j.

Example 3: Lead compensator: compare asymptotes and stability

Compare G_p(s) = 1/((s+1)(s+5)) with C(s)G_p(s), where C(s) = (s+2)/(s+10), under negative unity feedback and K ≥ 0.

Step 1:Without the compensator, the characteristic polynomial is s² + 6s + 5 + K. Both coefficients stay positive for K ≥ 0, so there is no finite ultimate gain.
Step 2:The uncompensated asymptotes are at ±90° with centroid −3.
Step 3:With the compensator, enter N = 1 2 and D = 1 16 65 50. The characteristic polynomial is s³ + 16s² + (65+K)s + 50+2K.
Step 4:The cubic Routh condition is 16(65+K) > 50+2K, or 990+14K > 0. This system also remains stable for every K ≥ 0.
Step 5:Its two asymptotes still lie at ±90°, but their centroid is (−1−5−10+2)/2 = −7. One branch ends at the zero −2.

The centroid moves from −3 to −7, but neither plant has a finite stability limit in this example. Compare actual closed-loop poles and step responses at your chosen gain; the centroid alone does not establish faster settling.

Common Mistakes & Tips

  • !Forgetting that n − m branches go to infinity (along the asymptotes); novices often draw only the bounded portion and miss the K → ∞ behavior.
  • !Computing the centroid as (Σ poles)/(n − m) without subtracting Σ zeros. The correct formula is σ_a = (Σ poles − Σ zeros)/(n − m), and zero contributions are critical for compensator design.
  • !Confusing breakaway points (locus leaves the real axis as K increases) with break-in points (locus returns to the real axis). Both satisfy d K/d s = 0 but have opposite local trends in K.
  • !Treating open-loop poles as if they were closed-loop poles. The OL poles are only the K = 0 starting points — closed-loop pole locations move as K varies and are what determines stability.
  • !Misreading asymptote angles when n − m is even. For n − m = 2, the angles are ±90° (purely vertical), which means the asymptotes never close back; the centroid is the only finite reference point.
  • !Skipping the magnitude condition K = 1/|G(s)| when designing for a specific pole location. The phase condition tells you whether a point is on the locus; the magnitude condition tells you what K puts it there.

Related Concepts

Related Calculators

References & Further Reading

Wikipedia

Academic Resources

Industry References

Textbooks

  • Ogata, K.. Modern Control Engineering, 5th ed., 2010. Pearson.ISBN 978-0136156734

    Chapter 6 is the standard reference for root-locus method including the construction rules (asymptotes, breakaway, jω crossings) implemented in this calculator. Example 6-1 — G(s) = 1/(s(s+1)(s+5)) — is the default plant on first load and produces K_ult = 30, ω_x = √5.

  • Nise, N. S.. Control Systems Engineering, 8th ed., 2019. Wiley.ISBN 978-1119474227

    Chapter 8 covers root-locus design with extensive worked examples. The undergraduate go-to text for the magnitude and phase conditions used to interpret root-locus plots.

  • Franklin, G. F., Powell, J. D., Emami-Naeini, A.. Feedback Control of Dynamic Systems, 8th ed., 2019. Pearson.ISBN 978-0134685717

    Chapter 5 connects root-locus to compensator design (lead, lag, lead-lag). Useful when designing a compensator C(s) to reshape the locus around an existing plant G_p(s).

Add the live Root Locus Plotter to your site. Free to embed, with a link back to MegaCalc.