Linearizing a nonlinear state-space model about a known reference solution, producing a linear model for the deviations from that reference.

Taylor Series Approximation

  • Why use sin𝑧≈𝑧 in the pendulum example? Recall:
    • sin𝑧=𝑧−𝑧36+𝑧5120−…(H.O.T.)
    • and for |𝑧|≪1, 𝑧≫𝑧3,𝑧5, etc. (H.O.T. negligible)
  • Via Taylor we can do a similar expansion for most functions, around arbitrary reference points 𝑧∗ (other than 0):
    • 𝑓(𝑧)=𝑓(𝑧∗)+𝑓′(𝑧∗)(𝑧−𝑧∗)+12𝑓″(𝑧∗)(𝑧−𝑧∗)2+…(HOT)
    • so for small |𝑧−𝑧∗|:
    • 𝑓(𝑧)−𝑓(𝑧∗)≈𝑓′(𝑧∗)(𝑧−𝑧∗)
  • Similarly, if 𝑓 depends on two (or more) variables:
    • 𝑓(𝑧1,𝑧2)=𝑓(𝑧∗1,𝑧∗2)+𝜕𝑓𝜕𝑧1|𝑧∗1,𝑧∗2(𝑧1−𝑧∗1)+𝜕𝑓𝜕𝑧2|𝑧∗1,𝑧∗2(𝑧2−𝑧∗2)+…(HOT)
  • And we can do this with each function that appears in our problem (𝑓1,𝑓2,…,𝑓𝑛; ℎ1,ℎ2,…,ℎ𝑝)

Reference Solution

  • Assume we know a solution 𝐳∗(𝑡) for the state eq’n given IC 𝐳∗(𝑡0) and input 𝐰∗(𝑡), i.e.
    • 𝟎=𝐟(̇𝐳∗(𝑡),𝐳∗(𝑡),𝐰∗(𝑡),𝑡)∀𝑡≥𝑡0
  • Any other solution 𝐳(𝑡) must also satisfy
    • 𝟎=𝐟(̇𝐳(𝑡),𝐳(𝑡),𝐰(𝑡),𝑡)∀𝑡≥𝑡0
  • Differencing:
    • 𝟎=𝐟(̇𝐳(𝑡),𝐳(𝑡),𝐰(𝑡),𝑡)−𝐟(̇𝐳∗(𝑡),𝐳∗(𝑡),𝐰∗(𝑡),𝑡)
  • By Taylor:
    • 𝟎=𝐸(𝑡)[̇𝐳(𝑡)−̇𝐳∗(𝑡)]+𝐹(𝑡)[𝐳(𝑡)−𝐳∗(𝑡)]+𝐺(𝑡)[𝐰(𝑡)−𝐰∗(𝑡)]+HOT

Jacobian Matrices

  • 𝐸,𝐹,𝐺 are the Jacobian matrices:
    • 𝐸𝑖𝑗={𝜕𝑓𝑖𝜕̇𝑧𝑗}∗𝑖,𝑗=1,…,𝑛[𝐸(𝑡)=𝜕𝐟𝜕̇𝐳|∗(𝑡)]𝐹𝑖𝑗={𝜕𝑓𝑖𝜕𝑧𝑗}∗𝑖,𝑗=1,…,𝑛[𝐹(𝑡)=𝜕𝐟𝜕𝐳|∗(𝑡)]𝐺𝑖𝑗={𝜕𝑓𝑖𝜕𝑤𝑗}∗𝑖=1,…,𝑛;𝑗=1,…,𝑚[𝐺(𝑡)=𝜕𝐟𝜕𝐰|∗(𝑡)]
  • where {⋅}∗ means the derivatives are evaluated for the reference conditions
    • i.e. using ̇𝐳=̇𝐳∗(𝑡), 𝐳=𝐳∗(𝑡), 𝐰=𝐰∗(𝑡) after taking the indicated derivatives

Linearized Deviation Model

Linearized State Equation

  • Finally, we can write a model for the deviations of the state vector from the assumed reference:
  • ̇𝐱(𝑡)=𝐴(𝑡)𝐱(𝑡)+𝐵(𝑡)𝐮(𝑡)+𝚪(𝑡)
  • where
    • 𝐴(𝑡)=−𝐸(𝑡)−1𝐹(𝑡)𝐵(𝑡)=−𝐸(𝑡)−1𝐺(𝑡)
    • 𝐸,𝐹,𝐺 Jacobians of 𝐟
  • and
    • 𝐱(𝑡)≝𝐳(𝑡)−𝐳∗(𝑡)deviation from ref. sol'n𝐮(𝑡)≝𝐰(𝑡)−𝐰∗(𝑡)deviation from ref. input
  • Finally, 𝚪(𝑡) has the H.O.T., so that ‖𝚪(𝑡)‖ is small when ‖𝐱(𝑡)‖ and ‖𝐮(𝑡)‖ are small

Important note

  • 𝐱(𝑡)→𝟎in linearized model⇒𝐳(𝑡)→𝐳∗(𝑡)in original (full) model
  • i.e. linearized stability ⇒ the full solution converges back to the reference solution (not to 𝟎!!)
  • Also remember 𝐮(𝑡) is not the physical input 𝐰(𝑡). It is the deviation of 𝐰(𝑡) from the reference input 𝐰∗(𝑡) that gives rise to the reference solution 𝐳∗(𝑡) used in the linearization

