chapter 7 State Variables of discrete systems (2)
chapter 7 State Variables of discrete systems (2)
1. Introduction
The state of a system is the minimal set of numbers {xi(t0), i = 1, 2, …, n} needed
together with the input u(t), with t in the interval [t0, tf), to determine the behavior of
the system in the interval [t0, tf]. The number n is known as the order of the system.
As t increases, the state of the system evolves and each of the numbers xi(t) becomes
a time variable. These variables are known as the state variables. In vector notation,
the set of state variables form the state vector
𝑥1
𝑥
𝑥(𝑡) = [𝑥1 𝑥2 … 𝑥𝑛 ]𝑇 = [ 2 ]
⋮
𝑥𝑛
The following are examples of state space equations for linear continuous systems:
𝑥1 (𝑘)
𝑥 (𝑘)
𝑦(𝑘) = [0 0 0 … 1] [ 2 ] + [𝑏0 ] 𝑢(𝑘)
…
𝑥𝑛 (𝑘)
• Diagonal canonical form (partial Fraction Programming)
If the pulse TF has distinct poles P1, P2, P3, … and Pn, then:
𝑥1 (𝑘 + 1) −𝑃1 0 0 … 0 𝑥1 (𝑘) 1
𝑥 (𝑘 + 1) 0 −𝑃2 0 … 0 𝑥2 (𝑘) 1
[ 2 ]=[ ][ ] + [ ] 𝑢(𝑘)
… … … … … 0 … …
𝑥𝑛 (𝑘 + 1) 0 0 0 … −𝑃𝑛 𝑥𝑛 (𝑘) 1
𝑥1 (𝑘)
𝑦(𝑘) = [𝐶1 𝐶2 𝐶3 … 𝐶𝑛 ] [ 𝑥2 (𝑘) ] + [0] 𝑢(𝑘)
…
𝑥𝑛 (𝑘)
Where C1, C2, C3, …and Cn are the partial fraction coefficients.
• Jordan canonical form
If the pulse TF has a multiple pole P1 which is repeated m times and all other poles
are distinct poles Pm+1, Pm+2, … and Pn, then:
𝑥1 (𝑘 + 1) −𝑃1 1 0 0 0 0 𝑥1 (𝑘) 0
𝑥2 (𝑘 + 1) 0 −𝑃1 0 0 0 0 𝑥2 (𝑘) 0
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
𝑥𝑚 (𝑘 + 1) = 0 0 −𝑃1 0 0 0 𝑥𝑚 (𝑘) + 1 𝑢(𝑘)
𝑥𝑚+1 (𝑘 + 1) 0 0 0 −𝑃𝑚+1 0 0 𝑥𝑚+1 (𝑘) 1
⋮ 0 0 0 0 −𝑃𝑚+1 0 ⋮ ⋮
[ 𝑥𝑛 (𝑘 + 1) ] [ 0 0 0 0 0 −𝑃𝑛 ] [ 𝑥𝑛 (𝑘) ] [1]
𝑥1 (𝑘)
𝑦(𝑘) = [𝐶1 𝐶2 𝐶3 … 𝐶𝑛 ] [ 𝑥2 (𝑘) ] + [0] 𝑢(𝑘)
…
𝑥𝑛 (𝑘)
2.1 Controllable canonical form
Consider a discrete LTI control system described by difference equation:
𝑦(𝑘) + 3𝑦(𝑘 − 1) + 5𝑦(𝑘 − 2) + 10𝑦(𝑘 − 3)
= 2𝑢(𝑘) + 0.5𝑢(𝑘 − 1) + 0.25𝑢(𝑘 − 2)
Step #1: Obtain the pulse TF with −ve powers of z as:
𝑌(𝑧) 2 + 0.5𝑧 −1 + 0.25𝑧 −2
=
𝑈(𝑧) 1 + 3𝑧 −1 + 5𝑧 −2 + 10𝑧 −3
Step #2: Multiply both the numerator and denominator by dummy variable X(z)
𝑌(𝑧) 2 + 0.5𝑧 −1 + 0.25𝑧 −2 𝑋(𝑧)
= −1 −2 −3
×
𝑈(𝑧) 1 + 3𝑧 + 5𝑧 + 10𝑧 𝑋(𝑧)
Step #3 Equating numerators
𝑌(𝑧) = (2 + 0.5𝑧 −1 + 0.25𝑧 −2 ) 𝑋(𝑧)
𝑌(𝑧) = 2𝑋(𝑧) + 0.5𝑧 −1 𝑋(𝑧) + 0.25𝑧 −2 𝑋(𝑧) (1)
2
0.5
0.25
1 X(z) z-1 z-1 X(z) z-1 z-2 X(z) z-1 z-3 X(z)
U(z) Y(z)
−3
−5
− 10
Step #6 Rename the state variables (after Z-1) from right to left, and remove the branch
of Z-1 as shown in the state diagram given below.
2
0.5
0.25
−5
− 10
Step #7
Write the state and output equations [Dynamic Equation] as follows:
𝑥1 (𝑘 + 1) = 𝑥2 (𝑘)
𝑥2 (𝑘 + 1) = 𝑥3 (𝑘)
𝑥3 (𝑘 + 1) = 𝑢(𝑘) − 3𝑥3 (𝑘) − 5𝑥2 (𝑘) − 10𝑥1 (𝑘)
𝑦(𝑘) = 0.25𝑥2 (𝑘) + 0.5𝑥3 (𝑘) + 2𝑥3 (𝑘 + 1)
𝑦(𝑘) = 0.25𝑥2 (𝑘) + 0.5𝑥3 (𝑘) + 2{𝑢(𝑘) − 3𝑥3 (𝑘) − 5𝑥2 (𝑘) − 10𝑥1 (𝑘)}
𝑦(𝑘) = 2𝑢(𝑘) − 20𝑥1 (𝑘) − 9.75𝑥2 (𝑘) − 5.5𝑥3 (𝑘)
The above equation can be rearranged in matrix form as:
𝑥1 (𝑘 + 1) 0 1 0 𝑥1 (𝑘) 0
[𝑥2 (𝑘 + 1)] = [ 0 0 1 ] [ 𝑥2 (𝑘) ] + [0] 𝑢(𝑘)
𝑥3 (𝑘 + 1) −10 −5 −3 𝑥3 (𝑘) 1
Which is phase variable canonical form.
𝑥1 (𝑘)
𝑦(𝑘) = [−20 −9.75 −5.5] [𝑥2 (𝑘)] + [2] 𝑢(𝑘)
𝑥3 (𝑘)
Example:
Consider a discrete LTI control system described by difference equation:
𝑦(𝑘) + 4𝑦(𝑘 + 1) + 5𝑦(𝑘 + 2) + 10𝑦(𝑘 + 3) = 2𝑢(𝑘) + 7𝑢(𝑘 + 1) + 2𝑢(𝑘 + 2)
Represent this system by controllable canonical form.
Assuming zero initial conditions, replace each k by k−3:
𝑦(𝑘 − 3) + 4𝑦(𝑘 − 2) + 5𝑦(𝑘 − 1) + 10𝑦(𝑘) = 2𝑢(𝑘 − 3) + 7𝑢(𝑘 − 2) + 2𝑢(𝑘 − 1)
Divide by 10
𝑦(𝑘) + 0.5𝑦(𝑘 − 1) + 0.4𝑦(𝑘 − 2) + 0.1𝑦(𝑘 − 3)
= 0.2𝑢(𝑘 − 1) + 0.7𝑢(𝑘 − 2) + 0.2𝑢(𝑘 − 3)
𝑥1 (𝑘 + 1) 0 1 0 𝑥1 (𝑘) 0
𝑥
[ 2 (𝑘 + 1) ]=[ 0 0 𝑥 (𝑘)
1 ] [ 2 ] + [0] 𝑢(𝑘)
𝑥3 (𝑘 + 1) −0.1 −0.4 −0.5 𝑥3 (𝑘) 1
𝑥1 (𝑘)
𝑥 (𝑘)
𝑦(𝑘) = [0.2 0.7 0.2] [ 2 ] + [0] 𝑢(𝑘)
…
𝑥𝑛 (𝑘)
2.2 Observable canonical form
Example:
Consider a discrete LTI control system described by difference equation:
𝑦(𝑘) + 4𝑦(𝑘 + 1) − 5𝑦(𝑘 + 2) + 10𝑦(𝑘 + 3) + 𝑦(𝑘 + 4)
= 3𝑢(𝑘) + 7𝑢(𝑘 + 1) + 2𝑢(𝑘 + 2)
Represent this system by observable canonical form.
Assuming zero initial conditions, replace each k by k-4:
𝑦(𝑘 − 4) + 4𝑦(𝑘 − 3) − 5𝑦(𝑘 − 2) + 10𝑦(𝑘 − 1) + 𝑦(𝑘)
= 3𝑢(𝑘 − 3) + 7𝑢(𝑘 − 2) + 2𝑢(𝑘 − 1)
𝑌(𝑧) 2𝑧 −1 + 7𝑧 −2 + 3𝑧 −3
=
𝑈(𝑧) 1 + 10𝑧 −1 − 5𝑧 −2 + 4𝑧 −3 + 𝑧 −4
𝑥1 (𝑘)
𝑥2 (𝑘)
𝑦(𝑘) = [0 0 0 1] [ ] + [0] 𝑢(𝑘)
𝑥3 (𝑘)
𝑥4 (𝑘)
2.3 Diagonal canonical form
Consider the system with pulse T.F. is:
𝑌(𝑧) 12𝑧 + 12
= 3
𝑈(𝑧) 𝑧 + 9𝑧 2 + 26𝑧 + 24
−2
𝑌(𝑧) 24
By the same way, the sate diagram for the term = is given below,
𝑈(𝑧) 𝑧+3
−3
𝑌(𝑧) −18
By the same way, the sate diagram for the term = is given below,
𝑈(𝑧) 𝑧+4
U(z) X(z) z-1 X(z) Y(z)
1 z-1 −18
−4
−2 −6
1
−3
1 −18
X(z) z-1 z-1 X(z)
−4
Remove the (z-1) term and rename the state variables as shown below:
X1(k+1) X1(k)
−2 −6
1
1 X2(k+1) X2(k) 24
u(k) Y(k)
−3
1 −18
X3(k+1) X3(k)
−4
𝑥1 (𝑘)
𝑦(𝑡) = [−6 24 −18] [𝑥2 (𝑘)] + [0]𝑢(𝑘)
𝑥3 (𝑘)
Example:
Consider the system with pulse T.F. is:
𝑌(𝑧) 5𝑧 + 20
= 3
𝑈(𝑧) 𝑧 + 6𝑧 2 + 11𝑧 + 6
Represent this system by diagonal canonical form.
Note that the pulse TF must be in +ve powers of Z. Moreover, the numerator must be
polynomial but denominator must be in factorized format as:
𝑌(𝑧) 5𝑧 + 20
=
𝑈(𝑧) (𝑧 + 1)(𝑧 + 2)(𝑧 + 3)
Using partial fraction:
5𝑧 + 20 𝐴 𝐵 𝐶
= + +
(𝑧 + 1)(𝑧 + 2)(𝑧 + 3) 𝑧+1 𝑧+2 𝑧+3
Multiply both sides by (z+1)(z+2)(z+3)
5𝑧 + 20 = 𝐴(𝑧 + 2)(𝑧 + 3) + 𝐵(𝑧 + 1)(𝑧 + 3) + 𝐶(𝑧 + 1)(𝑧 + 2)
At z= −1 → 15 = 2A → A= 7.5
At z= −2 → 10 = −B → B = −10
At z= −3 → 5 = 2 C → C = 2.5
𝑌(𝑧) 7.5 10 2.5
= − +
𝑈(𝑧) 𝑧+1 𝑧+2 𝑧+3
𝑥1 (𝑘 + 1) −1 0 0 𝑥1 (𝑘) 1
𝑥
[ 2 (𝑘 + 1) ]=[ 0 𝑥 (𝑘)
−2 0 ] [ 2 ] + [1] 𝑢(𝑘)
𝑥3 (𝑘 + 1) 0 0 −3 𝑥3 (𝑘) 1
Matrix A is a diagonal matrix with the system poles located in the diagonal.
𝑥1 (𝑘)
𝑦(𝑡) = [7.5 −10 2.5] [𝑥2 (𝑘)] + [0]𝑢(𝑘)
𝑥3 (𝑘)
2.3 Jordan canonical form
Consider the system with pulse T.F. is:
𝑌(𝑧) 5𝑧 + 20
=
𝑈(𝑧) (𝑧 + 4)2 (𝑧 + 3)3 (𝑧 + 5)
Represent this system by Jordan canonical form.
Note that the pulse TF must be in +ve powers of Z. Moreover, the numerator must be
polynomial but denominator must be in factorized format as:
𝑌(𝑧) 5(𝑧 + 4)
=
𝑈(𝑧) (𝑧 + 4)2 (𝑧 + 3)3 (𝑧 + 5)
𝑌(𝑧) 5
=
𝑈(𝑧) (𝑧 + 4)(𝑧 + 3)3 (𝑧 + 5)
Using partial fraction:
5 𝐴 𝐵 𝐶 𝐷 𝐸
= + + + +
(𝑧 + 4)(𝑧 + 3)3 (𝑧 + 5) 𝑧 + 4 𝑧 + 5 𝑧 + 3 (𝑧 + 3)2 (𝑧 + 3)3
5 = 𝐴(𝑧 + 5)(𝑧 + 3)3 + 𝐵(𝑧 + 4)(𝑧 + 3)3 + 𝐶(𝑧 + 4)(𝑧 + 5)(𝑧 + 3)2
+ 𝐷(𝑧 + 4)(𝑧 + 5)(𝑧 + 3) + 𝐸(𝑧 + 4)(𝑧 + 5)
At z = −4 5 = A(1)(−1) A = −5
At z = −5 5 = B(−1)(−8) B = 5/8
At z = −3 5 = E(1)(2) E = 2.5
At z = 0 5 = −675+67.5+180C+60D+50 3C+D = 9.375 -------(1)
At z = 1 5 = −1920+200+480C+120D+75 4C+D = 13.75 -----(2)
From (1) & (2) C = 4.375 & D = −3.75
5 −5 0.625 4.375 3.75 2.5
= + + − +
(𝑧 + 4)(𝑧 + 3)3 (𝑧 + 5) 𝑧 + 4 𝑧 + 5 𝑧 + 3 (𝑧 + 3)2 (𝑧 + 3)3
𝑥1 (𝑘 + 1) −4 0 0 0 0 𝑥1 (𝑘) 1
𝑥2 (𝑘 + 1) 0 −5 0 0 0 𝑥2 (𝑘) 1
𝑥3 (𝑘 + 1) = 0 0 −3 1 0 𝑥3 (𝑘) + 0 𝑢(𝑘)
𝑥4 (𝑘 + 1) 0 0 0 −3 1 𝑥4 (𝑘) 0
[𝑥5 (𝑘 + 1)] [ 0 0 0 0 −3] [𝑥5 (𝑘)] [1]
𝑥1 (𝑘)
𝑥2 (𝑘)
𝑦(𝑘) = [−5 0.625 4.375 −3.75 2.5] 𝑥3 (𝑘) + [0]𝑢(𝑘)
𝑥4 (𝑘)
[𝑥5 (𝑘)]
Example:
Consider the system with pulse T.F. is:
𝑌(𝑧) 𝑧+2
= 2
𝑈(𝑧) 𝑧 + 1.3𝑧 + 0.4
a) Represent this system by Controllable canonical form.
b) Represent this system by Observable canonical form.
c) Represent this system by Diagonal canonical form.
𝑌(𝑧) 𝑧+2 𝑧 −1 + 2𝑧 −2
= =
𝑈(𝑧) 𝑧 2 + 1.3𝑧 + 0.4 1 + 1.3𝑧 −1 + 0.4𝑧 −2
a2 = 0.4, a1 = 1.3, b2 = 2, b1 = 1, b0 = 0
a) For Controllable Canonical form:
𝑥 (𝑘 + 1) 0 1 𝑥 (𝑘) 0
[ 1 ]=[ ] [ 1 ] + [ ] 𝑢(𝑘)
𝑥2 (𝑘 + 1) −0.4 −1.3 𝑥2 (𝑘) 1
𝑥 (𝑘)
𝑦(𝑘) = [2 1] [ 1 ] + [0]𝑢(𝑘)
𝑥2 (𝑘)
b) For Observable Canonical form:
𝑥1 (𝑘 + 1) 0 −0.4 𝑥1 (𝑘) 2
[ ]=[ ][ ] + [ ] 𝑢(𝑘)
𝑥2 (𝑘 + 1) 0 −1.3 𝑥2 (𝑘) 1
𝑥 (𝑘)
𝑦(𝑘) = [0 1] [ 1 ] + [0]𝑢(𝑘)
𝑥2 (𝑘)
c) For diagonal canonical form:
𝑌(𝑧) 𝑧+2 𝑧+2
= 2 =
𝑈(𝑧) 𝑧 + 1.3𝑧 + 0.4 (𝑧 + 0.5)(𝑧 + 0.8)
Using partial fraction:
𝑧+2 𝐴 𝐵
= +
(𝑧 + 0.5)(𝑧 + 0.8) 𝑧 + 0.5 𝑧 + 0.8
Example:
Calculate the pulse T.F of the SISO LTID system given by:
𝑥 (𝑘 + 1) 0 1 𝑥1 (𝑘) 0
[ 1 ]=[ ][ ] + [ ] 𝑢(𝑘)
𝑥2 (𝑘 + 1) −2 −3 𝑥2 (𝑘) 1
𝑥 (𝑘)
𝑦(𝑘) = [0 1] [ 1 ] + [0]𝑢(𝑘)
𝑥2 (𝑘)
First, we must calculate [𝑧𝐼 − 𝐴]−1
𝑧 0 0 1 𝑧 −1
[𝑧𝐼 − 𝐴] = [ ]−[ ]=[ ]
0 𝑧 −2 −3 2 𝑧+3
Then we calculate the determinate of 𝑧𝐼 − 𝐴
|𝑧𝐼 − 𝐴| = 𝑧(𝑧 + 3) − (−2) = 𝑧 2 + 3𝑧 + 2 = (𝑧 + 2)(𝑧 + 1)
Then, we must calculate [𝑧𝐼 − 𝐴]−1
𝑧+3 1
(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1)
[𝑧𝐼 − 𝐴]−1 =
−2 𝑧
[(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1)]
𝑌(𝑧)
= 𝐶 [𝑧𝐼 − 𝐴]−1 𝐵 + 𝐷
𝑈(𝑧)
𝑧+3 1
𝑌(𝑧) (𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1) 0
= [0 1 ] [ ] + [0]
𝑈(𝑧) −2 𝑧 1
[(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1)]
𝑌(𝑧) −2 𝑧 0 𝑧
= [ ][ ] =
𝑈(𝑧) (𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1) 1 (𝑧 + 2)(𝑧 + 1)
Example:
Consider the dynamic equation for the discrete system with output y(k) and input u(k)
shown below:
The state equation:
𝑥1 (𝑘 + 1) 0 1 0 𝑥1 (𝑘) 0 0 𝑟 (𝑘)
1
𝑥
[ 2 (𝑘 + 1) 𝑥 (𝑘)
] = [ 0 −4 3 ] [ 2 ] + [1 0] [ ]
𝑟2 (𝑘)
𝑥3 (𝑘 + 1) −1 −5 −5 𝑥3 (𝑘) 0 1
The output equation:
15 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
𝑥1 (𝑘)
𝑐1 (𝑘) 1 0 0 𝑥 (𝑘) 0 0 𝑟1 (𝑘)
[ ]= [ ][ 2 ] + [ ][ ]
𝑐2 (𝑘) 0 0 1 0 0 𝑟2 (𝑘)
𝑥3 (𝑘)
Calculate the transfer matrix.
𝑧 0 0 0 1 0 𝑧 −1 0
𝑧𝐼 − 𝐴 = [0 𝑧 0] − [ 0 −4 3 ] = [0 𝑧 + 4 −3 ]
0 0 𝑧 −1 −5 −5 1 5 𝑧+5
𝑇
(𝑧 + 4)(𝑧 + 5) + 15 −3 −(𝑧 + 4)
𝑎𝑑𝑗(𝑧𝐼 − 𝐴) = + [ − − (𝑧 + 5) 𝑧(𝑧 + 5) −(5𝑧 + 1)]
3 − − 3𝑧 𝑧(𝑧 + 4)
∆= det(𝑧𝐼 − 𝐴) = 𝑧{(𝑧 + 4)(𝑧 + 5) + 15} + 3 = 𝑧 3 + 9𝑧 2 + 35𝑧 + 3
2
1 𝑧 + 9𝑧 + 35 𝑧+5 3
[𝑧𝐼 − 𝐴]−1 = [ −3 𝑧(𝑧 + 5) 3𝑧 ]
∆
−(𝑧 + 4) −(5𝑧 + 1) 𝑧(𝑧 + 4)
𝐶(𝑧)
= 𝐶 [𝑧𝐼 − 𝐴]−1 𝐵 + 𝐷
𝑅(𝑧)
𝐶(𝑧) 1 1 𝑧 2 + 9𝑧 + 35 𝑧+5 3 0 0
0 0
= [ ][ −3 𝑧(𝑧 + 5) 3𝑧 ] [1 0] + 0
𝑅(𝑧) ∆ 0 0 1
−(𝑧 + 4) −(5𝑧 + 1) 𝑧(𝑧 + 4) 0 1
𝐶(𝑧) 1 1 𝑧+5 3
0 0
= [ ] [ 𝑧(𝑧 + 5) 3𝑧 ]
𝑅(𝑧) ∆ 0 0 1 −(5𝑧 + 1) 𝑧(𝑧 + 4)
𝐶(𝑧) 1 𝑧+5 3
= [ ]
𝑅(𝑧) ∆ −(5𝑧 + 1) 𝑧(𝑧 + 4)
This means
𝐶1 (𝑧) 𝑧+5
= 3
𝑅1 (𝑧) 𝑧 + 9𝑧 2 + 35𝑧 + 3
𝐶1 (𝑧) 3
= 3
𝑅2 (𝑧) 𝑧 + 9𝑧 2 + 35𝑧 + 3
𝐶2 (𝑧) −(5𝑧 + 1)
= 3
𝑅1 (𝑧) 𝑧 + 9𝑧 2 + 35𝑧 + 3
𝐶2 (𝑧) 𝑧(𝑧 + 4)
= 3
𝑅2 (𝑧) 𝑧 + 9𝑧 2 + 35𝑧 + 3
4. Eigen Values
The eigen values λ1, λ2, λ3, …, λn of n×n matrix A are the roots of the characteristic
equation. The eigen values are sometimes called the dynamic roots. Sure, these eigen
values determine the behavior of the control system with time and hence its stability.
Example:
Consider the matrix A,
0 1 0
𝐴=[ 0 0 1]
−6 −11 −6
Find the eigen values?
First, we calculate (zI-A)
𝑧 0 0 0 1 0 𝑧 −1 0
𝑧𝐼 − 𝐴 = [0 𝑧 0] − [ 0 0 1 ] = [0 𝑧 −1 ]
0 0 𝑧 −6 −11 −6 6 11 𝑧 + 6
Replace each z by λ
𝜆 −1 0
𝜆𝐼 − 𝐴 = [0 𝜆 −1 ]
6 11 𝜆+6
|𝜆𝐼 − 𝐴| = 𝜆3 + 6𝜆2 + 11𝜆 + 6 = 0
Solving this cubic equation for λ, we get the three eigen values as:
(𝜆 + 1)(𝜆 + 2)(𝜆 + 3) = 0
The eigen values of matrix A are
λ1= −1, λ2= −2 and λ3= −3
5. Eigen Vectors
For each matrix A with n×n dimension, there are n eigen values as explained in
previous section. For each eigen value there is a corresponding eigen vector. Therefore,
for matrix A, there are n eigen vectors that can be obtained from Eqn. (1):
|𝜆𝑖 𝐼 − 𝐴||𝑃𝑖 | = [0] (1)
Where, Pi is the eigen vector corresponding to the eigen value λi
17 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
Therefore, at i =1,2,3,…n we can get P1, P2 P3, …Pn from the above equation.
Example:
Calculate the eigen vector for the matrix A given below.
0 1 0
𝐴=[ 0 0 1]
−6 −11 −6
First, we calculate the eigen values (see previous example):
λ1= −1, λ2= −2 and λ3= −3
Based on Eqn. (1)
𝜆1 −1 0 𝑃11 0
[0 𝜆1 −1 ] [𝑃21 ] = [0]
6 11 𝜆1 + 6 𝑃31 0
Substitute λ1= −1,
−1 −1 0 𝑃11 0
[ 0 −1 −1] [𝑃21 ] = [0]
6 11 5 𝑃31 0
−𝑃11 − 𝑃21 = 0
−𝑃21 − 𝑃31 = 0
6𝑃11 + 11𝑃21 + 5𝑃31 = 0
Assuming P11=1, and solving the above 3 equations, we get the values of P 21 = −1and
P31 = 1. Therefore, the 1st eigen vector P1 is:
𝑃11 1
𝑃1 = [𝑃21 ] = [−1]
𝑃31 1
By the same way, at λ2= −2,
−2 −1 0 𝑃12 0
𝑃
[ 0 −2 −1] [ 22 ] = [0]
6 11 4 𝑃32 0
−2𝑃12 − 𝑃22 = 0
−2𝑃22 − 𝑃32 = 0
6𝑃12 + 11𝑃22 + 4𝑃32 = 0
18 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
Assuming P12=1, and solving the above 3 equations, we get the values of P22 = −2and
P32 = 4. Therefore, the 2nd eigen vector P2 is:
𝑃12 1
𝑃2 = [𝑃22 ] = [−2]
𝑃32 4
By the same way, at λ2= −3,
−3 −1 0 𝑃13 0
[ 0 −3 −1] [𝑃23 ] = [0]
6 11 3 𝑃33 0
−3𝑃13 − 𝑃23 = 0
−3𝑃23 − 𝑃33 = 0
6𝑃13 + 11𝑃23 + 3𝑃33 = 0
Assuming P13=1, and solving the above 3 equations, we get the values of P23 = −3and
P33 = 9. Therefore, the 3rd eigen vector P3 is:
𝑃13 1
𝑃3 = [𝑃23 ] = [−3]
𝑃33 9
Therefore, the eigen vector matrix (P) will be:
1 1 1
𝑃 = [−1 −2 −3]
1 4 9
6. Linear Transformations
For a given pulse T.F., the state-space representation is not unique. Although the state
space representations are different, similar systems have the same transfer function and
hence the same poles and eigenvalues. We can make transformations between similar
systems from one set of state equations to another by using the transformation matrix
P. Introducing a new state variables vector 𝑥̂(𝑘)with dimension n×1 and is given as:
𝑥̂1
𝑥̂
𝑥̂(𝑘) = [ 2 ]
⋮
𝑥̂𝑛
The relation between the old state vector x(t) and the new one 𝑥̂(𝑘) is governed by:
𝑥(𝑘) = 𝑃𝑥̂(𝑘) 𝑂𝑅 𝑥̂(𝑘) = 𝑃−1 𝑥(𝑘)
Where P is the eigen vector matrix with dimension n×n
Consider the system represented by:
𝑥(𝑘 + 1) = 𝐴𝑥(𝑘) + 𝐵𝑢(𝑘)
𝑦(𝑘) = 𝐶𝑥(𝑘) + 𝐷𝑢(𝑘)
Using the new set of state variables 𝑥̂(𝑘), then:
𝑃𝑥̂(𝑘 + 1) = 𝐴𝑃𝑥̂(𝑘) + 𝐵𝑢(𝑘)
Multiply both sides by P−1
𝑥̂(𝑘 + 1) = 𝑃−1 𝐴𝑃𝑥̂(𝑘) + 𝑃−1 𝐵𝑢(𝑘)
𝑥̂(𝑘 + 1) = 𝐴̂𝑥(𝑘) + 𝐵̂𝑢(𝑘)
Where,
𝐴̂ = 𝑃−1 𝐴𝑃 𝑎𝑛𝑑 𝐵̂ = 𝑃−1 𝐵
From the output equation:
𝑦(𝑘) = 𝐶𝑃𝑥̂(𝑘) + 𝐷𝑢(𝑘)
𝑦(𝑘) = 𝐶̂ 𝑥̂(𝑘) + 𝐷
̂ 𝑢(𝑘)
Where,
𝐶̂ = 𝐶𝑃 ̂=𝐷
𝑎𝑛𝑑 𝐷
Example
Given the discrete system described by the dynamic equation
𝑥1 (𝑘 + 1) 0 1 0 𝑥1 (𝑘) 0
[𝑥2 (𝑘 + 1)] = [ 0 0 1 ] [𝑥2 (𝑘)] + [0] 𝑢(𝑘)
𝑥3 (𝑘 + 1) −6 −11 −6 𝑥3 (𝑘) 2
𝑥1 (𝑘)
𝑦(𝑘) = [1 −2 1] [𝑥2 (𝑘)] + [0] 𝑢(𝑘)
𝑥3 (𝑘)
Express this discrete system as diagonal canonical system that is similar.
First, we calculate the system eigen values as given in the previous example:
λ1= −1, λ2= −2 and λ3= −3
20 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
Since matrix A is controllable canonical form with distinct eigen values, then:
Second, we calculate the Vandermonde matrix (P) with dimension 3×3 such that
1 1 1 1 1 1
𝑃 = [ 𝜆1 𝜆2 𝜆3 ] = [−1 −2 −3]
𝜆1 2 𝜆2 2 𝜆3 2 1 4 9
Third, we calculate P-1 as follows,
3 2.5 0.5
−1
𝑃 = [−3 −4 −1]
1 1.5 0.5
The matrix A of the diagonal system is given by:
3 2.5 0.5 0 1 0 1 1 1 −1 0 0
𝐴̂ = 𝑃 𝐴𝑃 = [−3 −4 −1] [ 0
−1
0 1 ] [−1 −2 −3] = [ 0 −2 0]
1 1.5 0.5 −6 −11 −6 1 4 9 0 0 −3
3 2.5 0.5 0 1
̂ −1
𝐵 = 𝑃 𝐵 = [−3 −4 −1] [0] = [−2]
1 1.5 0.5 2 1
1 1 1
̂
𝐶 = 𝐶 𝑃 = [1 −2 1] [−1 −2 −3] = [4 9 16]
1 4 9
𝑥̂1 (𝑘 + 1) −1 0 0 𝑥̂1 (𝑘) 1
[𝑥̂2 (𝑘 + 1)] = [ 0 −2 0 ] [𝑥̂2 (𝑘)] + [−2] 𝑢(𝑘)
𝑥̂3 (𝑘 + 1) 0 0 −3 𝑥̂3 (𝑘) 1
𝑥̂1 (𝑘)
𝑦(𝑡) = [4 9 16] [𝑥̂2 (𝑘)] + [0] 𝑢(𝑘)
𝑥̂3 (𝑘)
Case #2: matrix A is NOT a controllable canonical form with distinct eigen values.
In that case, the transformation matrix (P) doesn’t follow Vandermonde matrix. Matrix
P can be obtained as the eigen vectors given before.
Example:
Given the system described by the state equation
𝑥1 (𝑘 + 1) 0 1 −1 𝑥1 (𝑘) 0
[𝑥2 (𝑘 + 1)] = [ 2 8 0 ] [𝑥2 (𝑘)] + [1] 𝑢(𝑘)
𝑥3 (𝑘 + 1) −6 −11 5 𝑥3 (𝑘) 2
21 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
−2𝑃12 + 𝑃22 = 0
6𝑃12 + 11𝑃22 + 4𝑃32 = 0
Assuming P12=1, and solving the above 3 equations, we get the values of P 22= 2 and
P32 = -7. Therefore, the 2nd eigen vector P2 is:
𝑃11 1
𝑃2 = [𝑃21 ] = [ 2 ]
𝑃31 −7
Substitute λ3= 4.82843,
4.82843 −1 1 𝑃13 0
[ −2 −3.17157 0 ] [𝑃23 ] = [0]
6 11 −0.17157 𝑃33 0
4.82843𝑃13 − 𝑃23 + 𝑃33 = 0
−2𝑃13 − 3.17157𝑃23 = 0
6𝑃13 + 11𝑃23 − 0.17157𝑃33 = 0
Assuming P13=1, and solving the above 3 equations, we get the values of P 23= -
0.630603 and P33 = -5.4591572. Therefore, the 3rd eigen vector P3 is:
𝑃13 1
𝑃3 = [𝑃23 ] = [ −0.630603 ]
𝑃33 −5.4591572
The transformation matrix P is:
1 1 1
𝑃 = [−0.22654 2 −0.630603 ]
0.60189 −7 −5.4591572
We get the inverse of matrix P:
0.9255 0.0930 0.1588
−1
𝑃 = [ 0.0976 0.3659 −0.0244]
−0.0231 −0.4589 −0.1344
−0.82843 0 0
̂ −1
𝐴 = 𝑃 𝐴𝑃 = [ 0 9 0 ]
0 0 4.82843
Case #3: matrix A is NOT a phase variable canonical form with repeated eigen values.
Since there are repeated eigen values, we can’t put matrix A in diagonal canonical
form. But we can put matrix A in Jordan Canonical form (J).
Two examples of matrix (J) for a 5th order control system when eigen values repeated
twice and when eigen values repeated triple are given as follows:
𝜆1 1 0 0 0 𝜆1 1 0 0 0
0 𝜆1 0 0 0 0 𝜆1 1 0 0
𝐽= 0 0 𝜆2 0 0 𝐽= 0 0 𝜆1 0 0
0 0 0 𝜆3 0 0 0 0 𝜆2 0
[ 0 0 0 0 𝜆4 ] [ 0 0 0 0 𝜆3 ]
The eigen vectors for non-repeated eigen values are calculated from
|𝜆𝑖 𝐼 − 𝐴||𝑃𝑖 | = [0]
The eigen vectors for m-times repeated eigen values are calculated from
|𝜆𝑗 𝐼 − 𝐴||𝑃𝑚 | = −[𝑃𝑚−1 ]
Example:
Given the system described by the state equation
𝑥̇ 1 0 6 −5 𝑥1
[𝑥̇ 2 ] = [1 0 2 ] [𝑥2 ]
𝑥̇ 3 3 2 4 𝑥3
Find the transformation matrix (P) that can diagonalize the matrix A or put it in Jordan
Canonical form.
First: we determine the eigen values:
𝜆 0 0 0 6 −5 𝜆 −6 5
𝜆𝐼 − 𝐴 = [0 𝜆 0] − [1 0 2 ] = [−1 𝜆 −2 ]
0 0 𝜆 3 2 4 −3 −2 𝜆 − 4
|𝜆𝐼 − 𝐴| = 𝜆3 − 4𝜆2 + 5𝜆 − 2 = 0
Solving this cubic equation for λ, we get the three eigen values as:
(𝜆 − 2)(𝜆 − 1)2 = 0
The eigen values of matrix A are
λ1= 2, λ2= 1 and λ3= 1
this means the eigen values are not distinct. There are repeated eigen values. So, we
will put matrix A in Jordan canonical form.
For the non-repeated eigen value (λ1= 2), we calculate the eigen vector P1 as:
𝜆 −6 5 𝑃11 0
[−1 𝜆 −2 ] [𝑃21 ] = [0]
−3 −2 𝜆 − 4 𝑃31 0
Substitute λ1= 2,
2 −6 5 𝑃11 0
[−1 2 −2] [𝑃21 ] = [0]
−3 −2 −2 𝑃31 0
2𝑃11 − 6𝑃21 + 5𝑃31 = 0
−𝑃11 + 2𝑃21 − 2𝑃31 = 0
−3𝑃11 − 2𝑃21 − 2𝑃31 = 0
Assuming P11=1, and solving the above 3 equations, we get the values of P21 = -0.5 and
P31 = -1. Therefore, the 1st eigen vector P1 is:
𝑃11 1
𝑃
𝑃1 = [ 21 ] = [−0.5]
𝑃31 −1
For the repeated eigen value (λ2= 1, λ3= 1), we calculate the eigen vector P2 & P3 as:
𝜆 −6 5 𝑃12 0
[−1 𝜆 𝑃
−2 ] [ 22 ] = [0]
−3 −2 𝜆 − 4 𝑃32 0
Substitute λ2= 1,
1 −6 5 𝑃12 0
𝑃
[−1 1 −2] [ 22 ] = [0]
−3 −2 −3 𝑃32 0
𝑃12 − 6𝑃22 + 5𝑃32 = 0
−𝑃12 + 𝑃22 − 2𝑃32 = 0
−3𝑃12 − 2𝑃22 − 3𝑃32 = 0
Assuming P12=1, and solving the above 3 equations, we get the values of P22 = -3/7 and
P32 = -5/7. Therefore, the 2nd eigen vector P2 is:
𝑃12 1
𝑃2 = [𝑃22 ] = [−3/7]
𝑃32 −5/7
To get the 3rd eigen vector P3, we use the following relation:
𝜆 −6 5 𝑃13 −𝑃12
[−1 𝜆 −2 ] [𝑃23 ] = [−𝑃22 ]
−3 −2 𝜆 − 4 𝑃33 −𝑃32
Substitute λ2= 1,
1 −6 5 𝑃13 −1
[−1 1 −2] [𝑃23 ] = [3/7]
−3 −2 −3 𝑃33 5/7
𝑃13 − 6𝑃23 + 5𝑃33 = −1
−𝑃13 + 𝑃23 − 2𝑃33 = 3/7
−3𝑃13 − 2𝑃23 − 3𝑃33 = 5/7
Assuming P13=1, and solving the above 3 equations, we get the values of P23 = -22/49
and P33 = -46/49. Therefore, the 2nd eigen vector P2 is:
𝑃13 1
𝑃3 = [𝑃23 ] = [−22/49]
𝑃33 −46/49
The transformation matrix (P) is:
1 1 1
𝑃 = [−0.5 −3/7 −22/49]
−1 −5/7 −46/49
We calculate the inverse of matrix P:
−8 −22 2
𝑃−1 = [ 2 −6 5]
7 28 −7
2 0 0
̂ −1
𝐴 = 𝐽 = 𝑃 𝐴𝑃 = [0 1 1]
0 0 1
7. Solving Discrete-Time State Equations
The state equation is given by:
𝑥(𝑘 + 1) = 𝐴𝑥(𝑘) + 𝐵𝑢(𝑘)
26 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
Determine the state transition matrix and the state transition equation x(k) for a unit
step input and x1(0)=1, x2(0)=2
𝑧 0 0 1 𝑧 −1
[𝑧𝐼 − 𝐴] = [ ]−[ ]=[ ]
0 𝑧 −2 −3 2 𝑧+3
1 𝑧+3 1
Φ(𝑧) = [𝑧𝐼 − 𝐴]−1 = [ ]
∆ −2 𝑧
∆= det(𝑧𝐼 − 𝐴) = 𝑧(𝑧 + 3) + 2 = 𝑧 2 + 3𝑧 + 2 = (𝑧 + 2)(𝑧 + 1)
𝑧+3 1
(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1)
Φ(𝑧) =
−2 𝑧
[(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1)]
To get the state transition matrix φ(k), we use partial fraction of each term in φ(z)
The 1st term in matrix:
𝐹(𝑧) 𝑧+3 1.5 2 0.5
= = − +
𝑧 𝑧(𝑧 + 2)(𝑧 + 1) 𝑧 𝑧+1 𝑧+2
𝑧 𝑧
𝐹(𝑧) = 1.5 − 2 + 0.5
𝑧+1 𝑧+2
Taking inverse Z transform:
𝑓(𝑘) = 1.5𝛿(𝑘) − 2(−1)𝑘 𝑢(𝑘) + 0.5(−2)𝑘 𝑢(𝑘)
The 2nd term in matrix:
𝐹(𝑧) 1 0.5 1 0.5
= = − +
𝑧 𝑧(𝑧 + 2)(𝑧 + 1) 𝑧 𝑧+1 𝑧+2
𝑧 𝑧
𝐹(𝑧) = 0.5 − + 0.5
𝑧+1 𝑧+2
Taking inverse Z transform:
𝑓(𝑘) = 0.5𝛿(𝑘) − (−1)𝑘 𝑢(𝑘) + 0.5(−2)𝑘 𝑢(𝑘)
The 3rd term in matrix:
𝐹(𝑧) −2 1 2 1
= =− + −
𝑧 𝑧(𝑧 + 2)(𝑧 + 1) 𝑧 𝑧+1 𝑧+2
𝑧 𝑧
𝐹(𝑧) = −1.0 + 2 −
𝑧+1 𝑧+2
Taking inverse Z transform:
𝑓(𝑘) = −𝛿(𝑘) + 2(−1)𝑘 𝑢(𝑘) − (−2)𝑘 𝑢(𝑘)
The 4th term in matrix:
𝐹(𝑧) 1 1 1
= = −
𝑧 (𝑧 + 2)(𝑧 + 1) 𝑧 + 1 𝑧 + 2
𝑧 𝑧
𝐹(𝑧) = −
𝑧+1 𝑧+2
28 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
1.5𝛿(𝑘) − 2(−1)𝑘 𝑢(𝑘) + 0.5(−2)𝑘 𝑢(𝑘) 0.5𝛿(𝑘) − (−1)𝑘 𝑢(𝑘) + 0.5(−2)𝑘 𝑢(𝑘)
Φ(𝑘) = [ ]
−𝛿(𝑘) + 2(−1)𝑘 𝑢(𝑘) − (−2)𝑘 𝑢(𝑘) (−1)𝑘 𝑢(𝑘) − (−2)𝑘 𝑢(𝑘)
𝑧+3 1
(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1) 0 𝑧
φ(z)𝐵 𝑈(𝑧) = [ ]
−2 𝑧 1 𝑧−1
[(𝑧 + 2)(𝑧 + 1) (𝑧 + 2)(𝑧 + 1)]
𝑧
(𝑧 − 1)(𝑧 + 1)(𝑧 + 2)
φ(z)𝐵 𝑈(𝑧) =
𝑧2
[(𝑧 − 1)(𝑧 + 1)(𝑧 + 2)]
Using partial fraction:
𝐹(𝑧) 1 1/6 0.5 1/3
= = − +
𝑧 (𝑧 − 1)(𝑧 + 1)(𝑧 + 2) 𝑧 − 1 𝑧 + 1 𝑧 + 2
1 𝑧 1 𝑧 1 𝑧
𝐹(𝑧) = − +
6𝑧 − 1 2𝑧 + 1 3𝑧 + 2
1 1 1
𝑓(𝑘) = 𝑢(𝑘) − (−1)𝑘 𝑢(𝑘) + (−2)𝑘 𝑢(𝑘)
6 2 3
𝐹(𝑧) 𝑧 1/6 0.5 2/3
= = + −
𝑧 (𝑧 − 1)(𝑧 + 1)(𝑧 + 2) 𝑧 − 1 𝑧 + 1 𝑧 + 2
1 𝑧 1 𝑧 2 𝑧
𝐹(𝑧) = + −
6𝑧 − 1 2𝑧 + 1 3𝑧 + 2
1 1 2
𝑓(𝑘) = 𝑢(𝑘) + (−1)𝑘 𝑢(𝑘) − (−2)𝑘 𝑢(𝑘)
6 2 3
1 1 1
𝑢(𝑘) − (−1)𝑘 𝑢(𝑘) + (−2)𝑘 𝑢(𝑘)
𝑍 −1 {φ(z) 𝐵 𝑈(𝑧)} = [6 2 3 ]
1 1 2
𝑢(𝑘) + (−1)𝑘 𝑢(𝑘) − (−2)𝑘 𝑢(𝑘)
6 2 3
29 Chapter Five: Stability of Discrete Systems Dr. Ahmed Mustafa Hussein
Benha University Electrical Engineering Department
Faculty of Engineering at Shubra Dr. Ahmed Mustafa Hussein
𝑥(𝑡)
1.5𝛿(𝑘) − 2(−1)𝑘 𝑢(𝑘) + 0.5(−2)𝑘 𝑢(𝑘) 0.5𝛿(𝑘) − (−1)𝑘 𝑢(𝑘) + 0.5(−2)𝑘 𝑢(𝑘) 1
= [ 𝑘 𝑘 𝑘 𝑘 ][ ]
−𝛿(𝑘) + 2(−1) 𝑢(𝑘) − (−2) 𝑢(𝑘) (−1) 𝑢(𝑘) − (−2) 𝑢(𝑘) 2
1 1 1
𝑢(𝑘) − (−1)𝑘 𝑢(𝑘) + (−2)𝑘 𝑢(𝑘)
+ [6 2 3 ]
1 1 𝑘
2 𝑘
𝑢(𝑘) + (−1) 𝑢(𝑘) − (−2) 𝑢(𝑘)
6 2 3
1 1 1
2.5𝛿(𝑘) − 4(−1)𝑘 𝑢(𝑘) + 1.5(−2)𝑘 𝑢(𝑘)
𝑢(𝑘) − (−1)𝑘 𝑢(𝑘) + (−2)𝑘 𝑢(𝑘)
𝑥(𝑡) = [ ] + [6 2 3 ]
( ) ( ) 𝑘 ( ) (
−𝛿 𝑘 − 4 −1 𝑢 𝑘 − 3 −2 𝑢(𝑘) ) 𝑘 1 1 𝑘
2 𝑘
𝑢(𝑘) + (−1) 𝑢(𝑘) − (−2) 𝑢(𝑘)
6 2 3
−2𝑡
= [0.5 − 2.5𝑒 + 3𝑒 −𝑡 ]
−2𝑡
5𝑒 − 3𝑒 −𝑡
On the other hand, we can calculate the output y(k) based on the output equation
𝑥 (𝑘) −2𝑡
+ 3𝑒 −𝑡 ] = 0.5 + 12.5𝑒 −2𝑡 − 6𝑒 −𝑡
𝑦(𝑘) = [1 3] [ 1 ] = [1 3] [0.5 − 2.5𝑒
𝑥2 (𝑘) 5𝑒 −2𝑡 − 3𝑒 −𝑡
References:
[1] M. Sami Fadali, Antonio Visioli. Digital Control Engineering: Analysis and Design, Academic
Press (Elsevier), 3rd Edition, 2020
[2] Anastasia Veloni, Nikolaos Miridakis. Digital Control Systems: Theoretical Problems and
Simulation Tools, CRC Press, Taylor & Francis Group, 2018
[3] Katsuhiko Ogata. Discrete-Time Control Systems, 2nd ed. Prentice Hall, 1995.
[4] Nise, N. S. Control System Engineering, 6th ed. John Wiley & Sons Ltd., UK, 2011.
[5] Dorf, R. C. Modern Control Systems, 5th ed. Addison-Wesley, Reading, MA, 1989.