本系列笔记为方便日后自己查阅而写,更多的是个人见解,也算一种学习的复习与总结,望善始善终吧~
一阶常系数微分方程
Au=dudt
将一阶常系数微分方程转换为线性代数问题的关键在于常系数微分方程的解一定是指数形式的。那么我们的需要求解的东西就是指数的系数和指数的幂,而这可以转换为线性代数问题。
解的指数形式通常是自然常数e的指数(猜测是因为时域信号可以转到频域,傅里叶变换,这方面学识浅薄)
这个形式很容易让我们联想到之前对于矩阵A的幂的求解,这里看一个例子:
这里问题被转换为了求解Au=dudt
特征值与特征向量
先找A的特征值和特征向量
求解特征值
两个小技巧:
- 行列式determinant为特征值的积
- 矩阵的迹trace为特征值的和
当然可以直接求解determinant=0得到特征值:
由于老师直接剧透e的幂系数中为矩阵A的特征值,那么对于特征值-3来说,随着t的增加,最终这一项为0;而对于特征值0来说,随着t增加,最终这一项为某一个确定值(解会收敛);举一反三:对于特征值大于0,随着t增加,解发散。
求解特征向量
两个小技巧:
- 对于特征值为0,特征向量即为null space,free variable自由变量置1很容易求得
- 对于另一个特征值-3,利用A−λI特征向量不变,也可以转换为求解null space
解的形式
解会是上面这样的形式,证明:
带入之前的公式dudt=Au
⇒λ1eλ1tx1=Aeλ1tx1
⇒λ1x1=Ax1
于是,我们可以将刚才求解出的特征值与特征向量带入式子:
现在,我们只需要求解c1,c2,这可以通过初值u(0)求解,在t=0时:
口算都能得出答案是c1=c2=13
得到最终的解
所以,当时间趋于无穷时,进入稳态steady state(自动控制的名词都来了,汗)
首先是关于稳定,我们已经知道的是特征值小于0时,随着时间增加,相关项变为0,所以当特征值都小于0时,随着时间增加最终趋近于0;现在我们想要知道当特征值有复数的时候会怎么样?
对于复数,其虚数部分的模norm为1,影响忽略不计,所以现在我们知道要想稳定,则特征值的实数部分应当小于0,虚数部分无所谓。很明显:当其中一个特征值为0时,有一个稳态值steady state;当存在特征值大于0时,随着时间增加,值发散。
看一下这样的结论对于我们比较关注的2x2矩阵有什么指导意义:
要想最终稳定,要有特征值都小于0,所以矩阵的迹trace大于0,矩阵的行列式determinant小于0
特征分解
我们的方程表明两个变量相互耦合,特征值和特征向量的作用就在于可以实现解耦(又称对角化)。
如何实现呢?先看我们的特征分解A=SΛS−1
要实现解耦的关键在于将u=Sv带入原方程
dudt=Au
⇒Sdvdt=ASv
⇒dvdt=S−1ASv
⇒dvdt=Λv
⇒dv1dt=Λv1
这样的方程用之前的结论求解,得:
老师的目的是得到结论以引出下一个环节(于是这里果断没看懂):
关于eAt
要了解自然常数的矩阵次幂,我们最好把它展开。
泰勒级数展开:
其对于的矩阵形式:
下面的式子可以在t很小时求解矩阵的逆,当可以注意到,上面的式子最终总会收敛,而下面的式子只有当At的特征值的绝对值小于1才能收敛。这里我们只关注上面的式子。
带入特征分解的公式:
将I=SS−1,化简得eAt=SeλtS−1,这些公式成立的前提是A可以对角化.
从这个角度来观察我们之前的情况:
u(t)=SeΛtS−1u(0)
我们可以得到一样的结论,这里的结论比之前更为一般化,为了直观了解,画出来:
左半平面,特征值的实数部分小于0,最终会有一个稳态值steady state;什么时候稳态值为0?特征值的绝对值都小于1时(之前泰勒展开的结论),这张图很像根轨迹图有木有?!
关于二阶微分方程
利用一些小技巧,换成我们熟悉的样子,现在关键在于找到矩阵A:
手写可以写出来啦:
推广到N阶(这里以5阶为例):
矩阵A第一行为原方程的系数,底下类似单位矩阵。
这样就可以转化为我们熟悉的一阶微分方程了、
PS:另一位仁兄的笔记
http://blog.csdn.net/suqier1314520/article/details/14053183