lunes, 15 de febrero de 2010

Routh–Hurwitz stability criterion

The Routh–Hurwitz stability criterion is a necessary (and frequently sufficient) method to establish the stability of a single-input, single-output (SISO), linear time invariant (LTI) control system. More generally, given a polynomial, some calculations using only the coefficients of that polynomial can lead to the conclusion that it is not stable. For the discrete case, see the Jury test equivalent.
The criterion establishes a systematic way to show that the linearized equations of motion of a system have only stable solutions exp(pt), that is where all p have negative real parts. It can be performed using either polynomial divisions or determinant calculus.
The criterion is derived through the use of the Euclidean algorithm and Sturm's theorem in evaluating Cauchy indices.

Using Euclid's algorithm

The criterion is related to Routh–Hurwitz theorem. Indeed, from the statement of that theorem, we have p-q=w(+\infty)-w(-\infty) where:
  • p is the number of roots of the polynomial ƒ(z) located in the left half-plane;
  • q is the number of roots of the polynomial ƒ(z) located in the right half-plane (let us remind ourselves that ƒ is supposed to have no roots lying on the imaginary line);
  • w(x) is the number of variations of the generalized Sturm chain obtained from P0(y) and P1(y) (by successive Euclidean divisions) where f(iy) = P0(y) + iP1(y) for a real y.
By the fundamental theorem of algebra, each polynomial of degree n must have n roots in the complex plane (i.e., for an ƒ with no roots on the imaginary line, p + q = n). Thus, we have the condition that ƒ is a (Hurwitz) stable polynomial if and only if p − q = n (the proof is given below). Using the Routh–Hurwitz theorem, we can replace the condition on p and q by a condition on the generalized Sturm chain, which will give in turn a condition on the coefficients of ƒ.

Using matrices

Let f(z) be a complex polynomial. The process is as follows:
  1. Compute the polynomials P0(y) and P1(y) such that f(iy) = P0(y) + iP1(y) where y is a real number.
  2. Compute the Sylvester matrix associated to P0(y) and P1(y).
  3. Rearrange each row in such a way that an odd row and the following one have the same number of leading zeros.
  4. Compute each principal minor of that matrix.
  5. If at least one of the minors is negative (or zero), then the polynomial f is not stable.
Example
  • Let f(z) = az2 + bz + c (for the sake of simplicity we take real coefficients) where  c\neq 0 (to avoid a root in zero so that we can use the Routh–Hurwitz theorem). First, we have to calculate the real polynomials P0(y) and P1(y):
f(iy) = − ay2 + iby + c = P0(y) + iP1(y) = − ay2 + c + i(by).
Next, we divide those polynomials to obtain the generalized Sturm chain:

    • P0(y) = (( − a / b)y)P1(y) + c, yields P2(y) = − c,
    • P1(y) = (( − b / c)y)P2(y), yields P3(y) = 0 and the Euclidean division stops.
Notice that we had to suppose b different from zero in the first division. The generalized Sturm chain is in this case (P0(y),P1(y),P2(y)) = (cay2,by, − c). Putting y=+\infty, the sign of cay2 is the opposite sign of a and the sign of by is the sign of b. When we put y=-\infty, the sign of the first element of the chain is again the opposite sign of a and the sign of by is the opposite sign of b. Finally, -c has always the opposite sign of c.
Suppose now that f is Hurwitz-stable. This means that w(+\infty)-w(-\infty)=2 (the degree of f). By the properties of the function w, this is the same as w(+\infty)=2 and w(-\infty)=0. Thus, a, b and c must have the same sign. We have thus found the necessary condition of stability for polynomials of degree 2.

Higher-order example

The MATLAB script can be used to determine the stability of any nth-degree characteristic equation.
A tabular method can be used to determine the stability when the roots of a higher order characteristic polynomial are difficult to obtain. For an nth-degree polynomial
  • D(s)=a_ns^n+a_{n-1}s^{n-1}+\cdots+a_1s+a_0
the table has n + 1 rows and the following structure:
an an − 2 an − 4 \dots
an − 1 an − 3 an − 5 \dots
b1 b2 b3 \dots
c1 c2 c3 \dots
... ... ... \dots
where the elements bi and ci can be computed as follows:
  • b_i=\frac{a_{n-1}\times{a_{n-2i}}-a_n\times{a_{n-2i-1}}}{a_{n-1}}
  • c_i=\frac{b_1\times{a_{n-2i-1}}-a_{n-1}\times{b_{i+1}}}{b_1}.
When completed, the number of sign changes in the first column will be the number of non-negative poles.
Consider a system with a characteristic polynomial
  • D(s)=s^5+4s^4+2s^3+5s^2+3s+6.\,
We have the following table:
1 2 3 0
4 5 6 0
0.75 1.5 0 0
−3 6 0
3 0

6 0

In the first column, there are two sign changes (0.75 → −3, and −3 → 3), thus there are two non-negative poles and the system is unstable.

Appendix A

Suppose f is stable. Then, we must have q = 0. Since p + q = n, we find p − q = n. Suppose now that p − q = n. Since p + q = n, subtracting the two equations, we find 2q = 0, that is f is stable.
Publicado por: Karla Velasquez
Fuente: http://en.wikipedia.org/wiki/Routh%E2%80%93Hurwitz_stability_criterion

No hay comentarios:

Publicar un comentario