永发信息网

怎么用MATLAB解这个六元方程组呀?急求求大佬解答

答案:3  悬赏:0  手机版
解决时间 2021-02-26 12:00
  • 提问者网友:低吟詩仙的傷
  • 2021-02-25 13:54
怎么用MATLAB解这个六元方程组呀?急求求大佬解答
最佳答案
  • 五星知识达人网友:轻熟杀无赦
  • 2021-02-25 15:17
用solve()可以得到,其求解过程如下:
syms xA yA xB yB xC yC
eq1=25-(xA^2+yA^2);
eq2=25-((xB-5)^2+yB^2);
eq3=9-(xC^2+(yC-6)^2);
eq4=9-((xB-xC)^2+(yB-yC)^2);
eq5=18-((xA-xC)^2+(yA-yC)^2);
eq6=9-((xA-xB)^2+(yA-yB)^2);
s=solve(eq1,eq2,eq3,eq4,eq5,eq6);
xA=s.xA,yA=s.yA,xB=s.xB,yB=s.yB,xC=s.xC,yC=s.yC
运行结果

。。。

追问要求数值解。。。
全部回答
  • 1楼网友:深街酒徒
  • 2021-02-25 16:58
fsolve() 就可以求方程组数值解。如果用 x(1) - x(6) 分别表示 xa, xb, xc, ya, yb, yc 的话,可以这么解:
f1 = @(xa, ya)sqrt(xa.^2 + ya.^2) - 5;
f2 = @(xb, yb)sqrt((xb-5).^2 + yb.^2) - 5;
f3 = @(xc, yc)sqrt(xc.^2 + (yc-6).^2) - 3;
f4 = @(xb, yb, xc, yc)sqrt((xb-xc).^2 + (yb-yc).^2) - 3;
f5 = @(xa, ya, xc, yc)sqrt((xa-xc).^2 + (ya-yc).^2) - 3*sqrt(2);
f6 = @(xa, ya, xb, yb)sqrt((xa-xb).^2 + (ya-yb).^2) - 3;
f = @(x)[
f1(x(1), x(4))
f2(x(2), x(5))
f3(x(3), x(6))
f4(x(2), x(5), x(3), x(6))
f5(x(1), x(4), x(3), x(6))
f6(x(1), x(4), x(2), x(5))
];
x = fsolve(f, [0 0 0 0 0 0])追问[0 0 0 0 0 0]是什么意思呀追答数值解要给个初值,之后它从这点附近开始求方程的解。
  • 2楼网友:酒安江南
  • 2021-02-25 16:30
把每个方程都先开根号,直接代入,简化,后面你就会了追问
能详细点吗?MATLAB我用solve解出的结果是这样,但是yA是y轴的坐标
追答等号两边同时平方呀
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