求高手用matlab解一个三元的方程组
来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/07/17 17:44:13
求高手用matlab解一个三元的方程组
600+Xcos10+Ysin40-Z=3600
(Zsin65+Ysin40+Xcos10)^2+(Zcos65+Ycos40+Xsin10)^2=5200^2
Xsin60+Ysin80+Z-600=4500
600+Xcos10+Ysin40-Z=3600
(Zsin65+Ysin40+Xcos10)^2+(Zcos65+Ycos40+Xsin10)^2=5200^2
Xsin60+Ysin80+Z-600=4500
我算的你这个解都是无穷大.具体过程如下:
第一步:建立M文件函数myf.m
function f=myf(x)
f(1)=600+x(1)*cos(10)+x(2)*sin(40)-x(3);
f(2)=(x(3)*sin(65)+x(2)*sin(40)+x(1)*cos(10))^2+(x(3)*cos(65)+x(2)*cos(40)+x(1)*cos(10))^2-5200^2;
f(3)=x(1)*sin(60)+x(2)*sin(80)+x(3)-600-4500;
第二步:用不动点迭代法解上述方程.
建立M文件函数mulStablepoint:
function [r,n]=mulStablepoint(x0,eps)
if nargin==1;
eps=1.0e-4;
end
r=myf(x0);
n=1;
tol=1;
while tol>eps
x0=r;
r=myf(x0);
tol=norm(r-x0);
n=n+1;
if(n>100000)
disp('迭代次数太多,可能不收敛!')
return;
end
end
第三步,在命令窗口输入命令
[r,n]=mulStablepoint([0,0,0])
最后得到:
r =
Inf Inf -Inf
n =
8
第一步:建立M文件函数myf.m
function f=myf(x)
f(1)=600+x(1)*cos(10)+x(2)*sin(40)-x(3);
f(2)=(x(3)*sin(65)+x(2)*sin(40)+x(1)*cos(10))^2+(x(3)*cos(65)+x(2)*cos(40)+x(1)*cos(10))^2-5200^2;
f(3)=x(1)*sin(60)+x(2)*sin(80)+x(3)-600-4500;
第二步:用不动点迭代法解上述方程.
建立M文件函数mulStablepoint:
function [r,n]=mulStablepoint(x0,eps)
if nargin==1;
eps=1.0e-4;
end
r=myf(x0);
n=1;
tol=1;
while tol>eps
x0=r;
r=myf(x0);
tol=norm(r-x0);
n=n+1;
if(n>100000)
disp('迭代次数太多,可能不收敛!')
return;
end
end
第三步,在命令窗口输入命令
[r,n]=mulStablepoint([0,0,0])
最后得到:
r =
Inf Inf -Inf
n =
8
求高手用matlab解一个三元的方程组
Matlab解三元方程组问题
求matlab高手帮忙解一个二元方程组,
在matlab中求三元微分方程组的问题
怎么用matlab求一个三元二次函数的最小值?
用matlab解三元三次方程组,牛顿迭代法.求程序,及结果
求matlab三元二次方程组拟合方法
matlab解三元一次符号方程组,出不来需要的结果.
用matlab求解三元二次方程组 ,
求MATLAB高手,帮忙画个三元微分方程组的三条曲线,程序的我写好了(如下),有错误,麻烦帮忙调试,
求matlab高手求一个二元非线性方程组的根,并说明是最大值还是最小值
求MATLAB高手绘制一个方程组 二维图形.