登录论坛

查看完整版本 : [MATLAB基础] 求解矩阵方程组,在线等


无依无依
2012-11-22, 12:59
求两个矩阵方程组的解,E,q,f为2×2阶阵,u0,u1,r为2×1阶阵,且E,f,u0,u1已知。方程组
u0=E*q*r
u1=E*q*f*r
求q,r
这是m文件
u0=[1;0];
u1=[0;0];
E=[1,-1;1,1];
f=[1,0;0,1];
syms q1 q2 r1 r2
q0=[q1 q2];
q=diag(q0);
r=[sin(r1);sin(r2)];
f1=sym('u0=E*q*r');
f2=sym('u1=E*q*f*r');
[Q,R]=solve(f1,f2,'q','r')

得不到结果,这是输出的
Warning: Explicit solution could not be found.
> In solve at 98
In test at 11

Q =

[ empty sym ]

R =
[]

jimmymacong
2012-11-22, 20:51
这个结果你可以点进去看看,此方程无解。

明显,你的方程写错了,两个给定的方程本身就是相互矛盾的啊!!你是不是写错了,你的f是单位阵,直接矩阵相乘时可以去掉了,这时两个方程右边就一样了,左边却不一样啊!!你再看看自己那个地方出错了吧!!