I have an open-loop system function


and I wanted to to the root locus diagram for it. I did it in MATLAB and got the following graph

enter image description here

What I don't know how to do by hand is dealing with the double poles (and zeros). I mean, I think that that's the cause why there are two lines going out from that pole at $s=20$ and two going to $s=2$.

  • Is there a way of, more or less precisely, draw those lines by hand?
  • How can one get the specific value of $k$ for any position of the root locus without using MATLAB (namely, doing it with a pen and a paper)?

1 Answer 1


The root locus is a parametric plot. It shows how zeros and poles move in the complex plain depending on the value of a gain $k$. For all points on the plot both the phase condition1 and the amplitude condition2 have to be true.

$$G_0(s) = k \cdot \frac{\prod^q_{i=1}(s-s_{0i})}{\prod^n_{i=1}(s-s_{i})}$$

In your case, $s_{01} = s_{02} = 2$, $s_1 = 0$ and $s_2 = s_3 = 20$

There are a few rules to construct the root locus by hand, after you added the locations of the zeros and poles to the plot:


Everything is symmetric to the real axis.

start and end points

Every line/curve/branch (whatever you want to call it) of the plot starts in a pole and ends in a zero or infinity.

You have $q=2$ as the number of zeros and $n=3$ the number of poles. That means that 1 branch will go to infinity and two others will connect the poles with the zeros.


There are $n-q = 1$ asymptotes that the branches are converging towards for very large gains. The asymptotes have an angle of

$$\phi = \frac{\pi + l\cdot 2\pi}{n-q}$$

and all asymptotes meet in the point

$$s=\frac{\sum^n_{i=1}s_i - \sum^q_{i=1}s_{0i}}{n-q}$$

in your case $s=16$ which is admittedly only of real help if you have more asymptotes.

With $l=0, 1, ..., n- q-1$. For the single asymptote of your system, that means $\phi=\pi$.

From this rule you know that the one pole that goes to infinity will do so by getting close to the asymptote at angle $\pi$ which means it goes to the left of the plot.

real axis

This is one of those rules where you think it might as well be part of a horoscope (at least I did), because it sounds as arbitrary and random as how much the constellation of planets at your birth has an influence on your life.

Points of the real axis can be part of the plot. Those points that are part of the plot have an uneven number of poles and zeros to their right.

Wait, what? To estimate the results for your plot, start from $+\infty$ on the real axis and go to $-\infty$.

The rightmost "thing" in your plot are the double poles at 20. No point of the real axis to the right of those can have any number of poles or zeros to its right, so we conclude that the real axis to the right of 20 is not part of the plot. This means that the 2 branches coming out of the poles at 20 cannot be on the real axis.

Going further to the left, with the 2 poles to the right and then the 2 poles and 2 zeros to the right (4 in total) you know that no point from 0 to $+\infty$ of the real axis is part of the plot. Note that this also means that the branches ending in the zeros will not arrive there on the real axis, because the real axis around 2 is not part of the plot.

To the left of 0, you now have all your 5 zeros and poles to the right, which means every point to the left of 0 on the real axis is part of the plot.

real axis break in/away points

The branches split or join at points where the following condition is true:

$$ \begin{align} \sum^q_{i=1}\frac{1}{s-s_{0i}} &= \sum^n_{i=1}\frac{1}{s-s_{i}}\\ 2 \cdot \frac{1}{s-2} &= 2 \cdot \frac{1}{s-20} + \frac{1}{s}\\ \frac{2}{s-2} &= \frac{3s - 20}{s(s-20)}\\ 2s(s-20) &= (3s - 20)(s-2)\\ 2s^2-40s&=3s^2-26s+40\\ 0&=s^2+14s+40 \end{align} $$

that gives $s_1 = -4$ and $s_2 = -10$. At those two points, there's a split or branch.

Now which one's a split and which one's a join?

Remember that this is a parametric plot and the branches grow as the value of $k$ grows. You start with what's essentially a split at 20 (the double pole as starting point), which means the you first have to encounter a join to later split again in order to arrive at 2 (the double zero). We can conclude that the point with a lower value for $k$ is the join and the other is the split.

To calculate the value of $k$ at any given point, the amplitude condition2 can be used:

$$ \begin{align} k_{-4} &= \frac{|(-4-20)^2(-4)|}{|(-4-2)^2|}\\ &=\frac{|(-24)^2(-4)|}{|(-6)^2|}\\ &=\frac{24^2 4}{6^2}\\ \end{align} $$

$$ \begin{align} k_{-10} &= \frac{|(-10-20)^2(-10)|}{|(-10-2)^2|}\\ &= \frac{|(-30)^2(-10)|}{|(-12)^2|}\\ &= \frac{30^2 10}{12^2} \end{align} $$

Ok, which one is bigger?

$$ \begin{align} k_{-4} &\overset{?}{\lessgtr}k_{-10}\\ \frac{24^2 4}{6^2} &\lessgtr \frac{30^2 10}{12^2}\\ \frac{24^2 4}{6^2} \frac{2^2}{2^2}&\lessgtr \frac{30^2 10}{12^2}\\ \frac{24^2 4 2^2}{12^2} &\lessgtr \frac{30^2 10}{12^2}\\ 24^2 4~ 2^2&\lessgtr30^2 10\\ 3^2 2^{10}&\lessgtr 5^3 3^2 2^3\\ 2^7&\lessgtr 5^3\\ 128 &> 125\\ k_{-4} &> k_{-10}\\ \end{align} $$

$k_{-4}$ is the split and $k_{-10}$ is the join.

Of course you could check that more quickly with a calculator, but you said dungeons & dragons style.

1 that is $$\sum^q_{i=1}\Phi_{0i} - \sum^n_{i=1}\Phi_{i} = (2l+1)\pi$$

with $l = 0, 1, 2, ...$ and $\Phi_x$ being the angle from a horizontal line drawn to the right of the respective pole or zero to the point in question. This is just FYI.

2 that is $$\frac{|\prod^q_{i=1}(s-s_{0i})|}{|\prod^n_{i=1}(s-s_{i})|} = \frac{1}{|k|}$$

  • $\begingroup$ I really appreciate the effort in your answer. Seriously. Two more questions: a) Is there a way to know the value of $k$ when, for example, the red and green branches are complex (i.e., not real)? I mean by hand (or with a calculator), not using MATLAB. b) If I plot the root locus for $-L$ instead of $L$ I get a totally different plot. Why is this? $\endgroup$
    – Tendero
    May 13, 2016 at 23:42
  • $\begingroup$ @Tendero There's nothing magical about matlab. You can do everything that matlab does by hand. Root locus analysis is like 70 years old. a) You can find the values for $k$ by knowing where the branches go on or off the real axis as shown in my answer. You can always find the closed loop transfer function and thus get the formula for the parametric plot b) well, in general $-L \neq L$ in other words, the root locus actually goes from $k=-\infty$ to $+ \infty$. With $-L$, you see that second half of it. $\endgroup$
    – null
    May 14, 2016 at 0:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.