Example: Pendulum Jacobians

Pendulum Linearization

  • From the pendulum model:
    • 𝑓1=̇𝑧1−𝑧2𝑓2=𝑚𝑙2̇𝑧2+𝑚𝑔𝑙sin𝑧1+𝑏(𝑧2)−𝑤
  • Jacobians:
    • 𝐸(𝑡)=[𝜕𝑓1𝜕̇𝑧1𝜕𝑓2𝜕̇𝑧1𝜕𝑓1𝜕̇𝑧2𝜕𝑓2𝜕̇𝑧2]∗=[100𝑚𝑙2]∗=[100𝑚𝑙2]
    • 𝐹(𝑡)=[𝜕𝑓1𝜕𝑧1𝜕𝑓2𝜕𝑧1𝜕𝑓1𝜕𝑧2𝜕𝑓2𝜕𝑧2]∗=[0𝑚𝑔𝑙cos𝑧1−1𝑏′(𝑧2)]∗=[0𝑚𝑔𝑙cos𝑧∗1(𝑡)−1𝑏′(𝑧∗2(𝑡))]
      • The bottom row depends on the specific reference solution!
    • 𝐺(𝑡)=[𝜕𝑓1𝜕𝑤𝜕𝑓2𝜕𝑤]∗=[0−1]∗=[0−1]
  • If the reference solution is 𝑧∗1=0, 𝑧∗2=0, 𝑤∗=0 (pendulum is nominally motionless, straight down), then
    • 𝐹(𝑡)=[0𝑚𝑔𝑙−1𝑏′(0)](constant)
    • which agrees with the previous hand-waving analysis (sin𝑧1≈𝑧1, 𝑏(𝜔)≈𝛽𝜔)
    • Note 𝑏′(0) = slope of the friction curve at 0

Aside: friction modeling

  • Friction is notoriously difficult to model accurately
  • It is dissipative, so 𝑏(𝜔)𝜔≥0, but it can contain discontinuities:
  • Simple joint drag and friction model b(omega) with stiction jumps at zero (from Prof. Sanner's notes)
    • Jumps at 𝜔=0 (stiction), followed by slippage; approximately linear for larger 𝜔
    • Jumps and high-𝜔 slopes are not necessarily symmetric
  • Such a function cannot be completely treated within the formalism above, since it fails to be differentiable at 0

Output Linearization

  • We can similarly linearize the output eq’n for any reference solution. Let
    • 𝐲(𝑡)=𝛈(𝑡)−𝛈∗(𝑡)
    • where 𝛈∗(𝑡)=𝐡(𝐳∗(𝑡),𝐰∗(𝑡)) (reference output)
  • Then
    • 𝐲(𝑡)=𝐶(𝑡)𝐱(𝑡)+𝐷(𝑡)𝐮(𝑡)+𝚪𝑦(𝑡)
    • where
    • 𝐶(𝑡)=[𝜕𝐡𝜕𝐳]∗(𝑡)(𝑝×𝑛Jacobian of𝐡)𝐷(𝑡)=[𝜕𝐡𝜕𝐰]∗(𝑡)(𝑝×𝑚Jacobian of𝐡)
  • and 𝚪𝑦(𝑡) has H.O.T. which are negligible if ‖𝐱(𝑡)‖ and ‖𝐮(𝑡)‖ are small

Note again

  • 𝐲(𝑡) is the deviation of the output from the reference, not the physical output

Pendulum About an Arbitrary Reference

Pendulum Linearization, General Reference Solution

  • Pendulum: 𝑚𝑙2̈𝜃=−𝑚𝑔𝑙sin𝜃−𝑏(̇𝜃)+𝜏𝑚
  • Linearization has
    • 𝐸=[100𝑚𝑙2]𝐹=[0𝑚𝑔𝑙cos𝜃∗(𝑡)−1𝑏′(̇𝜃∗(𝑡))]𝐺=[0−1]
  • and
    • 𝐴(𝑡)=−𝐸−1𝐹=[0−𝛼0(𝑡)1−𝛼1(𝑡)]𝐵=[0𝛽0]=−𝐸−1𝐺
    • where
    • 𝛼0(𝑡)=𝑔𝑙cos𝜃∗(𝑡)𝛼1(𝑡)=𝑏′(̇𝜃∗(𝑡))𝑚𝑙2𝛽0=1𝑚𝑙2
  • Suppose the output is 𝜂=𝜃 [=𝑧1(𝑡)]:
    • 𝜂=[10]⏟𝐶[𝑧1𝑧2]+[0]⏟𝐷𝑤
  • The equivalent I/O DE for the linearized output 𝑦(𝑡)=𝜃(𝑡)−𝜃∗(𝑡) satisfies
    • ̈𝑦(𝑡)+𝛼1(𝑡)̇𝑦(𝑡)+𝛼0𝑦(𝑡)=𝛽0𝑢(𝑡)
  • Do the properties of this DE change for different reference solutions? If so, how? → see Linearized Dynamics at Different Equilibria