微分方程 Φ(t)是常系数线性方程组x'=Ax的基解矩阵,则e^At=多少呢,A貌似是矩阵.

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/09 02:19:24

微分方程 Φ(t)是常系数线性方程组x'=Ax的基解矩阵,则e^At=多少呢,A貌似是矩阵.
微分方程
Φ(t)是常系数线性方程组x'=Ax的基解矩阵,则e^At=多少呢,A貌似是矩阵.

微分方程 Φ(t)是常系数线性方程组x'=Ax的基解矩阵,则e^At=多少呢,A貌似是矩阵.
e∧At只是一个记号,具体的运算是要展成泰勒级数方可进行计算

A=[2,0,0,0,0;4,2,4,0,-4;4,-1,6,1,-5;12,-2,12,4,-14;8uycg-1,8,1,-7] % 下面这句求矩阵A的特征值和特征向量,以特征值构成对角阵lambda[v,lambda]=eig(sym(A));% n本质上是系统的阶次n=length(lambda); % 这个判断有点莫名其妙,我想不出什么情况下if的条件会不满足if length(v(1,...

全部展开

A=[2,0,0,0,0;4,2,4,0,-4;4,-1,6,1,-5;12,-2,12,4,-14;8uycg-1,8,1,-7] % 下面这句求矩阵A的特征值和特征向量,以特征值构成对角阵lambda[v,lambda]=eig(sym(A));% n本质上是系统的阶次n=length(lambda); % 这个判断有点莫名其妙,我想不出什么情况下if的条件会不满足if length(v(1,:))==n    syms t     % 定义符号变量t    Phi=[];   ˉ 置初始的Φ(t)矩阵为空,后面依次添加各列    for j=1:n        % 通过循环依次添加Φ(t)矩阵各列,函数eval纯属多余        Phi=[Phi,eval(v(:,j)*exp(lambda(j284j)*t))];    end    % 下面这一句又是莫名其妙,如果想显示变量Phi,直接写变量名即可,没必要给自身赋值    Phi=Phi    % 通过处以Φ(0),对Φ(t)进行类似归一化的操作meval同样是多余的    Psi=eval(Phi/subs(Phi,t,'0'))else    % 这个分支根本似乎不可能执行到    disp('False');end %==========================================% 其实求状态转移矩阵更简单的做法如下:[P, D]=eig(sym(A));Psi1 = P * expm(D*t) * P^-1 % 可以验证,这样求出的基解矩阵和上面相同Psi-Psi1

收起