Dynamical Systems Analysis II: Evaluating Stability, Eigenvalues By Peter Woolf pwoolf@umich.edu) University of Michigan Michigan Chemical Process Dynamics and Controls Open Textbook version 1.0 Creative commons
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? Steady state from last lecture. Topic for today! Is there anything fundamental you can say about it? E.g. With my control architecture, this process will always. Solution: Stability Analysis
What will your system do? Exponential decay Decay w/ oscillation Stable oscillation Exponential increase Increase w/ oscillation Only possible for nonlinear systems Periodic solution Non-periodic solution chaotic)
How can we know where the system will go? Possible approaches: 1. Simulate system and observe Advantages: Works for any system you can simulate Intuitive--you see the results 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.
How can we know where the system will go? Possible approaches: 1. Simulate system and observe 2. Stability Analysis this class) Advantages: Provides strong guarantees for linear systems General Disadvantages: Only works for linear models Linear approximations of nonlinear models break down away from the point of linearization
From last class Nonlinear model da dt = 3A " A2 " AB db = 2B " AB " 2B2 dt Linear approximation at A=0, B=0 A " = 3 0 A + 0 B " 0 2 B 0 Jacobian Intuitively, what will the linear system do if A is perturbed slightly! from 0? da dt = 30 + ") Increase in A above 0 yields a positive derivative Or in a different format da dt = 3A db dt = 2B Increase in slope of A Increase in A! Exponential increase
But what if our model is more complex? E.g. note: example below is made up) A " = 3 )2 A + 3 Or in a different B " 2 )2 B 4 format da dt db dt! da dt db dt da dt db dt = 3A " 2B + 3 = 2A " 2B + 4 What will happen if A or B are increased slightly from the steady state value of A=1, B=3? Increase A by Δ: = 31+ ") 23) + 3 = +3" = 21+ ") 23) + 4 = +2" Result: increase A, A and B increase!! Increase B by Δ: = 31) " 23+ ) + 3 = "2 = 21) " 23+ ) + 4 = "2 Result: increase B, A and B decrease!
Observations: 1. It is easy to predict where a linear system will go if the variables are decoupled da dt = 3A db dt = 2B A only influences A, B only influences B. -> Variables are decoupled 2. Coupling between variables makes it harder to predict what will happen da dt db dt = 3A " 2B + 3 = 2A " 2B + 4 Changes in A influence changes in A and B. Changes in B influence changes in A and B. --> Variables are coupled 3. Coupling is determined by the Jacobian
Is it possible to change a coupled system to a decoupled one? A " = k 11 A + k 13 B " k 21 k 22 B k 23 This is an eigenvalue " k 11 " A k 21 k 22 B?? " 1 0 A 0 1 B Can we find a λ value that satisfies this relationship? *" k 11 "! ) 1 0 -, + k 21 k 22 0 1. / " A B = 0 * k 11 " -, ) + k 21 k 22 ". / A B ) = 0! k 11 " )A + B = 0 k 21 A + k 22 " )B = 0 Written differently..
k 11 " )A + B = 0 k 21 A + k 22 " )B = 0 expand k 11 A " A + B = 0 k 21 A + Bk 22 " B = 0 B = "k A + A 11 k 21 A + "k A + A 11 k 21 A " k 11Ak 22 + Ak 22 Solve for B! ) k 22 " "k A + A 11 ) = 0 + k 11A A k 21 " k 11k 22 + k 22 + k 11 + 2 + 2 A = 0 ) = 0
A k 21 " k k 11 22 + k 22 + k 11 + 2 ) = 0 Solve for λ [ ] " = 1 2 k 11 + k 22 ± k 11 2 + 4 k 21 2k 11 k 22 + k 22 2 Observations: 1) Yes! There is always a way decouple a coupled linear system 2) Direct approach involves lots of algebra There is an easier way..
Goal: solve this system for λ * k 11 " -, ) + k 21 k 22 ". / A B ) = 0 A bit of linear algebra background 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 c b = a* d b*c d " a b c " Det d e f = a* Det e f h i b * Det " d g g h i f i + c * Det " d g e h
Goal: solve this system for λ * k 11 " -, ) + k 21 k 22 ". / A B ) = 0 A bit of linear algebra background 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. Revised Goal: find λ that satisfies Det k 11 " ) = 0 k 21 k 22 "! k 11 " ) k 22 " ) " k 21 = 0 [ ] " = 1 2 k 11 + k 22 ± k 11 2 + 4 k 21 2k 11 k 22 + k 22 2
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
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 eigenvalue 1) Positive value: system will increase exponentially 2) Negative value: system will decay exponentially 3) Imaginary value: system will oscillate note combinations of the above are possible)
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
Marble Analogy Case I: stable Case II: unstable x ss Case III: Saddle point x ss,,y ss x x ss Small perturbations left or right will cause the marble to decay back to the steady state position Negative real eigenvalue x Small perturbations left or right will cause the marble to decay away from the steady state position x ss ) Positive real eigenvalue y x Small perturbations in y are stable, while perturbations in x are unstable saddle point), thus overall point is unstable! Positive and negative real eigenvalues
Revisit our example: What will happen here? A " = 3 )2 A + 3 B " 2 )2 B 4 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
" 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?
" 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?
What will your system do? according to eigenvalues) Exponential decay All λs are real and negative Decay w/ oscillation All λs have negative real parts, some imaginary parts Stable oscillation All λs have zero real parts and nonzero imaginary parts Exponential increase Increase w/ oscillation All λs are real and at least one positive At least one λ has positive real parts, some imaginary parts
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