matlab求助,计算四个方程四个未知数
1个回答
展开全部
方程数大于未知量个数,属于超定方程组,一般没有精确解,只能求最小二乘解。matlab中可以利用左除或伪逆法求解。
clear
c1=10496.108;
c2=10500.275;
c3=10504.442;
c4=10508.609;
c5=10512.776;
A=[1,c1,c1^2,c1^3;
1,c2,c2^2,c2^3;
1,c3,c3^2,c3^3;
1,c4,c4^2,c4^3;
1,c5,c5^2,c5^3;];
B=[-3043766.03
;-3042809.53;-3041787.84;-3040701.05;-3039549.25];
xyzt=pinv(A)*B
%伪逆法求解
%xyzt=A\B
%左除法
xyzt
=
1.0e+004
*
0.0005
1.8316
-0.0004
0.0000
clear
c1=10496.108;
c2=10500.275;
c3=10504.442;
c4=10508.609;
c5=10512.776;
A=[1,c1,c1^2,c1^3;
1,c2,c2^2,c2^3;
1,c3,c3^2,c3^3;
1,c4,c4^2,c4^3;
1,c5,c5^2,c5^3;];
B=[-3043766.03
;-3042809.53;-3041787.84;-3040701.05;-3039549.25];
xyzt=pinv(A)*B
%伪逆法求解
%xyzt=A\B
%左除法
xyzt
=
1.0e+004
*
0.0005
1.8316
-0.0004
0.0000
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询