Root locus analysis. In control theory and stability theory, root locus analysis is a graphical method for examining how the roots of a system change with variation of a certain system parameter, commonly a gain within a feedback system.  This is a technique used as a stability criterion in the field of classical control theory developed by Walter R. Evans which can determine stability of the system.  The root locus plots the poles of the closed loop transfer function in the complex s-plane as a function of a gain parameter (see pole–zero plot).
Evans also invented in 1948 an analog computer to compute root loci, called a "Spirule" (after "spiral" and "slide rule"); it found wide use before the advent of digital computers.

Uses

In addition to determining the stability of the system, the root locus can be used to design the damping ratio (ζ) and natural frequency (ωn) of a feedback system. Lines of constant damping ratio can be drawn radially from the origin and lines of constant natural frequency can be drawn as arccosine whose center points coincide with the origin. By selecting a point along the root locus that coincides with a desired damping ratio and natural frequency, a gain K can be calculated and implemented in the controller. More elaborate techniques of controller design using the root locus are available in most control textbooks: for instance, lag, lead, PI, PD and PID controllers can be designed approximately with this technique.

The definition of the damping ratio and natural frequency presumes that the overall feedback system is well approximated by a second order system; i.e. the system has a dominant pair of poles. This is often not the case, so it is good practice to simulate the final design to check if the project goals are satisfied.

Definition

The root locus of a feedback system is the graphical representation in the complex s-plane of the possible locations of its closed-loop poles for varying values of a certain system parameter. The points that are part of the root locus satisfy the angle condition. The value of the parameter for a certain point of the root locus can be obtained using the magnitude condition.

Suppose there is a feedback system with input signal  and output signal . The forward path transfer function is ; the feedback path transfer function is .

For this system, the closed-loop transfer function is given by

Thus, the closed-loop poles of the closed-loop transfer function are the roots of the characteristic equation . The roots of this equation may be found wherever .

In systems without pure delay, the product  is a rational polynomial function and may be expressed as

where  are the  zeros,  are the  poles, and  is a scalar gain. Typically, a root locus diagram will indicate the transfer function's pole locations for varying values of the parameter . A root locus plot will be all those points in the s-plane where  for any value of .

The factoring of  and the use of simple monomials means the evaluation of the rational polynomial can be done with vector techniques that add or subtract angles and multiply or divide magnitudes. The vector formulation arises from the fact that each monomial term  in the factored  represents the vector from  to  in the s-plane. The polynomial can be evaluated by considering the magnitudes and angles of each of these vectors.

According to vector mathematics, the angle of the result of the rational polynomial is the sum of all the angles in the numerator minus the sum of all the angles in the denominator. So to test whether a point in the s-plane is on the root locus, only the angles to all the open loop poles and zeros need be considered. This is known as the angle condition.

Similarly, the magnitude of the result of the rational polynomial is the product of all the magnitudes in the numerator divided by the product of all the magnitudes in the denominator. It turns out that the calculation of the magnitude is not needed to determine if a point in the s-plane is part of the root locus because  varies and can take an arbitrary real value. For each point of the root locus a value of  can be calculated. This is known as the magnitude condition.

The root locus only gives the location of closed loop poles as the gain  is varied. The value of  does not affect the location of the zeros. The open-loop zeros are the same as the closed-loop zeros.

Angle condition
A point  of the complex s-plane satisfies the angle condition if

which is the same as saying that

that is, the sum of the angles from the open-loop zeros to the point  (measured per zero w.r.t. a horizontal running through that zero) minus the angles from the open-loop poles to the point  (measured per pole w.r.t. a horizontal running through that pole) has to be equal to , or 180 degrees. Note that these interpretations should not be mistaken for the angle differences between the point  and the zeros/poles.

Magnitude condition
A value of  satisfies the magnitude condition for a given  point of the root locus if

which is the same as saying that

.

Sketching root locus

Using a few basic rules, the root locus method can plot the overall shape of the path (locus) traversed by the roots as the value of  varies. The plot of the root locus then gives an idea of the stability and dynamics of this feedback system for different values of . The rules are the following:
 Mark open-loop poles and zeros
 Mark real axis portion to the left of an odd number of poles and zeros
 Find asymptotes

