matlab中solve解方程组
x^2+(y-1)^2+z^2==4x^2+(y+1)^2+z^2==4明显是两个圆,解出来应该是x^2+y^2=3,可是用solve解出来只有两个点(-3^(1/2),...
x^2+(y-1)^2+z^2==4x^2+(y+1)^2+z^2==4明显是两个圆,解出来应该是x^2+y^2=3,可是用solve解出来只有两个点(-3^(1/2),0,0) (3^(1/2),0,0)请问这是为什么?怎么操作才能得出正确结果?
展开
2个回答
展开全部
一。用matlab 中的solve函数
>>syms x y; %定义两个符号变量;
>>[x ,y]=solve('y=2*x+3','y=3*x-7');%定义一个 2x1 的数组,存放x,y
>>x
>>x=10.0000
>>y
>>y=23.0000
二。用matlab 中的反向斜线运算符(backward slash)
分析:
方程组可化为
2*x-y=-3;
3*x-y=7;
AX=B (*)
A=[2,-1;3,-1]; B=[-3,7];
X=A\B %可以看成将(*)式左边都除以系数矩阵A
>>A=[2,-1;3,-1];
>>B=[-3,7];
>>X=A\b
X =
10.0000 % x = 10.0000
23.0000 % y = 23.0000
>>syms x y; %定义两个符号变量;
>>[x ,y]=solve('y=2*x+3','y=3*x-7');%定义一个 2x1 的数组,存放x,y
>>x
>>x=10.0000
>>y
>>y=23.0000
二。用matlab 中的反向斜线运算符(backward slash)
分析:
方程组可化为
2*x-y=-3;
3*x-y=7;
AX=B (*)
A=[2,-1;3,-1]; B=[-3,7];
X=A\B %可以看成将(*)式左边都除以系数矩阵A
>>A=[2,-1;3,-1];
>>B=[-3,7];
>>X=A\b
X =
10.0000 % x = 10.0000
23.0000 % y = 23.0000
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询