Derivation of the Routh array explained

The Routh array is a tabular method permitting one to establish the stability of a system using only the coefficients of the characteristic polynomial. Central to the field of control systems design, the Routh–Hurwitz theorem and Routh array emerge by using the Euclidean algorithm and Sturm's theorem in evaluating Cauchy indices.

The Cauchy index

Given the system:

\begin{align} f(x)&{}=

n-1
a
1x

+ … +an&{}(1)\\ &{}=(x-r1)(x-r2)(x-rn)&{}(2)\\ \end{align}

Assuming no roots of

f(x)=0

lie on the imaginary axis, and letting

N

= The number of roots of

f(x)=0

with negative real parts, and

P

= The number of roots of

f(x)=0

with positive real partsthen we have

N+P=n(3)

Expressing

f(x)

in polar form, we have

f(x)=\rho(x)ej\theta(x)(4)

where

\rho(x)=\sqrt{ak{Re}2[f(x)]+ak{Im}2[f(x)]}(5)

and

\theta(x)=\tan-1(ak{Im}[f(x)]/ak{Re}[f(x)])(6)

from (2) note that

\theta(x)=

\theta
r1
(x)+\theta
r2
(x)+ … +\theta
rn

(x)(7)

where
\theta
ri

(x)=\angle(x-ri)(8)

Now if the ith root of

f(x)=0

has a positive real part, then (using the notation y=(RE[y],IM[y]))
\begin{align} \theta
ri

(x)|x=-jinfty&=\angle(x-ri)|x=-jinfty\\ &=\angle(0-ak{Re}[ri],-infty-ak{Im}[ri])\\ &=\angle(-|ak{Re}[ri]|,-infty)\\ &=\pi+\lim\phi\tan-1\phi=

3\pi
2

(9)\\ \end{align}

and
\theta
ri

(x)|x=j0=\angle(-|ak{Re}[ri]|,0)=\pi-\tan-10=\pi(10)

and
\theta
ri

(x)|x=jinfty=\angle(-|ak{Re}[ri]|,infty)=\pi-\lim\phi\tan-1\phi=

\pi
2

(11)

Similarly, if the ith root of

f(x)=0

has a negative real part,
\begin{align} \theta
ri

(x)|x=-jinfty&=\angle(x-ri)|x=-jinfty\\ &=\angle(0-ak{Re}[ri],-infty-ak{Im}[ri])\\ &=\angle(|ak{Re}[ri]|,-infty)\\ &=0-\lim\phi\tan1\phi=-

\pi
2

(12)\\ \end{align}

and
\theta
ri

(x)|x=j0=\angle(|ak{Re}[ri]|,0)=\tan-10=0(13)

and
\theta
ri

(x)|x=jinfty=\angle(|ak{Re}[ri]|,infty)=\lim\phi\tan-1\phi=

\pi
2

(14)

From (9) to (11) we find that
\theta
ri
x=jinfty
(x)|
x=-jinfty

=-\pi

when the ith root of

f(x)

has a positive real part, and from (12) to (14) we find that
\theta
ri
x=jinfty
(x)|
x=-jinfty

=\pi

when the ith root of

f(x)

has a negative real part. Thus,
x=jinfty
\theta(x)|
x=-jinfty

=\angle(x-r1)|

x=jinfty
x=-jinfty

+\angle(x-r2)|

x=jinfty
x=-jinfty

+ … +\angle(x-rn)|

x=jinfty
x=-jinfty

=\piN-\piP(15)

So, if we define
\Delta=1
\pi
jinfty
\theta(x)|
-jinfty

(16)

then we have the relationship

N-P=\Delta(17)

and combining (3) and (17) gives us

N=

n+\Delta
2
and

P=

n-\Delta
2

(18)

Therefore, given an equation of

f(x)

of degree

n

we need only evaluate this function

\Delta

to determine

N

, the number of roots with negative real parts and

P

, the number of roots with positive real parts.In accordance with (6) and Figure 1, the graph of

\tan(\theta)

vs

\theta

, varying

x

over an interval (a,b) where

\thetaa=\theta(x)|x=ja

and

\thetab=\theta(x)|x=jb

are integer multiples of

\pi

, this variation causing the function

\theta(x)

to have increased by

\pi

, indicates that in the course of travelling from point a to point b,

\theta

has "jumped" from

+infty

to

-infty

one more time than it has jumped from

-infty

to

+infty

. Similarly, if we vary

x

over an interval (a,b) this variation causing

\theta(x)

to have decreased by

\pi

, where again

\theta

is a multiple of

\pi

at both

x=ja

and

x=jb

, implies that

\tan\theta(x)=ak{Im}[f(x)]/ak{Re}[f(x)]

has jumped from

-infty

to

+infty

one more time than it has jumped from

+infty

to

-infty

as

x

was varied over the said interval.

Thus,

jinfty
\theta(x)|
-jinfty
is

\pi

times the difference between the number of points at which

ak{Im}[f(x)]/ak{Re}[f(x)]

