如何在matlab中求秩亏线性方程组的所有非唯一解万博 尤文图斯

17个视图(过去30天)
泽布
泽布 2020年5月15日
编辑: 泽布2020年5月19日
亲爱的,
我有一个线性方程组,它是秩亏的,因此解不是唯一的,如何在matlab中找到所有的解?万博 尤文图斯
符号x1x2x3x4x5;
方程N1=2*x1-x2+2*x3-x4+3*x5==14;
等式n2=x1+2*x2+3*x3+x4+0*x5==15;
等式N3=x1+0*x2*-2*x3+0*x3+-5*x5==-10;
[A,B]=等式矩阵([eqn1,eqn2,eqn3],[x1,x2,x3,x4,x5])

答复(1)

大卫·古德曼
大卫·古德曼 2020年5月15日
编辑:大卫·古德曼 2020年5月15日
你好,泽布,
一个解决办法是
v0=A\b。
因为一个秩是有限的,所以它有一个非空的空空间
nullA=null(A)
这是尺寸5x2。两个列向量跨越A的空空间,根据定义A*nullA=0。整个解决方案为v0加上nullA中列向量的任意线性组合:
符号x1 x2 x3 x4 x5 c1 c2;
方程N1=2*x1-x2+2*x3-x4+3*x5==14;
等式n2=x1+2*x2+3*x3+x4+0*x5==15;
等式N3=x1+0*x2*-2*x3+0*x3+-5*x5==-10;
[A,B]=等式矩阵([eqn1,eqn2,eqn3],[x1,x2,x3,x4,x5])
nullA=null(A)
v0=A\B
v0=
-10
-52/7
93/7
0
0
vextra=v0+nullA*[c1;c2]%c1,c2是任意的
维斯特拉=
5*c2-10
(29*c2)/7-(5*c1)/7-52/7
c1/7-(31*c2)/7+93/7
c1
c2
A*vextra-B%检查
ans=
0
0
0

标签

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!