matlab解4元二次方程组,怎么都算不对.t1=0.0001241;t2=0.0001272;t3=0.0000313;a=0.3;b=0.45;syms x y r c eq1=x^2+(y-b)^2-(r+c*t1)^2;eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;eq3=x^2+y^2-r^2;eq4=(x-a)^2+y^2-(r+c*t3)^2;[x y r c]=solve(eq1,eq4,eq3,eq2,'x',

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/14 09:19:46
matlab解4元二次方程组,怎么都算不对.t1=0.0001241;t2=0.0001272;t3=0.0000313;a=0.3;b=0.45;syms x y r c eq1=x^2+(y-b)^2-(r+c*t1)^2;eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;eq3=x^2+y^2-r^2;eq4=(x-a)^2+y^2-(r+c*t3)^2;[x y r c]=solve(eq1,eq4,eq3,eq2,'x',
xRP_%I $t.IEgb;ɦ*gjq#c+ɽ+^'| id \2+Qrnbhw ɴe}&(FY. *7ZQr^{%(zV!4B'd"Eل-zXV0)/^,BzKZXʜ_Nd[v}l]RprBY˼Kp( vCZKr_ka+ |eH43p<BAYLgU Wj!BHx$Wj輎y@Ӧ38F*oJ =~޽M>6:S׌w 2 \-X 4lweչM7Vp\05>6qj >wO_ŧ'DU-!e">@'H $;EYWv}sq?A:V{#`AkV {[`?_jZQ'$&f%3 7mt,3sHǵԱe#,)J ? >;-S (9m1"`

matlab解4元二次方程组,怎么都算不对.t1=0.0001241;t2=0.0001272;t3=0.0000313;a=0.3;b=0.45;syms x y r c eq1=x^2+(y-b)^2-(r+c*t1)^2;eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;eq3=x^2+y^2-r^2;eq4=(x-a)^2+y^2-(r+c*t3)^2;[x y r c]=solve(eq1,eq4,eq3,eq2,'x',
matlab解4元二次方程组,怎么都算不对.
t1=0.0001241;
t2=0.0001272;
t3=0.0000313;
a=0.3;
b=0.45;
syms x y r c
eq1=x^2+(y-b)^2-(r+c*t1)^2;
eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;
eq3=x^2+y^2-r^2;
eq4=(x-a)^2+y^2-(r+c*t3)^2;
[x y r c]=solve(eq1,eq4,eq3,eq2,'x','y','r','c')

matlab解4元二次方程组,怎么都算不对.t1=0.0001241;t2=0.0001272;t3=0.0000313;a=0.3;b=0.45;syms x y r c eq1=x^2+(y-b)^2-(r+c*t1)^2;eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;eq3=x^2+y^2-r^2;eq4=(x-a)^2+y^2-(r+c*t3)^2;[x y r c]=solve(eq1,eq4,eq3,eq2,'x',
原因很简单,就是返回的参数值是按照你后边的顺序来.solve并没有保证说你结果跟你后边的参数顺序一致.所以改成下边这样:
t1=0.0001241;
t2=0.0001272;
t3=0.0000313;
a=0.3;
b=0.45;
syms x y r c
eq1=x^2+(y-b)^2-(r+c*t1)^2;
eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;
eq3=x^2+y^2-r^2;
eq4=(x-a)^2+y^2-(r+c*t3)^2;
S=solve(eq1,eq4,eq3,eq2);
x=double(S.x);
y=double(S.y);
r=double(S.r);
c=double(S.c);
下边是测试代码(最后的得到是很小的数,就说明成功了,你懂得~)
% test
eq1=x.^2+(y-b).^2-(r+c*t1).^2;
eq2=(x-a).^2+(y-b).^2-(r+c*t2).^2;
eq3=x.^2+y.^2-r.^2;
eq4=(x-a).^2+y.^2-(r+c*t3).^2;
disp(sum(abs([eq1 eq2 eq3 eq4])));