![Page 1: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/1.jpg)
Dynamical Systems Analysis II:Evaluating Stability, Eigenvalues
By Peter Woolf ([email protected])University of Michigan
Michigan Chemical Process Dynamics and Controls Open Textbook
version 1.0
Creative commons
![Page 2: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/2.jpg)
Problem: Given a large and complex system of ODEs describing the dynamics and control of your process, you want to know:
(1)Where will it go?
(2)What will it do?
Is there anything fundamental you can say about it?
E.g. With my control architecture, this process will always ________.
Solution: Stability Analysis
Steady state from last lecture.
Topic for today!
![Page 3: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/3.jpg)
Exponential increase Increase w/ oscillation
Stable oscillation
Periodic solution Non-periodic solution(chaotic)
Only possible for nonlinear systems
Decay w/ oscillationExponential decay
What will your system do?
![Page 4: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/4.jpg)
How can we know where the system will go?
Possible approaches:
1. Simulate system and observe
Disadvantages:• Can’t provide guaranteed behavior, just samples of possible trajectories.• Requires simulations starting from many points• Assumes we have all variables defined, thus hard to use to design controllers.
Advantages:• Works for any system you can simulate• Intuitive--you see the results
![Page 5: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/5.jpg)
How can we know where the system will go?
Possible approaches:
1. Simulate system and observe
2. Stability Analysis (this class)
Disadvantages:• Only works for linear models• Linear approximations of nonlinear models break down away from the point of linearization
Advantages:• Provides strong guarantees for linear systems• General
![Page 6: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/6.jpg)
€
dA
dt= 3A − A2 − AB
dB
dt= 2B − AB − 2B2
Nonlinear modelLinear approximation at A=0, B=0
JacobianOr in a different format
€
dA
dt= 3A
dB
dt= 2B
From last class…
€
′ A
′ B
⎡
⎣ ⎢
⎤
⎦ ⎥=
3 0
0 2
⎡
⎣ ⎢
⎤
⎦ ⎥A
B
⎡
⎣ ⎢
⎤
⎦ ⎥+
0
0
⎡
⎣ ⎢
⎤
⎦ ⎥
Intuitively, what will the linear system do if A is perturbed slightly from 0?
€
dA
dt= 3(0 + Δ) Increase in A above 0
yields a positive derivative
Increase in A
Increase in slope of A
Exponential increase
![Page 7: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/7.jpg)
But what if our model is more complex?
€
′ A
′ B
⎡
⎣ ⎢
⎤
⎦ ⎥=
3 −2
2 −2
⎡
⎣ ⎢
⎤
⎦ ⎥A
B
⎡
⎣ ⎢
⎤
⎦ ⎥+
3
4
⎡
⎣ ⎢
⎤
⎦ ⎥
E.g. (note: example below is made up)Or in a different format
€
dA
dt= 3A − 2B + 3
dB
dt= 2A − 2B + 4
What will happen if A or B are increased slightly from the steady state value of A=1, B=3?
Result: increase A, A and B increase!
Result: increase B, A and B decrease!
€
dA
dt= 3(1+ Δ) − 2(3) + 3 = +3Δ
dB
dt= 2(1+ Δ) − 2(3) + 4 = +2Δ
Increase A by :
€
dA
dt= 3(1) − 2(3+ Δ) + 3 = −2Δ
dB
dt= 2(1) − 2(3+ Δ) + 4 = −2Δ
Increase B by :
![Page 8: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/8.jpg)
Observations:1. It is easy to predict where a linear system will go if the
variables are decoupled
2. Coupling between variables makes it harder to predict what will happen
3. Coupling is determined by the Jacobian
€
dA
dt= 3A
dB
dt= 2B
A only influences A, B only influences B.-> Variables are decoupled
€
dA
dt= 3A − 2B + 3
dB
dt= 2A − 2B + 4
Changes in A influence changes in A and B. Changes in B influence changes in A and B.--> Variables are coupled
![Page 9: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/9.jpg)
Is it possible to change a coupled system to a decoupled one?
€
′ A
′ B
⎡
⎣ ⎢
⎤
⎦ ⎥=
k11 k12
k21 k22
⎡
⎣ ⎢
⎤
⎦ ⎥A
B
⎡
⎣ ⎢
⎤
⎦ ⎥+
k13
k23
⎡
⎣ ⎢
⎤
⎦ ⎥
€
k11 k12
k21 k22
⎡
⎣ ⎢
⎤
⎦ ⎥A
B
⎡
⎣ ⎢
⎤
⎦ ⎥
€
λ1 0
0 1
⎡
⎣ ⎢
⎤
⎦ ⎥A
B
⎡
⎣ ⎢
⎤
⎦ ⎥
??
Can we find a λ value that satisfies this relationship?
€
k11 k12
k21 k22
⎡
⎣ ⎢
⎤
⎦ ⎥− λ
1 0
0 1
⎡
⎣ ⎢
⎤
⎦ ⎥
⎛
⎝ ⎜
⎞
⎠ ⎟A
B
⎡
⎣ ⎢
⎤
⎦ ⎥= 0
€
k11 − λ k12
k21 k22 − λ
⎡
⎣ ⎢
⎤
⎦ ⎥
⎛
⎝ ⎜
⎞
⎠ ⎟A
B
⎡
⎣ ⎢
⎤
⎦ ⎥= 0€
k11 − λ( )A + k12B = 0
k21A + k22 − λ( )B = 0
Written differently..
This is an eigenvalue
![Page 10: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/10.jpg)
€
k11 − λ( )A + k12B = 0
k21A + k22 − λ( )B = 0
€
k11A − λA + k12B = 0
k21A + Bk22 − λB = 0
expand
€
B =−k11A + λA
k12
k21A +−k11A + λA
k12
⎛
⎝ ⎜
⎞
⎠ ⎟k22 − λ
−k11A + λA
k12
⎛
⎝ ⎜
⎞
⎠ ⎟= 0
Solve for B
€
k21A −k11Ak22
k12
+λAk22
k12
+λk11A
k12
+λ2A
k12
= 0
€
A k21 −k11k22
k12
+λk22
k12
+λk11
k12
+λ2
k12
⎛
⎝ ⎜
⎞
⎠ ⎟= 0
![Page 11: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/11.jpg)
€
A k21 −k11k22
k12
+λk22
k12
+λk11
k12
+λ2
k12
⎛
⎝ ⎜
⎞
⎠ ⎟= 0
Solve for λ
€
λ =1
2k11 + k22 ± k11
2 + 4k12k21 − 2k11k22 + k222
[ ]
Observations:1) Yes! There is always a way decouple a coupled linear
system2) Direct approach involves lots of algebra
There is an easier way..
![Page 12: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/12.jpg)
A bit of linear algebra background
Goal: solve this system for λ
€
k11 − λ k12
k21 k22 − λ
⎡
⎣ ⎢
⎤
⎦ ⎥
⎛
⎝ ⎜
⎞
⎠ ⎟A
B
⎡
⎣ ⎢
⎤
⎦ ⎥= 0
Determinant: a property of any square matrix that describes the degree of coupling between the equations.
Determinant equals zero when the system is not linearly independent, meaning one of the equations can be cast as a linear combination of the others.
€
Det
a b c
d e f
g h i
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥= a* Det
e f
h i
⎡
⎣ ⎢
⎤
⎦ ⎥− b* Det
d f
g i
⎡
⎣ ⎢
⎤
⎦ ⎥+ c * Det
d e
g h
⎡
⎣ ⎢
⎤
⎦ ⎥
€
Deta b
c d
⎡
⎣ ⎢
⎤
⎦ ⎥= a * d − b *c
![Page 13: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/13.jpg)
A bit of linear algebra background
Goal: solve this system for λ
€
k11 − λ k12
k21 k22 − λ
⎡
⎣ ⎢
⎤
⎦ ⎥
⎛
⎝ ⎜
⎞
⎠ ⎟A
B
⎡
⎣ ⎢
⎤
⎦ ⎥= 0
Determinant: a property of any square matrix that describes the degree of coupling between the equations.
Determinant equals zero when the system is not linearly independent, meaning one of the equations can be cast as a linear combination of the others.
€
Detk11 − λ k12
k21 k22 − λ
⎡
⎣ ⎢
⎤
⎦ ⎥= 0
Revised Goal: find λ that satisfies
€
k11 − λ( ) k22 − λ( ) − k12k21 = 0
€
λ =1
2k11 + k22 ± k11
2 + 4k12k21 − 2k11k22 + k222
[ ]
![Page 14: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/14.jpg)
Similar Analysis can be done in Mathematica:
Det[{a,b},{c,d}] :Find the determinant of a matrix
Solve [{eqn1, eqn2,..},{var1, var2,..} ] : Solve algebraically
Eigenvalues[{a,b},{c,d}] : Automatically find the eigenvalues
![Page 15: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/15.jpg)
What do eigenvalues tell us about stability?
Eigenvalues tell us the exponential part of the solution of the differential equation system
Three possible values for an eigenvalue1) Positive value: system will increase
exponentially2) Negative value: system will decay
exponentially3) Imaginary value: system will oscillate(note combinations of the above are possible)
![Page 16: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/16.jpg)
What do eigenvalues tell us about stability?
Effect: If any eigenvalue has a positive real part, the system will tend to move away from the fixed point
![Page 17: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/17.jpg)
Marble Analogy
Small perturbations left or right will cause the marble to decay back to the steady state position
Negative real eigenvalue
Small perturbations left or right will cause the marble to decay away from the steady state position (xss) Positive real eigenvalue
Small perturbations in y are stable, while perturbations in x are unstable (saddle point), thus overall point is unstable! Positive and negative real eigenvalues
xssx
Case I: stablexss
x
Case II: unstable
xss,,yss
x
y
Case III: Saddle point
![Page 18: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/18.jpg)
€
′ A
′ B
⎡
⎣ ⎢
⎤
⎦ ⎥=
3 −2
2 −2
⎡
⎣ ⎢
⎤
⎦ ⎥A
B
⎡
⎣ ⎢
⎤
⎦ ⎥+
3
4
⎡
⎣ ⎢
⎤
⎦ ⎥
Revisit our example: What will happen here?
1) Calculate eigenvalues
Eigenvalues: λ1=2, λ2= -1
2) Classify stability:At least one eigenvalue is positive,
so the point is unstable and a saddle point.
Exponential increase
![Page 19: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/19.jpg)
€
′ A
′ B
′ C
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥=
3 −2 1
2 2 −2
−1 2 0
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥
A
B
C
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥+
8
−2
4
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥
A more complex example: What will happen here?
1) Calculate eigenvalues
Force Mathematica to find a numerical value using N[ ]
Using the Eigenvalue[ ] function in Mathematica
Given these eigenvalues what will it do?
![Page 20: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/20.jpg)
€
′ A
′ B
′ C
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥=
3 −2 1
2 2 −2
−1 2 0
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥
A
B
C
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥+
8
−2
4
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥
2) Classify stability:
• The real component of at least one eigenvalue is positive, so the system is unstable.
• There are imaginary eigenvalue components, so the response will oscillate.
Increase w/ oscillation
A more complex example: What will happen here?
![Page 21: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/21.jpg)
Exponential increase Increase w/ oscillation
Stable oscillation
Decay w/ oscillationExponential decay
What will your system do?(according to eigenvalues)
All λs are real and negative
All λs are real and at least one positive
All λs have negative real parts, some imaginary parts
At least one λ has positive real parts, some imaginary parts
All λs have zero real parts and nonzero imaginary parts
![Page 22: Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf (pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics](https://reader034.vdocument.in/reader034/viewer/2022051516/56649d5a5503460f94a3aafc/html5/thumbnails/22.jpg)
Take Home Messages
• Stability of linear dynamical systems can be determined from eigenvalues
• Complicated sounding terms like eigenvalues and determinant can be derived from algebra alone--fear not!
• Stability of nonlinear dynamical systems can be locally evaluated using eigenvalues