# Digital Signal Processing © Dr. Fred J.

Taylor, Professor
STATE_Determined_SYS - 1
Lesson Title: State Determined Systems

Lesson Number [17] / Lecture [19]

• How do state variables support the analysis of linear systems?
• What is a state transition matrix?
State Variable Model
The single-input single-output Nth order LTI system shown in Figure 1 can be modeled in terms
of a state 4-tuple [A, b, c, d] which defines an N
th
order state variable model:
State equation: ] [ ] [ ] 1 [ k u k k b Ax x + = + 1
Initial condition:
0
] 0 [ x x =

2
Output equation: ] [ ] [ ] [ k du k k
T
+ = x c y . 3
where x[k] is the state n-vector, u[k] is the input, y[k] is the output, A is an nxn state matrix, b is
an 1xn input vector, c is a 1xn output vector, and d is a scalar. At some sample index k=k
0
, the
next state can be computed to be:
] [ ] [ ] 1 [
0 0 0
k u k k b Ax x + = + , 4
At sample instant k=k
0
+1, the next state is given by:
]. 1 [ ] [ ] [ ] 1 + [ ] 1 [ ] 2 [
0 0 0
2
0 0 0
+ + + = + + = + k u k u k k u k k b Ab x A b Ax x 5
Continuing this pattern, at sample k=k
0
+n–1 the next state vector is given by:
]. 1 + [ ] 2 [ ] 1 + [ ] [ ] [ ] [
0 0 0
2
0
1
0 0
− + − + + + + + = +
− −
n k u n k u k u k u k n k
n n n
b Ab b A b A x A x L 6
Equation 6 consists of two parts that define the homogeneous and inhomogeneous solutions.
The homogeneous solution is driven only by the initial conditions(x[k
0
]), whereas the
inhomogeneous solution is forced by the input u[k]. Equation 6 can be rearranged and
expressed as:

=
− − −
+ =
1
1
0
0
0
] [ ] [ ] [
k
k i
i k k k
i u k k b A x A x . 7

Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 2
Upon substituting Equation 7 into the output equation (Equation 3), the generalized output of the
state determined system is:
|
|
¹
|

\
|
+ + = + =

=
− − −
1
1
0
0
0
] [ ] [ ] [ ] [ ] [ ] [
k
k i
i k T k k T T
k du k u k k du k k b A c x A c x c y . 8
For notational convenience, it shall be assumed that k
0
=0. The term Φ ΦΦ Φ[k]=A
k
, is called the state
transition matrix and is seen to influence both the homogenous and inhomogeneous solutions.
After simplification, Equation 8 can be recast as:
| | | | k u d i k k k
k
i
T T
[ 1 ] 0 [ ] [
1
0
|
¹
|

\
|
+ − − Φ + Φ =

=
b c x c y . 9
The state transition matrix can be computed using Cayley-Hamilton method, z-transform with
the later normally implemented using Leverrier’s algorithm. It is generally accepted, however,
that computing y[k] using time-domain convolution methods, as described in Equation 9, is
computationally intensive. Instead, transform-domain techniques are often championed.
Observe that the z-transform of Equations 1 and 3 are:
( ) ( ) ( )
( ) ( ) ( ) z dU z z
z U z zx z z
T
= =
+ = −
X c Y
b AX X
0
10
The homogenous response can be determined by setting U(z)=0 and solving for Y(z) in
Equation 10. This results in:
( )
( )
0 0
1
0 0
1
) ( ) (
; ) ( ) (
x c x A I c Y
x x A I X
z z z z
z z z z
T T
Φ = − =
Φ = − =

. 11
This can be seen to be consistent in form with the results given in Equation 9. The
inhomogeneous solution can be computed by setting x
0
=0 and solving for Y(z) using:
). ( ) ( ) ( ) (
) ( ) ( ) (
1
1
z dU z U z z Y
z U z z
T
+ − =
− =

b A I c
b A I X
12
The system’s transfer function is associated with the inhomogeneous solution of an at-rest
system, and is defined by H(z)=Y(z)/U(z). It therefore follows that:
d z z H
T
+ − =

b A I c
1
) ( ) ( . 13

A
b c
T
T
d
u[k]
Σ
x[k+1]
x[k]
y[k]
Σ
Figure 1: State Determined System
Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 3
Notice the similarity between the homogeneous solution (Equation 11) and the inhomogeneous
solution (Equation 13). The homogeneous response is defined in terms of the state transition
matrix ( )
1
) (

− = Φ A I z z z while the inhomogeneous solution is defined in terms of convolution
with a term having the form
1
) (

− A I z in the transform domain. Notice that
( ) z z z z z z Φ = − = −
− − − − 1 1 1 1
) ( ( ) ( A I A I or matrix transition matrix delayed by one sample in the
time domain.
Example: Transfer Function
An at-rest 2
nd
order linear time-invariant (LTI) system is assumed to be given by the state 4-
tuple (A, b, c, d):
1 ;
1
1
;
1
0
;
1 1
1 0
=

=

=

= d c b A .
Computing (zI–A)
–1
:
( )

− −
= −

z
z
z z
z
1
1 1
1
1
2
1
A I .
Using Equation 10, the transfer function can then be determined and it is:
| |
.
1
1
1
1
1
1
0
1
1 1
1 1
1
1
= ) ( ) (
2
2
2
2
1
− −
= +
− −
+
=
+

− −
+ − =

z z
z
z z
z
z
z
z z
d z z H
T
b A I c

Example: State Determined Systems
The response of a linear system, characterized by the state 4-tuple [A, b, c, d], is modeled as:
| | | | i bu k
k
i
i k

=
− −
=
1
0
1
A x
| | | | ] [
1
0
1
k du i bu k
k
i
i k T
+ =

=
− −
A c y
In the z-domain. Tthe solution can be described as:
( ) ) ( ) (
1
z U zI z b A X

− =
( ) ( ) ( ) ( ) ( ) ( ) z U z H z U d zI z dU z U zI z
T T
= + − = + − =
− −
b A c b A c Y
1 1
) ( ) ( ) (
Suppose a specific 2
nd
order system is given by:
| | 1 ;
0
11 . 0
;
1
0
;
1 11 . 0
1 0
=

=

=

= d c b A
The architecture associated with this manifestation [A,b,c,d] is shown in Figure 2.
Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 4

Figure 2: State induced architecture
The location of the system’s poles are defined by
∆(z)=det(zI-A)=det(

− −

1 11 . 0
1
z
z
)=z
2
-z-0.11=(z+0.1)(z-1.1)
Therefore the filter's poles are located at z=-0.1 and z=1.1. The system is therefore seen to be
unstable based on the unit circle criterion. Continuing, the state transition matrix denoted Φ(z) in
the z-domain, is given by:
( )
( ) ( )
( ) ( )
( )
( )( )

− +
= − =

Φ Φ
Φ Φ
= Φ

z
z
z z
z
A zI z
z z
z z
z
11 . 0
1 1
1 . 1 1 . 0 22
1
21
12 11

Using Heaviside's method to inverting each term (4 required), the state transition in the time-
domain is obtained for k≥0, and it is:
| |
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
| | I k A
k k k k
k k k k
k
=

= Φ

+ − + − −
+ − − + −
= Φ =
1 0
0 1
0 ;
1 . 1
12
11
1 . 0
12
1
1 . 1
12
1 . 1
1 . 0
12
1 . 1
1 . 1
12
10
1 . 0
12
10
1 . 1
12
1
1 . 0
12
11

The instability of the system can be immediately seen by the presence of the term (1.1)
k
.
Suppose the system is initially at-rest and the input to the at-rest system is u[k]=δ[k]. Then X(z)
= (zI-A)
-1
bU(z)= (zI-A)
-1
b and it follows that:
( ) ( )
( )( )
( )
( )( )
( )
( )
| |
| |
0
0
0
0
1
1
1
1 . 1 1 . 0
1
0
11 . 0
1 1
1 . 1 1 . 0
1
22
12
22
1
12
1 1
1
>
¦
¦
¹
¦
¦
´
¦
=

− Φ
− Φ

Φ
Φ
=

− +
=
=

− +
= − =

− −

k if
k if
k
k
z z
z z
z z z
z z
z
z
z z
b A zI z X
Z

For example, direct state computation at k=1 and 2, yields:
u[k]
b=1 Σ
x
2
[k+1] x
2
[k]
x
1
[k+1]
x
1
[k]
Σ
a
21
=0.11
y[k]
c
1
=0.11
d=1
Σ
a
22
=1
a
12
=1
T T
Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 5
| | | | | |

= + − = Φ
= + = Φ
=

= + = Φ
= + − = Φ
=

=
1 12 / 1 . 12 12 / 1 . 0 ] 1 [
1 12 / 11 12 / 1 ] 1 [
2 ;
1 12 / 11 12 / 1 ] 0 [
0 12 / 10 12 / 10 ] 0 [
1 ;
0
0
0
12
12
22
12
x x x ,…
The system's transfer function is given by:
( ) ( ) | |
( )( ) ( )( )
1
1 . 1 1 . 0
11 . 0
1
1
0
11 . 0
1 1
1 . 1 1 . 0
1
0 11 . 0
1
+
− +
= +

)
`
¹
¹
´
¦

− +
= + − =

z z z
z
z z
d b A zI c z H
T

There are times when an individual state, or a suite of states, need to be singled out for analysis
and observation. To isolate state x
2
[k] in the output y[k], at the exclusion of everything else, set
d=0 and c
T
=(0,1). The transfer function measured from input to output, which is defined as
y[k]=x
2
[k], is given by:
( ) ( ) | |
( )( ) ( )( ) 1 . 1 1 . 0
0
1
0
11 . 0
1 1
1 . 1 1 . 0
1
1 0
1
2
− +
= +

)
`
¹
¹
´
¦

− +
= + − =

=
z z
z
z
z
z z
d b A zI c z H
T
y x

To isolate x
1
, set d=0 and c
T
=(1,0). That is, the state x
1
is copied to the output y[k]. The
resulting transfer function is given by:
( ) ( ) | |
( )( ) ( )( ) 1 . 1 1 . 0
1
0
1
0
11 . 0
1 1
1 . 1 1 . 0
1
0 1
1
1
− +
= +

)
`
¹
¹
´
¦

− +
= + − =

=
z z z
z
z z
d b A zI c z H
T
y x

It can be seen that x
2
[k] is simply a copy of x
1
[k] delayed by one sample instance.
Change of Basis (Architecture)
The architecture of an at-rest digital filter is defined by the state determined 4-tupe S SS S=[A,b,c,d].
The filter’s transfer function:
( ) ( ) d b A I c H + − =
−1
z z
T
14
Suppose that the state vector x[k] is re-defined to be a new state vector | | k xˆ using the linear
transform:
] [ ] [ ˆ k x T k x
r
= 15
where T is a non-singular NxN matrix. This corresponds to a change of basis in the context of
linear algebra. In the context of a digital filter, however, the linear transformation T corresponds
to a re-defining of the filter’s architecture. That is, the internal wiring diagram has been changed.
Applying this transform to a state determined system defined by Equation 14 will result in
| |
| |
| | k u b k x A
k u Tb k x TAT
k u Tb k x TA
k x T k x
r
r
r r
r
ˆ
] [
ˆ
ˆ
] [ ˆ
] [
] 1 [ = ] 1 + [ ˆ
1 -
+ =
+ =
+ =
+
{state equation} 16
Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 6
] [
ˆ
] [ ˆ ˆ
=
] [ ] [ ˆ =
] [ ] [ ] [
1 -
k u d k x c
k u d k x T c
k u d k x c k y
T
T
T
r
r
r r r
+
+
+ =
{output equation} 17
where
d d
T c c T c c
b T b Tb b
T A T A TAT A
T T T T
=
ˆ
ˆ
= ;
ˆ
ˆ
;
ˆ
ˆ
;
ˆ
1 -
1 -
1 - 1
=
= =
= =

18
Therefore the non-singular transform T defines the new architecture defined by the new state
four-tuple ]
ˆ
ˆ
ˆ ˆ
[
ˆ
d , c , b , A = S . Recalling the matrix identity:
(XYZ)
-1
=Z
-1
X
-1
Y
-1
19
it follows that the transfer function of the new system is given by:
( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
( ) ( ) z H z
T T z T T T T z T T
T T T z T z z
T
T T
T T
= + − =
= + − = + − =
= + − = + − =

− −

− −

− −

− −

d b A I c
d b A I c d b A I c
d b A I c d b A I c H
1
1 1
1
1 1
1
1 1
1
1 1
1
ˆ
ˆ ˆ ˆ
ˆ
ˆ
20
That is, the similarly transformation leaves the input-output system behavior unaffected but does
change the architecture specification of the system.
Example: Matlab State Variable Support
Several MATLAB functions can be used to perform state determined mappings, converting
transfer functions of the form:
( )

=

=

=
N
i
i
i N
N
i
i
i N
z a
z b
z H
0
0

or
( )
( )
( )

=
=

=
N
i
i
N
i
i
p z
z z
K z H
1
1

to and from a state 4-tuple (A, b, c, d). The basic state-determined functions are presented
below.
SS2TF State-space to transfer function conversion.
[NUM,DEN] = SS2TF(A,B,C,D,iu) calculates the transfer function:

NUM(s) -1
Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 7
H(s) = -------- = C(sI-A) B + D {replace s with z}
DEN(s)
of the system:

dx/dt = Ax + Bu
y = Cx + Du

from the iu'th input. Vector DEN contains the coefficients of the
denominator in descending powers of s. The numerator coefficients
are returned in matrix NUM with as many rows as there are
outputs y.

SS2ZP State-space to zero-pole conversion.
[Z,P,K] = SS2ZP(A,B,C,D,IU) calculates the transfer function in
factored form:

-1 (s-z1)(s-z2)...(s-zn)
H(s) = C(sI-A) B + D = k --------------------- {replace s with z}
(s-p1)(s-p2)...(s-pn)
of the system:

dx/dt = Ax + Bu
y = Cx + Du

from the single input IU. The vector P contains the pole
locations of the denominator of the transfer function. The
numerator zeros are returned in the columns of matrix Z with as
many columns as there are outputs y. The gains for each numerator
transfer function are returned in column vector K.
As a test, consider the 2
nd
order state-determined system:
1 ;
1
1
;
1
0
:
1 1
1 0
=

=

=

= d c b A
The state 4-tuple [A, b, c, d] defines the filter’s transfer function to be given by:
| |
1
1
1
0
1
1
1 1
1 1 ) ( ) (
2
2
2
1
− −
= +

− −

= + − =

z z
z
z z
z
z
d z z H
T
b A I c
Using MATLAB, the following results are obtained.
» A=[0 1; 1 1]; b=[0 ; 1]; ct=[1 , 1]; d=1;
» [NUM, DEN]=SS2TF(A,b,ct,d,1) ( )
1
2
2
− −
=
z z
z
z H
NUM =
1 0 0
DEN =
1.0000 -1.0000 -1.0000
» [Z,P,K]=SS2ZP(A,b,ct,d,1)
Z =
Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 8
0
0
P =
-0.6180
1.6180
K =
1 ( )
( )( )
( )( ) 618 . 1 618 . 0
0 0
− +
− −
=
z z
z z
z H

Mapping to a state variable form is accomplished using the functions shown below.

TF2SS Transfer function to state-space conversion.
[A,B,C,D] = TF2SS(NUM,DEN) calculates the state-space
representation:

dx/dt = Ax + Bu
y = Cx + Du

of the system:

NUM(s)
H(s) = -------- {replace s with z}
DEN(s)

from a single input. Vector DEN must contain the coefficients of
the denominator in descending powers of s. Matrix NUM must
contain the numerator coefficients with as many rows as there are
outputs y. The A,B,C,D matrices are returned in controller
canonical form. This calculation also works for discrete systems.
To avoid confusion when using this function with discrete systems,
always use a numerator polynomial that has been padded with zeros
to make it the same length as the denominator. See the User's
guide for more details.

ZP2SS Zero-pole to state-space conversion.
[A,B,C,D] = ZP2SS(Z,P,K) calculates a state-space representation:

dx/dt = Ax + Bu
y = Cx + Du

for a system given a set of pole locations in column vector P,
a matrix Z with the zero locations in as many columns as there are
outputs, and the gains for each numerator transfer function in
vector K. The A,B,C,D matrices are returned in block diagonal
form.

This function handles SIMO systems if the Control Toolbox is
present and SISO systems if only the Signal Processing Toolbox
is installed.

Digital Signal Processing © Dr. Fred J. Taylor, Professor
STATE_Determined_SYS - 9
As a test, re-consider the previous example problem.
» NUM=[1 0 0]; DEN=[1 -1 -1];
» [A,B,C,D]=TF2SS(NUM,DEN) 1 ;
1
1
;
1
0
:
1 1
1 0
=

=

=

= d c b A
A =
1 1
1 0
B =
1
0
C =
1 1
D =
1

» Z=[0 0]; P=[-0.618 1.618]; K=1;
» [A,B,C,D]=ZP2SS(Z,P,K) 1 ;
1
1
;
1
0
:
1 1
1 0
=

=

=

= d c b A

A =
1.0000 1.0000
1.0000 0
B =
1
0
C =
1.0000 1.0000
D =
1

Challenge 17
An LTI system has a state 4-tuple given by:
1 ;
1
1
;
1
0
:
1 1
1 0
=

=

=

= d c b A
Q. What physical effect would a change of a basis on a system defined by:

=
0 1
1 0
T
Would have on the system topology (architecture).
What is the new state 4-tuple?

11 This can be seen to be consistent in form with the results given in Equation 9. 13 STATE_Determined_SYS . that computing y[k] using time-domain convolution methods. Equation 8 can be recast as:  k −1  y[k ] = cT Φ[k ]x[0] +  cT ∑ Φ[k − i − 1]b+ d u[k . The inhomogeneous solution can be computed by setting x0=0 and solving for Y(z) using: X( z ) = ( zI − A )−1bU ( z ) Y ( z ) = cT ( zI − A )−1bU ( z ) + dU ( z ). 12 The system’s transfer function is associated with the inhomogeneous solution of an at-rest system. is called the state transition matrix and is seen to influence both the homogenous and inhomogeneous solutions.  i =0  9 The state transition matrix can be computed using Cayley-Hamilton method. Instead. transform-domain techniques are often championed.Digital Signal Processing  Dr. Y( z ) = cT z( zI − A )−1 x 0 = cT Φ (z )x 0 . It therefore follows that: H ( z ) = cT ( zI − A )−1b + d .2 . the generalized output of the state determined system is: d u[k] b Σ x[k+1] T A Figure 1: State Determined System k −1   y[k ] = cT x[k ] + du[k ] =  cT A k − k 0 x[k0 ] + cT ∑ A k − i −1bu[k ]+ du [k ]  . It is generally accepted. After simplification.   i =k0   x[k] cT Σ y[k] 8 For notational convenience. Fred J. it shall be assumed that k0=0. This results in: X( z ) = z( zI − A )−1 x 0 = Φ (z )x 0 . Taylor. Observe that the z-transform of Equations 1 and 3 are: zX (z ) − zx0 = AX(z ) + bU (z ) Y (z ) = cT X (z ) = dU (z ) 10 The homogenous response can be determined by setting U(z)=0 and solving for Y(z) in Equation 10. Professor Upon substituting Equation 7 into the output equation (Equation 3). as described in Equation 9. and is defined by H(z)=Y(z)/U(z). The term Φ[k]=Ak. z-transform with the later normally implemented using Leverrier’s algorithm. however. is computationally intensive.

b. Taylor. Notice that ( zI − A )−1 = z −1( z( zI − A )−1 = z −1Φ (z ) or matrix transition matrix delayed by one sample in the time domain. b.11 1 0 0. d = 1 . Professor Notice the similarity between the homogeneous solution (Equation 11) and the inhomogeneous solution (Equation 13). d]. characterized by the state 4-tuple [A. c =  .Digital Signal Processing  Dr. the transfer function can then be determined and it is: H ( z ) = cT ( zI − A )−1b + d = = 1 [1 1]z − 1 1 0 + 1    z   1 z − z −1  1 2 z +1 z2 +1= 2 . Fred J.c. c.  1 1  1 1 Computing (zI–A)–1: z − 1 1 1  . STATE_Determined_SYS . Example: Transfer Function An at-rest 2nd order linear time-invariant (LTI) system is assumed to be given by the state 4tuple (A.c =   1  0  ( ) The architecture associated with this manifestation [A.b. d): 0 1 0 1 A= . Tthe solution can be described as: X (z ) = ( zI − A )−1bU ( z ) Y (z ) = cT ( zI − A )−1bU ( z ) + dU (z ) = cT ( zI − A )−1b + d U (z ) = H (z )U (z ) Suppose a specific 2nd order system is given by:  0 1 A= . The homogeneous response is defined in terms of the state transition matrix Φ (z ) = z( zI − A )−1 while the inhomogeneous solution is defined in terms of convolution with a term having the form ( zI − A )−1 in the transform domain.11  . d = [1]  . z z − z − 1 1 2 (zI − A )−1 = Using Equation 10.d] is shown in Figure 2. b =  .b = 0. z2 − z − 1 z − z −1 Example: State Determined Systems The response of a linear system.3 . c. is modeled as: x[k ] = k −1 i =0 ∑ A k − i −1bu [i ] k −1 i =0 y[k ] = cT ∑ A k − i −1bu [i ] + du [k ] In the z-domain.

1) z  z Φ 22 (z )   if k = 0  0   X (z ) = (zI − A ) b = −1 ( ) For example. yields: STATE_Determined_SYS .1 and z=1.1)k   1 0 12 12  .1 − (− 0. is given by:  Φ (z ) Φ12 (z )  z − 1 1 z −1 Φ (z ) =  11  = z(zI − A ) = (z + 0. the state transition in the timedomain is obtained for k≥0.11 z   1      Φ12 [k − 1]  −1 −1  1  z Φ12 (z ) Z  Φ 22 [k − 1] zz  if k > 0 = =  −1 ↔     0 (z + 0.1) + 12 (1. Fred J.1)(z − 1.1)k + 11 (1.1)k  12 12  The instability of the system can be immediately seen by the presence of the term (1.1 (1.1) 0.1)k + 1.1)k. The system is therefore seen to be unstable based on the unit circle criterion.1) A k = Φ[k ] =  1 . and it is: 1  11 k k  12 (− 0.11 z    Φ 21 (z ) Φ 22(z ) Using Heaviside's method to inverting each term (4 required). direct state computation at k=1 and 2.1)(z-1. Continuing.1) − 0.1)(z − 1. Then X(z) = (zI-A)-1bU(z)= (zI-A)-1b and it follows that:  z − 1 1 0 1 = (z + 0.11=(z+0.1.1)k + 10 (1.11 z − 1  Therefore the filter's poles are located at z=-0. the state transition matrix denoted Φ(z) in the z-domain. Φ[0] =   =I 1 0 1 (− 0.11 y[k] T b=1 u[k] Figure 2: State induced architecture The location of the system’s poles are defined by ∆(z)=det(zI-A)=det(  z −1  2  )=z -z-0.11 x1[k] Σ c1=0.1) 0. Suppose the system is initially at-rest and the input to the at-rest system is u[k]=δ[k]. Professor d=1 Σ x2[k+1] T a12=1 x1[k+1] x2[k] a22=1 Σ a21=0.4 . Taylor.1)k 12  12 − 10 (− 0.Digital Signal Processing  Dr.1)(z − 1.

set d=0 and cT =(1. x[2] =   . the state x1 is copied to the output y[k].0).1)(z − 1. That is.1) + 1  (z + 0. at the exclusion of everything else. Applying this transform to a state determined system defined by Equation 14 will result in r ˆ x [k + 1] = Tx [k + 1] r r = TAx [k ] + Tbu [k ] {state equation} 16 r ˆ = TAT -1x [k ] + Tbu [k ] ˆˆ ˆr = Ax [k ] + bu [k ] STATE_Determined_SYS .1).11 0]      + 1 = (z + 0.1/ 12 = 1 The system's transfer function is given by:   z − 1 1  0  1 0.Digital Signal Processing  Dr. however.d].1/ 12 + 12. set d=0 and cT =(0.1) 0.11 z    1 It can be seen that x2[k] is simply a copy of x1[k] delayed by one sample instance.11 z  1 (z + 0. In the context of a digital filter. Fred J. Taylor.5 .…  Φ 22 [0] = 1/ 12 + 11/ 12 = 1  Φ12 [1] = −0. To isolate state x2[k] in the output y[k]. The filter’s transfer function: H(z ) = cT (zI − A ) b + d −1 14 ˆ Suppose that the state vector x[k] is re-defined to be a new state vector x [k ] using the linear transform: r ˆ x [k ] = Tx [k ] 15 where T is a non-singular NxN matrix. the internal wiring diagram has been changed.b. is given by:   z − 1 1 0 1 z −1 H x 2 = y (z ) = c T (zI − A ) b + d = [0 1] +0= (z + 0. need to be singled out for analysis and observation.1)(z − 1. or a suite of states. That is. The transfer function measured from input to output.1)(z − 1.11 z    1 There are times when an individual state.11 −1 H (z ) = c T (zI − A ) b + d = [0.c.1)(z − 1.1)      To isolate x1.1)  (z + 0. which is defined as y[k]=x2[k].1)(z − 1. The resulting transfer function is given by:   z − 1 1  0 1 1 −1 H x1 = y (z ) = c T (zI − A ) b + d = [1 0]      + 0 = (z + 0. x[1] = 0 Φ12 [0] = −10 / 12 + 10 / 12 = 0  Φ12 [1] = 1/ 12 + 11/ 12 = 1   .1)  0. This corresponds to a change of basis in the context of linear algebra. Change of Basis (Architecture) The architecture of an at-rest digital filter is defined by the state determined 4-tupe S=[A. Professor 0 x[0] =  . the linear transformation T corresponds to a re-defining of the filter’s architecture.1)(z − 1.1) 0.

C. SS2TF State-space to transfer function conversion. d). Example: Matlab State Variable Support Several MATLAB functions can be used to perform state determined mappings. b = T -1b ˆ ˆ cT = cT T -1.6 . Taylor.d ] . converting transfer functions of the form: H (z ) = i =0 N i =0 ∑ bN − i z i N ∑ aN − i z i or H (z ) = K ∏ (z − z ) i N ∏ (z − p ) i i =1 i =1 N to and from a state 4-tuple (A. Fred J. Professor r r r y [ k ] = c T x [ k ] + du [ k ] r ˆ = cT T -1x[k ] + du [k ] {output equation} ˆr ˆ ˆ = c T x [ k ] + du [ k ] where ˆ ˆ A = TAT −1.DEN] = SS2TF(A. b. c.D.Digital Signal Processing  Dr. A = T -1AT ˆ ˆ b = Tb.b. cT = cT T ˆ d =d 17 18 Therefore the non-singular transform T defines the new architecture defined by the new state ˆ ˆ ˆ ˆ ˆ four-tuple S=[ A. [NUM.c.B. The basic state-determined functions are presented below. the similarly transformation leaves the input-output system behavior unaffected but does change the architecture specification of the system. Recalling the matrix identity: (XYZ)-1=Z-1X-1Y-1 it follows that the transfer function of the new system is given by: −1 ˆ ˆ −1 ˆ ˆ ˆ H(z ) = cT zI − A b + d = cTT −1 zI − TAT −1 Tb + d = 19 ˆ = cT T −1 T (zI − A )T T −1 ( ( ) −1 −1 ) ( Tb + d = cTT −1 T ( ) ) − 1 −1 (zI − A )−1(T )−1Tb + d = 20 = c (zI − A ) b + d = H (z ) That is.iu) calculates the transfer function: NUM(s) -1 STATE_Determined_SYS .

Digital Signal Processing  Dr. 1 1].b.1) NUM = 1 0 0 DEN = 1. c =  . Vector DEN contains the coefficients of the denominator in descending powers of s. Taylor.C. Professor H(s) = -------. d] defines the filter’s transfer function to be given by: z − 1 1   1 z  0 z2 H ( z ) = cT ( zI − A )−1b + d = [1 1]  2 +1= 2   z − z − 1  1 z − z −1 Using MATLAB..0000 -1. » A=[0 1. b.(s-pn) {replace s with z} 0 1 0 1 A=  : b =  . SS2ZP State-space to zero-pole conversion. The numerator coefficients are returned in matrix NUM with as many rows as there are outputs y.ct.D.IU) calculates the transfer function in factored form: -1 H(s) = C(sI-A) B + D = of the system: dx/dt = Ax + Bu y = Cx + Du from the single input IU. DEN]=SS2TF(A..B.b. consider the 2nd order state-determined system: (s-z1)(s-z2).d.0000 -1.K] = SS2ZP(A. The gains for each numerator transfer function are returned in column vector K. the following results are obtained.d. 1]. The vector P contains the pole locations of the denominator of the transfer function.K]=SS2ZP(A. d = 1  1 1  1 1 The state 4-tuple [A. ct=[1 . b=[0 . » [NUM. [Z.(s-zn) k --------------------(s-p1)(s-p2). c.= C(sI-A) B + D DEN(s) of the system: dx/dt = Ax + Bu y = Cx + Du {replace s with z} from the iu'th input.. 1]. d=1..ct.0000 » [Z.1) Z = H (z ) = z2 z2 − z − 1 STATE_Determined_SYS .7 . The numerator zeros are returned in the columns of matrix Z with as many columns as there are outputs y. Fred J.P. As a test.P.

C. TF2SS Transfer function to state-space conversion.C.D matrices are returned in block diagonal form. Fred J.P.C. Matrix NUM must contain the numerator coefficients with as many rows as there are outputs y.K) calculates a state-space representation: dx/dt = Ax + Bu y = Cx + Du for a system given a set of pole locations in column vector P.6180 1. The A. Vector DEN must contain the coefficients of the denominator in descending powers of s.8 .B.B. always use a numerator polynomial that has been padded with zeros to make it the same length as the denominator.B.D] = ZP2SS(Z. This function handles SIMO systems if the Control Toolbox is present and SISO systems if only the Signal Processing Toolbox is installed. [A. STATE_Determined_SYS .D matrices are returned in controller canonical form. ZP2SS Zero-pole to state-space conversion.618 )(z − 1. Professor 0 0 P = -0. [A. and the gains for each numerator transfer function in vector K. Taylor. a matrix Z with the zero locations in as many columns as there are outputs.6180 K = 1 H (z ) = (z − 0)(z − 0) (z + 0.618 ) Mapping to a state variable form is accomplished using the functions shown below. To avoid confusion when using this function with discrete systems. See the User's guide for more details.DEN) calculates the state-space representation: dx/dt = Ax + Bu y = Cx + Du of the system: NUM(s) H(s) = -------DEN(s) {replace s with z} from a single input.B.Digital Signal Processing  Dr. The A. This calculation also works for discrete systems.C.D] = TF2SS(NUM.

d = 1  1 1  1 1 Q. re-consider the previous example problem.B.0000 1. » NUM=[1 0 0]. What is the new state 4-tuple? STATE_Determined_SYS . K=1.D]=ZP2SS(Z.K) A = 1. d = 1  1 1  1 1 1 0 1 Challenge 17 An LTI system has a state 4-tuple given by: 0 1 0 1 A=  : b =  . c =  . Professor As a test.C. What physical effect would a change of a basis on a system defined by: 0 1 T =   1 0 Would have on the system topology (architecture).0000 D = 1 1. d = 1  1 1  1 1 A = 1 1 B = 1 0 C = 1 D = 1 » Z=[0 0].9 . Taylor.B. c =  . P=[-0.Digital Signal Processing  Dr.618 1. 0 1 0 1 » [A. c =  .P.618].0000 0 0 1 0 1 A=  : b =  .DEN) A =   : b =  . DEN=[1 -1 -1].0000 B = 1 0 C = 1.C. Fred J.D]=TF2SS(NUM.0000 1. » [A.