怎么用matlab解这个方程组
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:数学作业 时间:2024/07/30 14:42:33
怎么用matlab解这个方程组
先是三个方程
F(x,y,z)=log(((x^2+y^2+(z-5)^2)^0.5)-y)-log(((x^2+y^2+(z-5)^2)^0.5)+y);
D(y,x,z)=log(((x^2+y^2+(z-5)^2)^0.5)-y)-log(((x^2+y^2+(z-5)^2)^0.5)+y); (第二个和第一个很类似,只是变量的位置发生了改变)
G(x,y,z)=atan((x/y*(z-5)/(x^2+y^2+(z-5)^2)^0.5));
假设F,D,G各有一值,如1,1,1.
怎么求解x,y,z.
先是三个方程
F(x,y,z)=log(((x^2+y^2+(z-5)^2)^0.5)-y)-log(((x^2+y^2+(z-5)^2)^0.5)+y);
D(y,x,z)=log(((x^2+y^2+(z-5)^2)^0.5)-y)-log(((x^2+y^2+(z-5)^2)^0.5)+y); (第二个和第一个很类似,只是变量的位置发生了改变)
G(x,y,z)=atan((x/y*(z-5)/(x^2+y^2+(z-5)^2)^0.5));
假设F,D,G各有一值,如1,1,1.
怎么求解x,y,z.
![怎么用matlab解这个方程组](/uploads/image/z/8280045-45-5.jpg?t=%E6%80%8E%E4%B9%88%E7%94%A8matlab%E8%A7%A3%E8%BF%99%E4%B8%AA%E6%96%B9%E7%A8%8B%E7%BB%84)
我帮你试了试,可以的
function a=qiujie(p)
x=p(1);
y=p(2);
z=p(3);
a(1)=log(((x^2+y^2+(z-5)^2)^0.5)-y)-log(((x^2+y^2+(z-5)^2)^0.5)+y);
a(2)=log(((y^2+x^2+(z-5)^2)^0.5)-x)-log(((y^2+x^2+(z-5)^2)^0.5)+x);
a(3)=atan((x/y*(z-5)/(x^2+y^2+(z-5)^2)^0.5));
clc;clear;
options = optimset('Display','off','TolFun',1e-20,'MaxIter',20000,'MaxFunEvals',10000);
t=fsolve('qiujie',[1,1,1],options)
x=-0.000000000012715;
y=2.227416301455072;
z=-269012.6180821919;
function a=qiujie(p)
x=p(1);
y=p(2);
z=p(3);
a(1)=log(((x^2+y^2+(z-5)^2)^0.5)-y)-log(((x^2+y^2+(z-5)^2)^0.5)+y);
a(2)=log(((y^2+x^2+(z-5)^2)^0.5)-x)-log(((y^2+x^2+(z-5)^2)^0.5)+x);
a(3)=atan((x/y*(z-5)/(x^2+y^2+(z-5)^2)^0.5));
clc;clear;
options = optimset('Display','off','TolFun',1e-20,'MaxIter',20000,'MaxFunEvals',10000);
t=fsolve('qiujie',[1,1,1],options)
x=-0.000000000012715;
y=2.227416301455072;
z=-269012.6180821919;