Let P be the number of poles and Z be the number of zeros:

The asymptotes intersect the real axis at  (which is called the centroid) and depart at angle  given by:

where  is the sum of all the locations of the poles,  is the sum of all the locations of the explicit zeros and  denotes that we are only interested in the real part.
 Phase condition on test point to find angle of departure
 Compute breakaway/break-in points

The breakaway points are located at the roots of the following equation:

Once you solve for z, the real roots give you the breakaway/reentry points. Complex roots correspond to a lack of breakaway/reentry.

Plotting root locus
Given the general closed-loop denominator rational polynomial

the characteristic equation can be simplified to

The solutions of  to this equation are the root loci of the closed-loop transfer function.

Example

Given

we will have the characteristic equation

The following MATLAB code will plot the root locus of the closed-loop transfer function as  varies using the described manual method as well as the rlocus built-in function:

% Manual method
K_array = (0:0.1:220).'; % .' is a transpose. Looking up in Matlab documentation.
NK = length(K_array);
x_array = zeros(NK, 3);
y_array = zeros(NK, 3);

for nK = 1:NK
   K = K_array(nK);
   C = [1, 3, (5 + K), (1 + 3*K)];
   r = roots(C).';
   x_array(nK,:) = real(r);
   y_array(nK,:) = imag(r);
end

figure();
plot(x_array, y_array);
grid on;

% Built-in method
sys = tf([1, 3], [1, 3, 5, 1]);
figure();
rlocus(sys);

The following Python code can also be used to calculate and plot the root locus of the closed-loop transfer function using the Python Control Systems Library and Matplotlib.import control as ct
import matplotlib.pyplot as plt

# Define the transfer function
sys = ct.TransferFunction([1, 3], [1, 3, 5, 1])

# Calculate and plot the root locus
roots, gains = ct.root_locus(sys, plot=True)
plt.show()

z-plane versus s-plane

The root locus method can also be used for the analysis of sampled data systems by computing the root locus in the z-plane, the discrete counterpart of the s-plane. The equation  maps continuous s-plane poles (not zeros) into the z-domain, where  is the sampling period. The stable, left half s-plane maps into the interior of the unit circle of the z-plane, with the s-plane origin equating to |z| = 1 (because e0 = 1). A diagonal line of constant damping in the s-plane maps around a spiral from (1,0) in the z plane as it curves in toward the origin. The Nyquist aliasing criteria is expressed graphically in the z-plane by the x-axis, where . The line of constant damping just described spirals in indefinitely but in sampled data systems, frequency content is aliased down to lower frequencies by integral multiples of the Nyquist frequency.  That is, the sampled response appears as a lower frequency and better damped as well since the root in the z-plane maps equally well to the first loop of a different, better damped spiral curve of constant damping.  Many other interesting and relevant mapping properties can be described, not least that z-plane controllers, having the property that they may be directly implemented from the z-plane transfer function (zero/pole ratio of polynomials), can be imagined graphically on a z-plane plot of the open loop transfer function, and immediately analyzed utilizing root locus.

Since root locus is a graphical angle technique, root locus rules work the same in the  and  planes.

The idea of a root locus can be applied to many systems where a single parameter  is varied. For example, it is useful to sweep any system parameter for which the exact value is uncertain in order to determine its behavior.

See also
 Phase margin
 Routh–Hurwitz stability criterion
 Nyquist stability criterion
 Gain and phase margin
 Bode plot

References

Further reading

External links
 Wikibooks: Control Systems/Root Locus
 Carnegie Mellon / University of Michigan Tutorial
 Excellent examples. Start with example 5 and proceed backwards through 4 to 1. Also visit the main page
 The root-locus method: Drawing by hand techniques
  "RootLocs": A free multi-featured root-locus plotter for Mac and Windows platforms
 "Root Locus": A free root-locus plotter/analyzer for Windows
 Root Locus at ControlTheoryPro.com
 Root Locus Analysis of Control Systems
 MATLAB function for computing root locus of a SISO open-loop model
 
 Mathematica function for plotting the root locus
 

Classical control theory