jumps from

-infty

to

+infty

and the number of points at which

ak{Im}[f(x)]/ak{Re}[f(x)]

jumps from

+infty

to

-infty

as

x

ranges over the interval

(-jinfty,+jinfty)

provided that at

x=\pmjinfty

,

\tan[\theta(x)]

is defined.In the case where the starting point is on an incongruity (i.e.

\thetaa=\pi/2\pmi\pi

, i = 0, 1, 2, ...) the ending point will be on an incongruity as well, by equation (17) (since

N

is an integer and

P

is an integer,

\Delta

will be an integer). In this case, we can achieve this same index (difference in positive and negative jumps) by shifting the axes of the tangent function by

\pi/2

, through adding

\pi/2

to

\theta

. Thus, our index is now fully defined for any combination of coefficients in

f(x)

by evaluating

\tan[\theta]=ak{Im}[f(x)]/ak{Re}[f(x)]

over the interval (a,b) =

(+jinfty,-jinfty)

when our starting (and thus ending) point is not an incongruity, and by evaluating

\tan[\theta'(x)]=\tan[\theta+\pi/2]=-\cot[\theta(x)]=-ak{Re}[f(x)]/ak{Im}[f(x)](19)

over said interval when our starting point is at an incongruity.This difference,

\Delta

, of negative and positive jumping incongruities encountered while traversing

x

from

-jinfty

to

+jinfty

is called the Cauchy Index of the tangent of the phase angle, the phase angle being

\theta(x)

or

\theta'(x)

, depending as

\thetaa

is an integer multiple of

\pi

or not.

The Routh criterion

To derive Routh's criterion, first we'll use a different notation to differentiate between the even and odd terms of

f(x)

:

f(x)=

n
a
0x

+

n-1
b
0x

+

n-2
a
1x

+

n-3
b
1x

+(20)

Now we have:

\begin{align} f(j\omega)&=

n-1
a
0(j\omega)
n-2
+a
1(j\omega)
n-3
+b
1(j\omega)

+ … &{}(21)\\ &=

n-2
a
1(j\omega)
n-4
+a
2(j\omega)

+ … &{}(22)\\ &+

n-1
b
0(j\omega)
n-3
+b
1(j\omega)
n-5
+b
2(j\omega)

+ … \\ \end{align}

Therefore, if

n

is even,

\begin{align} f(j\omega)&=(-1)n/2

n-2
[a
1\omega
n-4
+a
2\omega

- … ]&{}(23)\\ &+j(-1)(n/2)-1

n-1
[b
0\omega
n-3
-b
1\omega
n-5
+b
2\omega

- … ]&{}\\ \end{align}

and if

n

is odd:

\begin{align} f(j\omega)&=j(-1)(n-1)/2

n-2
[a
1\omega
n-4
+a
2\omega

- … ]&{}(24)\\ &+(-1)(n-1)/2

n-1
[b
0\omega
n-3
-b
1\omega
n-5
+b
2\omega

- … ]&{}\\ \end{align}

Now observe that if

n

is an odd integer, then by (3)

N+P

is odd. If

N+P

is an odd integer, then

N-P

is odd as well. Similarly, this same argument shows that when

n

is even,

N-P

will be even. Equation (15) shows that if

N-P

is even,

\theta

is an integer multiple of

\pi

. Therefore,

\tan(\theta)

is defined for

n

even, and is thus the proper index to use when n is even, and similarly

\tan(\theta')=\tan(\theta+\pi)=-\cot(\theta)

is defined for

n

odd, making it the proper index in this latter case.

Thus, from (6) and (23), for

n

even:

\Delta=

+infty
I
-infty
-ak{Im
[f(x)]}{ak{Re}[f(x)]}=I
+infty
-infty
n-1
b
n-3
-b
1\omega
+ …
0\omega
n-2
a+\ldots
1\omega

(25)

and from (19) and (24), for

n

odd:

\Delta=

+infty
I
-infty
ak{Re
[f(x)]}{ak{Im}[f(x)]}=I
+infty
-infty
n-1
b
n-3
-b
1\omega
+\ldots
0\omega
n-2
a+\ldots
1\omega

(26)

Lo and behold we are evaluating the same Cauchy index for both:

\Delta=

+infty
I
-infty
n-1
b
n-3
-b
1\omega
+\ldots
0\omega
n-2
a+\ldots
1\omega

(27)

Sturm's theorem

Sturm gives us a method for evaluating

\Delta=

+infty
I
-infty
f2(x)
f1(x)
. His theorem states as follows:

Given a sequence of polynomials

f1(x),f2(x),...,fm(x)

where:

1) If

fk(x)=0

then

fk-1(x)0

,

fk+1(x)0

, and

\operatorname{sign}[fk-1(x)]=-\operatorname{sign}[fk+1(x)]

2)

fm(x)0

for

-infty<x<infty

and we define

V(x)

as the number of changes of sign in the sequence

f1(x),f2(x),...,fm(x)

