You are on page 1of 17

State Transition Matrix

Discretization of Continuous Time Systems

Module 04
More on Linear Systems
Ahmad F. Taha

EE 5143: Linear Systems and Control


Email: ahmad.taha@utsa.edu
Webpage: http://engineering.utsa.edu/taha

September 22, 2016

Ahmad F. Taha

Module 04 More on Linear Systems

1 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Introduction to STM
For the linear autonomous system
x (t) = Ax (t), x (t0 ) = x0 , t 0
the state solution is

x (t) = e A(tt0 ) x0

Define the state transition matrix (STM):


(t, t0 ) = e A(tt0 )
STM ((t, t0 )) propagates an initial state along the LTI solution t
time forward
Note that:
(t1 + t2 , t0 ) = (t1 , t0 )(t2 , t0 ) = (t2 , t0 )(t1 , t0 ), t1 , t2 0
In general, for an linear time varying system,
x (t) = A(t)x (t) + B(t)u(t), x (t0 ) = x0 ,
the state solution is given in terms of the STM:
Z t
x (t) = (t, t0 )x (t0 ) +
(t, )B( )u( )d
Ahmad F. Taha

Module 04 More
t0on Linear Systems

2 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Properties of the STM

(t0 , t0 ) = (t, t) = I

1 (t1 , t2 ) = (t2 , t1 )

(t1 , t2 ) = (t1 , t0 )(t0 , t2 )

d
((t, t0 )) = A(t, t0 )
dt
Proofs:
4

Ahmad F. Taha

Module 04 More on Linear Systems

3 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Solution Space and System Modes


Solution space X of the LTI system x (t) = Ax (t) is the set of all
its solutions:
X := {x (t), t 0 | x = Ax }
X is a vector space
Dimension of X is n
System modes: A mode of the LTI system x = Ax is its solution
from an eigenvector of A:
x (t) = e At vi = e i t vi
This is one property of the matrix exponential (see Module 3)
The n (possibly repeated) modes form a basis of the solution space
X

Ahmad F. Taha

Module 04 More on Linear Systems

4 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Decomposition of State Solution


Any state solution for an autonomous system can be written as a
linear combination of system modes, assuming that A is
diagonalizable
This means that the solution space X can be formed by these linear
combinations
A = TDT 1 is assumed to be diagonalizable
Assume that we start from x0 = TT 1 x0 = x0
This means that we start from a linear combinations of
vi , i = 1, . . . , n since
x0 = TT 1 x0 =

n
X
i=1

(x0> wi )vi =

n
X

i vi

i=1

where wi s are the rows of the T 1 matrix (or the left evectors)
Given that construction, we can see that the solution x (t) is a LC of
the modes e i t vi
Ahmad F. Taha

Module 04 More on Linear Systems

5 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Changing Coordinates
Changing of coordinates of an LTI system: basically means were
scaling the coordinates in a different way
Assume that T Rnn is a nonsingular transformation matrix
Define x = T 1 x . Recall that x = Ax + Bu, then:
x + Bu

