美文网首页脑核磁共振数据处理——fMRI
《微分方程与动力系统(Differential Equation

《微分方程与动力系统(Differential Equation

作者: 韧心222 | 来源:发表于2023-11-22 11:51 被阅读0次

    为了深入理解fMRI分析的原理,还是要学习一些微分方程与动力系统的东东,这是我的学习笔记,内容还没有很好的整理。

    视频在这里1-Differential Equations and Dynamical Systems Overview_哔哩哔哩_bilibili

    课程的原始地址在这里:ME 564 - Mechanical Engineering Analysis (washington.edu)

    11. 12. 高阶ODE

    此章节将会构造一个高阶的ODE,其模型如图所示:


    image.png

    根据F=ma,则可以列出如下方程:

    \begin{align} m_1\ddot x_1 + k_1x_1 + k_2(x_1-x_2) =& 0 \\ m_2\ddot x_2 + k_2(x_2-x_1)=&0 \end{align}

    上述公式可以写为两种形式:

    【形式1】
    \begin{bmatrix} \dot x_1 \\ \dot v_1 \\ \dot x_2 \\ \dot v_2 \\ \end{bmatrix}= A \begin{bmatrix} x_1 \\ v_1 \\ x_2 \\ v_2 \\ \end{bmatrix}

    【形式2】4阶ODE
    \begin{align} x_2 =& \frac{1}{k_2}m_1 \ddot x_1+\frac{k_1}{k_2}x1+x_1 \\ \ddot x_2 =& \frac{m_1}{k_2} x_1^{(4)}+\frac{k_1}{k_2}\dddot x_1 + \ddot x_1 \end{align}

    所以最终的4阶ODE为:
    \frac{m_2m_1}{k_2}x_1^{(4)}+\frac{m_2}{k_2}\dddot x_1+(m_1+m_2)\ddot x_1+k_1\dot x+0\cdot x_1 = 0

    对于一般形式的高阶ODE方程:
    a_nx^{(n)}+a_{n-1}x^{(n-1)}+...+a_2\ddot x+a_1 \dot x+a_0 x = 0

    其一般性解法,可以参考之前的做法
    \begin{align} x(t)=&e^{\lambda t}\\ \dot x =& \lambda e^{\lambda t} \\ ... \\ x^{(n)} =& \lambda^ne^{\lambda t}\\ \end{align}
    因此:
    e^{\lambda t}(a_n\lambda^n+a_{n-1}\lambda^{n-1}+...a_2\lambda^2+a_1\lambda+a_0) = 0
    特征方程为
    a_n\lambda^n+a_{n-1}\lambda^{n-1}+...a_2\lambda^2+a_1\lambda+a_0=0
    该方程有n个根,分别为\lambda_1,\lambda_2,...,\lambda_n,则x(t)的一般解为:
    x(t)=c_1e^{\lambda_1t}+c_2e^{\lambda_2t}+...+c_ne^{\lambda_nt}
    之后,可以利用状态的初始值,来确定c的取值。

    13. 微分方程的矩阵系统

    这节课程的目的是要将前面介绍的高阶线性ODE变为一阶的矩阵形式(由n个耦合变量构成的1阶ODEs)。

    为了解决这个问题,需要引入一些新的变量,令
    \begin{align} x_1 =& x \\ x_2 =& \dot x \\ x_3 =& \ddot x \\ ...\\ x_n =& x^{(n-1 )} \\ \end{align}
    则,
    \dot x_n = x^{(n)}=-a_0x_1-a_1x_2-...-a_{n-1}x_n
    所以:
    \frac{d}{dt} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \\ ... \\ x_{n-1} \\ x_{n} \\ \end{bmatrix} = \begin{bmatrix} 0 & 1 & 0 & \cdots & 0 &0 \\ 0 & 0 &1 & \cdots & 0 & 0 \\ 0 & 0 &0 & \cdots & 0 & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 &0 & \cdots & 0 & 1 \\ -a_0 & -a_1 &-a_2 & \cdots & -a_{n-2} & -a_{n-1} \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \\ ... \\ x_{n-1} \\ x_{n} \\ \end{bmatrix}

    可以简写为:
    \underline{\dot x} = A\underline{x}

    可以证明A的特征值就是特征多项式的根

    14. 特征值和特征向量

    14.1 解耦的微分动力学

    首先看一个简单的例子,一个解耦的微分动力学方程(Decoupled Dynamics)的示例:假设在一个足够大的动物园中又若干动物,每个种类的动物都关在自己的笼子里,彼此之间不会发生捕食等动作,在食物充足的情况下,其种群数量的应该满足如下方程:
    \frac{d}{dt} \begin{bmatrix} x_1 \\ x_2 \\ \vdots\\ x_n \\ \end{bmatrix} = \begin{bmatrix} \lambda_1 & 0 & \cdots & 0 \\ 0 & \lambda_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ \vdots\\ x_n \\ \end{bmatrix}

    D为对角线矩阵:
    D= \begin{bmatrix} \lambda_1 & 0 & \cdots & 0 \\ 0 & \lambda_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n \\ \end{bmatrix}
    则:
    \begin{bmatrix} x_1 \\ x_2 \\ \vdots\\ x_n \\ \end{bmatrix}(t) = \begin{bmatrix} e^{\lambda_1t} & 0 & \cdots & 0 \\ 0 & e^{\lambda_2t} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & e^{\lambda_nt} \\ \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ \vdots\\ x_n \\ \end{bmatrix}(0)
    其中,
    e^{Dt} = \begin{bmatrix} e^{\lambda_1t} & 0 & \cdots & 0 \\ 0 & e^{\lambda_2t} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & e^{\lambda_nt} \\ \end{bmatrix}

    14.2 一般系统的动力学

    对于我们之前使用的更一般的系统
    \underline{\dot x}=A\underline{x}
    我们需要一个可逆的空间变换\underline{x}=T\underline{z},使得新空间的微分方程呈现出对角线形式,即\underline{ \dot z}=D\underline{z}

    \begin{align} T\dot z = \dot x = A x \Rightarrow & T\dot z = ATz \\ \Rightarrow && \dot z = T^{-1}ATz \end{align}

    此时问题变为我们需要寻找的一个可逆矩阵T,使得T^{-1}AT为一个对角矩阵D,即:
    T^{-1}AT=D
    为了解决这个问题,不妨对上式进行一个变换,得到:
    AT=TD
    T的每一列和D的对角线元素分别表示矩阵A的特征向量和特征值。如果不理解的话,我们不妨对其进行简单的展开:

    A \begin{bmatrix} t_1 & t_2 & \cdots & t_n \end{bmatrix}= \begin{bmatrix} t_1 & t_2 & \cdots & t_n \end{bmatrix} \begin{bmatrix} \lambda_1 & 0 & \cdots & 0 \\ 0 & \lambda_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n \\ \end{bmatrix}
    可见
    At_k = \lambda_kt_k
    从而证实了我们之前的说法。

    15. 特征向量与特征值

    15.1 行列式的几何意义

    一个矩阵A的行列式,表示一个单位方块通过矩阵A进行空间变换,得到的新图形的容量,

    image.png

    如图所示,在二维空间中,单位方框的顶点分别为(0,0),(0,1),(1,0),(1,1),通过矩阵
    A= \begin{bmatrix} 2 & 1 \\ 1 & 2\\ \end{bmatrix}
    变换后,得到的顶点分别为(0, 0), (1, 2), (2, 1), (3,3),则新图形的面积等于A的行列式
    det(A)=Area = 3
    因此,在二维空间上,如果一个矩阵的行列式等于0,则相当于它把单位向量映射到了同一个方向上。

    对于更高的维度而言,det(A)=0相当于通过矩阵A的变换,单位方块在某个维度上被压缩了

    15.2 特征向量

    对于矩阵A,其特征值和特征向量的计算方法为求解如下方程的根:
    det(A-\lambda I)=0

    16. 求解

    通过前面的讲解,我们知道了:
    \begin{align} \underline{\dot x} = Ax \Rightarrow& \underline{x} (t)= e^{At}\underline{x}(0) \\ \underline{x}=T\underline{z} \Rightarrow & \underline{\dot z}=D\underline{z} \\ & \underline{z}(t)=e^{Dt}\underline{z}(0) \end{align}
    但是e^{At}的计算方法还不知道,这节课主要就是来解决这个问题:

    首先,我们知道
    \begin{align} \because &A=TDT^{-1} \\ \therefore & A^2 = (TDT^{-1}) (TDT^{-1}) = TD^2T^{-1} \\ & A^3 = TD^3T^{-1} \\ & \vdots \\ & A^n = TD^nT^{-1} \\ \end{align}
    因此,对e^{At}进行泰勒展开可得:

    \begin{align} e^{At} =& I+At+\frac{A^{2}t^2}{2!}+\frac{A^{3}t^3}{3!}+\cdots \\ =&TT^{-1}+TDT^{-1}t+TD^2T^{-1}\frac{t^2}{2!} +TD^3T^{-1}\frac{t^3}{3!} +\cdots \\ =&T[I+Dt+\frac{D^{2}t^2}{2!}+\frac{D^{3}t^3}{3!}+\cdots]T^{-1} \\ =&Te^{Dt}T^{-1} \end{align}

    其中,
    e^{Dt} = \begin{bmatrix} e^{\lambda_1t} & 0 & \cdots & 0 \\ 0 & e^{\lambda_2t} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & e^{\lambda_nt} \\ \end{bmatrix}


    \underline{x}(t) = Te^{Dt}T^{-1}\underline{x}(0) = Te^{Dt}\underline{z}(0)=T\underline{z}(t)

    相关文章

      网友评论

        本文标题:《微分方程与动力系统(Differential Equation

        本文链接:https://www.haomeiwen.com/subject/xiqiwdtx.html