矩阵指数函数的计算及例子

        最近在学习矩阵指数函数相关的知识,遇到了一些比较有意思的计算方法,写出来供大家一同学习。

        矩阵指数函数的计算是线性系统学习过程中非常重要的部分,下面我将给出四种常见的计算矩阵指数函的方法:

(1)定义法:

对于给定的n\times n矩阵A,计算e^{At}的计算式为:

e^{At}=I+At+\frac{1}{2!}{A}^{2}{t}^{2}+\frac{1}{3!}{A}^{3}{t}^{3}+\cdots

此方法并不能够得到矩阵指数函数的解析形式,故不能应用于计算中。但是,此方法能够得到矩阵指数函数的数值解,且在编程计算和获得数值解方面有着很大的优势。

(2)特征值法:

对于给定的n\times n矩阵A,通过特征值法计算矩阵指数函数的方式,首先要确定矩阵A的特征值\lambda为两两互异的,同时根据特征值导出矩阵A的右特征向量v_{i},求出变换矩阵P

其中,                             

              P=[v_{1},v_{2}, ... ,v_{n}]                  

则,计算e^{At}的计算式为:

e^{At}=P\begin{bmatrix} e^{\lambda _{1}t} & & \\ & \ddots & \\ & &e^{\lambda _{n}t} \end{bmatrix}P^{-1}

例,给定一个连续时间线性时不变系统,其自洽方程为

\dot{x}=\begin{bmatrix} 0 & 1\\ -2&-3 \end{bmatrix}x

求其矩阵指数函数e^{At}

det(\lambda I-A)=(\lambda +1)(\lambda +2)

故,矩阵A 的特征值为\lambda _{1}=-1,\lambda _{2}=-2,进而求出使A化为约当标准型的变换矩阵P,进而求出P^{-1}

P=\begin{bmatrix} 1 &1 \\ -1& -2 \end{bmatrix} P^{-1}=\begin{bmatrix} 2 & 1\\ -1& -1 \end{bmatrix}

基此,

  e^{At}=P\begin{bmatrix} e^{\lambda _{1}t} & & \\ & \ddots & \\ & &e^{\lambda _{n}t} \end{bmatrix}P^{-1}

                        =\begin{bmatrix} 1 & 1\\ -1& -2 \end{bmatrix}\begin{bmatrix} e^{-t} & \\ & e^{-2t} \end{bmatrix}\begin{bmatrix} 2 & 1\\ -1 &-1 \end{bmatrix}

                   = \begin{bmatrix} 2e^{-t}-e^{-2t} & e^{-t}-e^{-2t}\\ -2e^{-t}+2e^{-2t} & -e^{-t}+2e^{-2t} \end{bmatrix}

特征值法仅适用于矩阵的特征值为互异的情况,且高阶矩阵的运算较麻烦。

(3)预解矩阵法:

对于给定的n\times n矩阵A,通过预解矩阵法计算矩阵指数函数的方式,首先要定出预解矩阵(sI-1)^{-1},则计算e^{At}的计算式为:

e^{At}=\pounds ^{-1}(sI-A)^{-1}

根据解法2中的题目,由预解矩阵法得:

(sI-A)^{-1}=\begin{bmatrix} s &-1 \\ 2& s+3 \end{bmatrix}^{-1} =\begin{bmatrix} \frac{s+3}{(s+1)(s+2)} &\frac{1}{(s+1)(s+2)} \\ \frac{-2}{(s+1)(s+2)}&\frac{s}{(s+1)(s+2)} \end{bmatrix}

然后利用拉普拉斯反变换得:

e^{At}= \begin{bmatrix} 2e^{-t}-e^{-2t} & e^{-t}-e^{-2t}\\ -2e^{-t}+2e^{-2t} & -e^{-t}+2e^{-2t} \end{bmatrix}

同样的,当矩阵为高阶矩阵时,采用预解矩阵法的运算量会很大,下面我们介绍一下另一种计算方法。

反之,我们可以利用预解矩阵法的反变换根据矩阵指数函数得到矩阵A,具体的放法有如下两种:

        1)A=\frac{d}{dt}(e^{^{At}})\mid _{t=0}

        2)A=-(\pounds [e^{At}])^{-1}\mid _{s=0}

(4)有限项展开法:

首先,定义f(\lambda )是n阶方阵A上的函数;若g(\lambda )是多项式且在A的频谱之上,则矩阵函数f(A)可定义为f(A)=g(A)。对于n次多项式f(A)可找到一个n-1次多项式g(\lambda )=\alpha _{0}+\alpha _{1}\lambda +\alpha _{2}\lambda^{2}+\cdots +\alpha _{n-1}\lambda^{n-1}f(\lambda )=e^{\lambda t},当然此处的g(\lambda )可根据题目中的求解的特征值的具体形式做出一定形式的变化,后面会根据文章的阅读情况做出详细的阐述。

具体算法如下:

step1:求出矩阵A的特征值。

step2:

\left\{\begin{matrix} f(\lambda _{i}) =g(\lambda _{i})\\ \vdots \\ f(\lambda _{i}) ^{(k)}=g(\lambda _{i})^{(k)}\end{matrix}\right.

其中,f(\lambda )g(\lambda )是对\lambda求导数,并非关于t求导。此时,根据系数相等的原则,解出对应的\alpha _{i}(i=1,2,...,k)的值,并带入step3中,得出最终的矩阵指数函数。

step3:最后求出e^{At}=\alpha _{0}(t)I+\alpha _{1}(t)A+\cdots +\alpha _{n-1}(t)A^{n-1}

至此,解毕。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值