x = (T 1 AT )
x + T 1 Bu = A
with initial conditions x (0) = T 1 x (0)
Remember the diagonal canonical form? We can get to it if the
transformation T is the matrix containing the eigenvectors of A
What if the matrix is not diagonlizable? Well, we can still write
= J is the new state-space matrix
A = TJT 1 , which means that A
via the eigenvector transformation
In fact, you can show that if A = TJT 1 with j Jordan blocks (i.e.,
J = diag(J1 , J2 , . . . , Jj ), then after the transformation x = T 1 x ,
the LTI system becomes decoupled:
x 1 = J1 x1 , x 2 = J2 x2 , . . . , x j = Jj xj .
Ahmad F. Taha

Module 04 More on Linear Systems

6 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Intro to Discretization
We want to discretize and transform this dynamical system
x (t)

Ax (t) + Bu(t)

y (t)

Cx (t) + Du(t)

to
x (k + 1)

y (k)

(k) + Bu(k)

Ax
x (k) + Du(k)

Why do we need that?


Because if you want to use a computer to compute numerical
solutions to the ODE, youll have to give the computer a language it
understands
Also, many dynamical systems are naturally discrete, not continuous,
i.e., sampling doesnt happen continuously
Ahmad F. Taha

Module 04 More on Linear Systems

7 / 17

State Transition Matrix

Discretization of Continuous Time Systems

What Computers Understand

What is zero order hold? Its basically the model of the signal
reconstruction of the digital to analog converter (DAC):
uZOH (t) =

X
k=

Ahmad F. Taha


u(k) rect

t T /2 kT
T

Module 04 More on Linear Systems

8 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Discretization Errors

Ahmad F. Taha

Module 04 More on Linear Systems

9 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Discretization 1
1

Use the derivative rule:


x (t) = lim

T 0

x (t + T ) x (t)
T

You can use this approximation:


x (t + T ) x (t)
= Ax (t)+Bu(t) x (t+T ) = x (t)+ATx (t)+BTu(t)
T

Hence,
x (t + T ) = (I + AT )x (t) + BTu(t)

Now, if we compute x (t) and y (t) only at t = kT for k = 0, 1, . . . ,


then the dynamical system equation for the discretized, approximate
system is:
x ((k + 1)T )

(I + AT ) x (kT ) + |{z}
BT u(kt)
| {z }

y (kT )
Ahmad F. Taha

x (kT ) + Du(kT

C
)

Module 04 More on Linear Systems

10 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Discretization 2

The aforementioned discretization is a valid discretization for a


continuous time system
This method is based on forward Euler differentiation method
Easily computed by the computer, i.e., no need for matrix
exponentialsjust simple computations
While this discretization is the easiest, its the least accurate
Solution: a different discretization method

Ahmad F. Taha

Module 04 More on Linear Systems

11 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Another Discretization Method 1


Recall that if the input u(t) is generated by a computer then
followed by DAC, then u(t) will be piecewise constant:
u(t) = u(kT ) =: u(k)

for kT t (k+1)T , k = 0, 1, . . . , kf

Note that this input only changes values at discrete time instants
Recall the solution to the state-equation:
Z t
x (t) = e At x (0) +
e A(t ) Bu( )d
0

Setting t = KT in the previous equation, then we can write:


x (k) := x (kT ) = e AkT x (0) +

kT

e A(kT ) Bu( )d

Z
x (k+1) := x ((k+1)T ) = e A(k+1)T x (0)+

(k+1)T

e A((k+1)T ) Bu( )d

0
Ahmad F. Taha

Module 04 More on Linear Systems

12 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Another Discretization Method 2


x (k + 1) := x ((k + 1)T ) = e

A(k+1)T

(k+1)T

x (0) +

e A((k+1)T ) Bu( )d

Note that the above equation can be written as:


!
Z kT
AT
AkT
A(kT )
x (k + 1) = e
e
x (0) +
e
Bu( )d
0

(k+1)T

e A(kT +T ) Bu( )d

kT

Recall that were assuming that:


u(t) = u(kT ) =: u(k)

for kT t (k+1)T , k = 0, 1, . . . , kf

i.e., the input is constant between two sampling instances


Look at x (k) and let = kT + T , then:
!
Z T
AT
A
x (k + 1) = e x (k) +
e d Bu(k)
Ahmad F. Taha

0
Module 04 More on Linear Systems

13 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Another Discretization Method 3


x (k + 1) = e AT x (k) +

e A d Bu(k)

Hence, the discretized system with sampling time-period T can be


written as:
(k) + Bu(k)

Ax
x (k) + Du(k)

= C

x (k + 1)

y (k)
where
=e
A

AT

=
,B

= C, D
=D
d B, C

Note that there is no approximation in this solution


We only assumed that u(k) is piecewise constant between the two
sampling instances

Its easy to compute the new discretized SS matrices (besides B)


Ahmad F. Taha

Module 04 More on Linear Systems

14 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Another Discretization Method 4


you can simply evaluate the formula:
To compute B,
!
!
Z T
Z T
1
=
B
e A d B =
I + A + A2 2 + . . . d B
2
0
0
Which can be evaluated:


1 2
1 3 2

B = TI + T A + T A + . . . B
2
3


1 2 2 1 3 3
1
=A
TA + T A + T A + . . . B
2
3


1
1
= A1 I + TA + T 2 A2 + T 3 A3 + . . . I B
2
3
1
= A (A
I)B
B
This result is only valid for nonsingular A
This formula helps in avoiding infinite series
You can also use MATLABs c2d(A,B,...) command
Ahmad F. Taha

Module 04 More on Linear Systems

15 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Remarks

Theres plenty of other discretization methods in the literature


This question has no specific golden answer
It often depends on the properties of the system
Basically the sampling time period (how often your control is fixed
or changing)
The singularity of the A matrix also plays an important role

Ahmad F. Taha

Module 04 More on Linear Systems

16 / 17

State Transition Matrix

Discretization of Continuous Time Systems

Questions And Suggestions?

Thank You!

Ahmad F. Taha

Please visit
engineering.utsa.edu/taha
IFF you want to know more ,
Module 04 More on Linear Systems

17 / 17

You might also like