Hespanha Linearsystems Errata
Hespanha Linearsystems Errata
João P. Hespanha
February 8, 2017
Errata
1) In page 7, the MATLAB R command should read
sys_ss=ss(A,B,C,D,...
’InputName’, {’input1’, ’input2’,...},...
’OutputName’,{’output1’,’output2’,...},...
’StateName’, {’state1’, ’state2’,...});
2) In page 15 in Figure 2.3, the angle θ2 is incorrectly drawn, it should be drawn as follows:
m2
θ2
ℓ2
m1
ℓ1
θ1
Moreover, the matrix Mpqq and the vector Gpqq in Example 2.2 should be as follows:
„
m2 `22 ` 2m2 `1 `2 cos θ2 ` pm1 ` m2 q`12 m2 `22 ` m2 `1 `2 cos θ2
Mpqq –
m2 `1 `2 cos θ2 ` m2 `22 m2 `22
„
m2 g`2 cospθ1 ` θ2 q ` pm1 ` m2 qg`1 cos θ1
Gpqq – .
m2 g`2 cospθ1 ` θ2 q
4) In page 18, the first equation in Section 2.4.4 should read as follows:
x9 1 “ x2
´ ¯
x9 2 “ M ´1 px1 q ´ Bpx1 , x2 qx2 ´ Gpx1 q ` u .
„
q
5) In page 17 in Figure 2.5, the label y at the right should be replaced by .
q9
6) In page 28, the equation just above definition 3.2 should read
8
ÿ
ŷpzq “ Zryptqs – z ´t yptq, z P C.
t“0
9) In page 35 in the proof of Proposition 4.1, the second equation should read as follows:
1 1 1 1
Zn “ Zn´1 , Zn´1 “ Zn´2 , . . . , Z2 “ Z1 ñ Zk “ Z1 .
s s s sk´1
10) In page 38, the first command in MATLAB R Hint 17 should read
z=0;p=[-1,-3];k=2;
13) In page 56, Note 5, item 2, bullet 3: “... one 2 x 2 block and two 1 x 1 blocks ...” should read “one 2 x 2 block and
one 1 x 1 block.”
14) In page 56, the condition 3. in Theorem 7.2 is incorrect. It should read as follows:
Theorem 7.2. For an n ˆ n matrix A, the following three conditions are equivalent:
1. A is semisimple.
2. A has n linearly independent eigenvectors.
3. There is a nonzero polynomial without repeated roots that annihilates A; i.e., there is a nonzero polynomial ppsq
without repeated roots for which ppAq “ 0. 2
Note that condition 3 provides a simple procedure to check for diagonalizability. Since every polynomial that annihilates
A must have each eigenvalue of A as a root (perhaps with different multiplicities), one simply needs to compute all the
distinct eigenvalues λ1 , . . . , λk (k ď n) of A and then check if the polynomial ppsq “ ps ´ λ1 q ¨ ¨ ¨ ps ´ λk q annihilates
A.
15) In page 57, equation (7.1) should read
» fi
J1t 0 ¨¨¨ 0
—0 J2t ¨¨¨ 0 ffi
At “ P ´1
JP P ´1 JP ¨ ¨ ¨ P ´1 JP “ P ´1 J t P “ P ´1 — . .. ffi P,
— ffi
.. ..
– ..
looooooooooooooomooooooooooooooon
. . . fl
t times
0 0 ¨¨¨ J`t
16) In page 57, the following clarifying sentence should be added after the expression for Jit : “The formula above
presumes that 0! “ 1 and that any entries in Jit that would contain factorials of negative numbers should be set to
zero.”
17) In page 58, the first equation should read
8 k
ÿ t k
eAt – A .
k“0
k!
18) In page 64, item 3: “...this norm corresponds to the usual Euclidean norm v – ...” should read “...this norm
corresponds to the usual Euclidean norm ||v||2 :“ ...”
19) In page 65 in Definition 8.1, the condition for exponential stability should read
20) In page 66, the second inequality in the Attention! box below Theorem 8.1 should read
21) In page 69 in the proof of Theorem 8.2, the argument regarding how condition 4 implies condition 5, should consider
selecting Q “ I (instead of Q “ ´I as stated).
22) In page 70 at the end of the proof of Theorem 8.2, the definition of λ should read
λmin rQs
λ– .
λmax rPs
24) In page 72, in the last equation in Section 8.6 should read
26) In page 75, Theorem 8.6 should read “If the matrix A in the linearized system (8.13) has one or more eigenvalues
with strictly positive real part, then ...”
27) In page 76, the first note should read “This equilibrium point is x eq “ rπ 0s1 , ueq “ 0, yeq “ π, and therefore
δx – x ´ x eq “ x ´ rπ 0s1 , δu – u ´ ueq “ u, δy – y ´ yeq “ y ´ π.”
28) In page 76 and 77, squares are missing in the expression for the eigenvalues of A. Specifically, in page 76, it
should read as follows: “The eigenvalues of A are given by
c´
´ b ¯ g b b ¯2 g
detpλI ´ Aq “ λ λ ` ` “ 0 ô λ “ ´ ˘ ´ ,
m` 2 ` 2m` 2 2m` 2 `
and therefore the linearized system is exponentially stable, because
c´
b b ¯2 g
´ ˘ ´
2m` 2 2m` 2 `
has a negative real part”; and in page 77, it should read as follows: “The eigenvalues of A are given by
c´
´ b ¯ g b b ¯2 g
detpλI ´ Aq “ λ λ ` 2
´ “0 ô λ“´ 2
˘ ` ,
m` ` 2m` 2m` 2 `
and therefore the linearized system is unstable, because
c´
b b ¯2 g
´ ` ` ą 0.”
2m` 2 2m` 2 `
30) In page 83, the last equation before Theorem 9.2 should read
żt żt ż8
sup |ḡij pt ´ τq|dτ “ sup |ḡij pρq|dρ “ |ḡij pρq|dρ.
tě0 0 tě0 0 0
a1m1 t m1 ´1 eλ1 t
gij ptq “ L´1 ĝij psq “ a11 eλ1 t ` a12 t eλ1 t ` ¨ ¨ ¨ `
“ ‰
pm1 ´ 1q!
akmk t mk ´1 eλk t
` ¨ ¨ ¨ ` ak1 eλk t ` ak2 t eλk t ` ¨ ¨ ¨ ` .
pmk ´ 1q!
32) In page 85, the last equation should not have the term dτ.
33) In page 86, the equation in Exercise 9.1 should read
» fi » fi
´2 0 0 1 “ ‰
x9 “ – 0 1 0 fl x ` – 0 fl u, y“ 1 1 0 x ` u.
0 0 ´1 ´1
34) In page 89, the two equations for JLQR should read
ż8
JLQR – x 1 C 1 QC x ` u1 Ru dt
0
ż8
` ˘
“ H xp¨q; up¨q ` x 1 C 1 QC x ` u1 Ru ` pAx ` Buq1 Px ` x 1 PpAx ` Buq dt
ż08
` ˘
“ H xp¨q; up¨q ` x 1 pA1 P ` PA ` C 1 QC qx ` u1 Ru ` 2u1 B 1 Px dt,
0
and
ż8
` ˘
JLQR “ H xp¨q; up¨q ` x 1 pA1 P ` PA ` C 1 QC ´ PBR ´1 B 1 Pqx ` pu1 ` x 1 K 1 qRpu ` K xq dt.
0
35) In page 90, the closed-loop equation below (10.3) should read
x9 “ Ax ´ BK x “ pA ´ BR ´1 B 1 Pqx.
36) In page 96, the sentence just above equation (11.2) should read “Similarly, determining the controllable subspace
amounts to finding for which vectors x0 P Rn the equation ...”
37) In page 99, the last equation should read
+
dim ker W 1 ` dimpker W 1 qK “ m
ñ dimpker W 1 qK “ dim Im W 1 “ rank W “ dim Im W
dim ker W 1 ` dim Im W 1 “ m
39) in page 102, Theorem 11.4, item 2: where it reads “when x1 P Crt0 , t1 s, ...” it should read “when x0 P Crt0 , t1 s, ...”
40) In page 112, the second to last equation should read
B 1 x, B 1 A1 x, . . . , B 1 pA1 qn´1 x,
42) In page 114, the last sentence of the paragraph that includes equation (12.8) should read “We conclude that every
eigenvector of A1 is not in the kernel of B 1 , which implies controllability by the eigenvector test.”
43) In page 115, the last equation should read
44) In page 120, the third sentence in the proof of Theorem 13.2 should read “Since the number of nonzero rows of C̄
is exactly n̄, all these rows must be linearly independent.”
45) In page 121, the last equation should read
„ „
“ ‰ psI ´ Ac q´1 ˆ Bc
T psq “ Cc Cu “ Cc psI ´ Ac q´1 Bc ` D.
0 psI ´ Au q´1 0
46) In page 123, equation (14.1) should read
„ „ „ „
x9 c {xc` Ac A12 xc B
“ ` c u, xc P Rn̄ , xu P Rn´n̄ ,
x9 u {xu` 0 Au xu 0
„
“ ‰ xc
y “ Cc Cu ` Du, u P Rk , y P Rm ,
xu
where n̄ denotes the dimension of the controllable subspace C of the original system.
47) In page 126, the second equation in the proof of Theorem 14.3 should read
48) In page 127, the three-line equation in the middle of the page should read
ĀP̄`P̄ Ā1 ´ B̄ B̄ 1
„ „ „ „ „
Ac A12 Pc 0 P 0 Ac1 0 B “
` c ´ c Bc1
‰
“ 1 0
0 Au 0 ρPu 0 ρPu A12 Au1 0
„
Qc ´ρA12 Pu
“´ 1
´ρPu A12 ρQu
9 ` “ Ax ` Bu,
x{x x P Rn , u P Rk (AB-CLTI)
is controllable. Given any set of n complex numbers tλ1 , λ2 , . . . , λn u in which complex values appear on conjugate pairs,
there exists a state feedback matrix K P Rkˆn such that the closed-loop system x{x 9 ` “ pA ´ BK qx has eigenvalues
equal to the λi . 2
Note the requirement that the eigenvalues must appear in complex conjugate pairs to get a real-valued matrix K .
51) In page 142, the two equations for the state given in Theorem 15.4 should read
tÿ
1 ´1
and
tÿ
1 ´1
52) In pages 142–143, Section 15.8, the word “controllable” should be throughout replaced by “reachable” and vice-
versa. Additionally, the controllability gramians WC and W̄C should be replaced by the reachability gramians WR and
W̄R .
53) In page 143, equation (15.7) should read
54) In page 145, the last equation of Section 15.9 should read
8
ÿ
W “ pA1 qτ C 1 C Aτ “ lim WO pt0 , t1 q.
t1 ´t0 Ñ8
τ“0
The exercise still makes sense with a u in the output equation, but it is much less interesting.
„
B
56) In page 149, equation (16.2), “ Bo Bu “ T ´1 B” should be replaced by “ o “ T ´1 B.”
“ ‰
Bu
57) In page 152, equation (16.4a) should read
„ „ „ „
x9 o {xo` Ao 0 xo B
“ ` o u, xo P Rn´n̄ , xu P Rn̄ ,
x9 u {xu` A21 Au xu Bu
„
“ ‰ xo
y “ Co 0 ` Du, u P Rk , y P Rm ,
xu
where n̄ denotes the dimension of the unobservable subspace UO of the original system.
58) In page 152, the definition for detectability should read
Definition 16.1 (Detectable system). The pair pA, C q is detectable if it is algebraically equivalent to a system in the
standard form for unobservable systems (16.4) with n̄ “ 0 (i.e., Au nonexistent) or with Au a stability matrix.
Note the requirement that the eigenvalues must appear in complex conjugate pairs to get a real-valued matrix L.
60) In page 155, equation (16.10) should read
„ ` „ „
x{x
9 A ´ BK ´BK x
“ .
9 `
e{e 0 A ´ LC e
The exercise still makes sense with a u in the output equation, but it is much less interesting.
62) In page 160, the last sentence of Section 17.2 should read as follows: “But since C̄ has only n̄ ă n rows, its rank
must be lower than n...”
63) In page 162, the equation below (17.13) should read
# ř
´ ni“1 αi xi “ λx1
Ax “ λx ô
xi “ λxi`1 , i P t1, 2, . . . , n ´ 1u.
64) In page 169, the third sentence after equation (18.1) should read as follows: “We recall that the number of roots
of dpsq (i.e., the number of poles) is equal to the dimension of a minimal realization for ĝpsq.”
65) In page 171, the last sentence in the proof of Lemma 18.1 should read as follows: ”However, at the roots of Dr psq,
all r ˆ r submatrices are singular and therefore have linearly dependent rows and columns.”
66) In page 184, the second section of Section 19.6 should read as follows: “Since Lpsq and Rpsq are unimodular, Ĝpsq
has an inverse if and only if SMĜ psq is invertible, which happens only when m “ r.”
67) In page 185, the last equation should read
q̂psq k
ĉpsq “ ĝpsq´1 “ ĝpsq´1 .
1 ´ q̂psq s
Acknowledgements
I would like to thank several UCSB students (including Cenk Oguz Saglam, John Simpson-Porco, and Justin Pearson),
Prof. Maurice Heemels, Prof. Valeriu Prepelita, Prof. Emre Tuna, Prof. Bogdan Udrea, and Prof. Onur Cihan for helping
me to find and correct several typos in the book.