微分方程 Φ(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
收起