作业帮 > 数学 > 作业

matlab 四个约束 三个未知数

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:数学作业 时间:2024/04/28 12:22:14
matlab 四个约束 三个未知数
[x,y,z]=solve('-2.2*x+0.25*y-2*z=0','4*x-7.2*y+3*z=0','-2*x+3*y-11.3*z=0','x*x+y*y+z*z=1','x,y,z')
这是不对的,就是四个约束条件,三个未知量,
matlab 四个约束 三个未知数
这是超定非线性方程组,可以用最小二乘法解,以下是参考:
主函数:
clc;clear;
x0=[3,2,1];
[x,resnorm,restdual,exitflag]=lsqnonlin(@fun,x0);
子函数:
function f=fun(x)
f(1)=-2.2*x(1)+0.25*x(2)-2*x(3);
f(2)=4*x(1)-7.2*x(2)+3*x(3);
f(3)=-2*x(1)+3*x(2)-11.3*x(3);
f(4)=x(1)*x(1)+x(2)*x(2)+x(3)*x(3)-1;
解为:
0.00109 0.000605 -6.296e-05