for a fixed value of

x

, then:

\Delta=

+infty
I
-infty
f2(x)
f1(x)

=V(-infty)-V(+infty)(28)

A sequence satisfying these requirements is obtained using the Euclidean algorithm, which is as follows:

Starting with

f1(x)

and

f2(x)

, and denoting the remainder of

f1(x)/f2(x)

by

f3(x)

and similarly denoting the remainder of

f2(x)/f3(x)

by

f4(x)

, and so on, we obtain the relationships:

\begin{align} &f1(x)=q1(x)f2(x)-f3(x)(29)\\ &f2(x)=q2(x)f3(x)-f4(x)\\ &\ldots\\ &fm-1(x)=qm-1(x)fm(x)\\ \end{align}

or in general

fk-1(x)=qk-1(x)fk(x)-fk+1(x)

where the last non-zero remainder,

fm(x)

will therefore be the highest common factor of

f1(x),f2(x),...,fm-1(x)

. It can be observed that the sequence so constructed will satisfy the conditions of Sturm's theorem, and thus an algorithm for determining the stated index has been developed.

It is in applying Sturm's theorem (28) to (29), through the use of the Euclidean algorithm above that the Routh matrix is formed.

We get

f3(\omega)=

a0
b0

f2(\omega)-f1(\omega)(30)

and identifying the coefficients of this remainder by

c0

,

-c1

,

c2

,

-c3

, and so forth, makes our formed remainder

f3(\omega)=

n-2
c
0\omega

-

n-4
c
1\omega

+

n-6
c
2\omega

-(31)

where

c0=a1-

a0
b0

b1=

b0a1-a0b1
b0

;c1=a2-

a0
b0

b2=

b0a2-a0b2
b0

;\ldots(32)

Continuing with the Euclidean algorithm on these new coefficients gives us

f4(\omega)=

b0
c0

f3(\omega)-f2(\omega)(33)

where we again denote the coefficients of the remainder

f4(\omega)

by

d0

,

-d1

,

d2

,

-d3

,making our formed remainder

f4(\omega)=

n-3
d
0\omega

-

n-5
d
1\omega

+

n-7
d
2\omega

-(34)

and giving us

d0=b1-

b0
c0

c1=

c0b1-b0c1
c0

;d1=b2-

b0
c0

c2=

c0b2-b0c2
c0

;\ldots(35)

The rows of the Routh array are determined exactly by this algorithm when applied to the coefficients of (20). An observation worthy of note is that in the regular case the polynomials

f1(\omega)

and

f2(\omega)

have as the highest common factor

fn+1(\omega)

and thus there will be

n

polynomials in the chain

f1(x),f2(x),...,fm(x)

.

Note now, that in determining the signs of the members of the sequence of polynomials

f1(x),f2(x),...,fm(x)

that at

\omega=\pminfty

the dominating power of

\omega

will be the first term of each of these polynomials, and thus only these coefficients corresponding to the highest powers of

\omega

in

f1(x),f2(x),...

, and

fm(x)

, which are

a0

,

b0

,

c0

,

d0

, ... determine the signs of

f1(x)

,

f2(x)

, ...,

fm(x)

at

\omega=\pminfty

.

So we get

V(+infty)=V(a0,b0,c0,d0,...)

that is,

V(+infty)

is the number of changes of sign in the sequence
n
a
0infty
,
n-1
b
0infty
,
n-2
c
0infty
, ... which is the number of sign changes in the sequence

a0

,

b0

,

c0

,

d0

, ... and

V(-infty)=V(a0,-b0,c0,-d0,...)

; that is

V(-infty)

is the number of changes of sign in the sequence
n
a
0(-infty)
,
n-1
b
0(-infty)
,
n-2
c
0(-infty)
, ... which is the number of sign changes in the sequence

a0

,

-b0

,

c0

,

-d0

, ...

Since our chain

a0

,

b0

,

c0

,

d0

, ... will have

n

members it is clear that

V(+infty)+V(-infty)=n

since within

V(a0,b0,c0,d0,...)

if going from

a0

to

b0

a sign change has not occurred, within

V(a0,-b0,c0,-d0,...)

going from

a0

to

-b0

one has, and likewise for all

n

transitions (there will be no terms equal to zero) giving us

n

total sign changes.

As

\Delta=V(-infty)-V(+infty)

and

n=V(+infty)+V(-infty)

, and from (18)

P=(n-\Delta/2)

, we have that

P=V(+infty)=V(a0,b0,c0,d0,...)

and have derived Routh's theorem -

The number of roots of a real polynomial

f(z)

which lie in the right half plane

ak{Re}(ri)>0

is equal to the number of changes of sign in the first column of the Routh scheme.

And for the stable case where

P=0

then

V(a0,b0,c0,d0,...)=0

by which we have Routh's famous criterion:

In order for all the roots of the polynomial

f(z)

to have negative real parts, it is necessary and sufficient that all of the elements in the first column of the Routh scheme be different from zero and of the same sign.

References