matlab solve解方程问题

syms x1 y1 x2 y2 a1 b1 a2 b2 x y
r=solve(((x-x1)./a1).^2 +((y-y1)./b1).^2 ==1, ((x-x2)./a2).^2 +((y-y2)./b2).^2 ==1,x,y)
为毛算出来 出现一个z1?(下面是matlab运算结果)

ps:我试验了下,如果把两个椭圆的长短半轴都写成a b 方程就有解了(下面代码)..这是为什么呢?

r.y=z1
r.x=-(1.0*(a1^2*b1^2*b2^2 - 1.0*a1^2*b2^2*y1^2 + 2.0*a1^2*b2^2*y1*z1 - 1.0*a1^2*b2^2*z1^2 - 1.0*a2^2*b1^2*b2^2 + a2^2*b1^2*y2^2 - 2.0*a2^2*b1^2*y2*z1 + a2^2*b1^2*z1^2 - 1.0*b1^2*b2^2*x1^2 + b1^2*b2^2*x2^2))/(2.0*b1^2*b2^2*x1 - 2.0*b1^2*b2^2*x2)

表达式都不正确,解出来居然还有X、Y,那方程到底是解了,还是没解
r=solve(((x-x1)/a1)^2 +((y-y1)/b1)^2-1,((x-x2)/a2)^2 +((y-y2)/b2)^2-1,'x','y')追问

大神 你在matlab里试过了吗?你的表达式运算结果跟我的一样一样的,里面还有个z1..

追答

上面你的包含矩阵点乘,居然还有“==”
我试了一下,居然有错误,error

追问

您的程序结果跟我的运行结果一样的..

温馨提示:内容为网友见解,仅供参考
无其他回答

MATLAB的solve函数求非线性解方程或方程组
程序:solution = solve(equation, variable, 'Numeric')运行结果:返回数值解solution不等式处理不仅如此,solve还能处理不等式问题:程序:ineq_sol = solve(inequality, variable)运行结果:得到实数解ineq_sol多变量符号解对于符号解,处理多变量方程同样适用:程序:[x, sol] = solve(symbolic_equations...

matlab求助解方程组
MATLAB中的`solve`函数可以用来解方程组。你可以通过以下方式调用它:`solution = solve`。这里的`[eq1, eq2]`是你的方程组,而`[x, y]`则是你要解的变量。这个函数会返回一个包含所有解的向量或矩阵。4. 查看解 一旦你得到了解决方案,你可以查看它。在MATLAB的命令窗口中键入变量名,然后按En...

matlab的solve用法
Matlab中的solve函数主要针对的是代数方程的求解,尤其是多项式解,但对于非代数方程,如超越方程,其处理能力相对有限,只能给出特定的实数解。不过,solve并非仅限于此,它还能用于符号方程和方程组的求解,例如,你可以通过[x,y]=solve('x^2+y-6','y^2+x-6','x','y')来解一个方程组。在...

matlab的solve用法
sol = solve 其中,`eqn`是要解的方程或表达式,`var`是方程中的变量。例如,求解方程x^2 - 4 = 0的根,可以使用如下命令:matlab syms x; % 定义符号变量x eqn = x^2 - 4; % 定义方程x^2 - 4 = 0 sol = solve; % 解方程得到解集sol 解的结果将被存储在变量sol中。可以通过...

MATLAB solve函数用法
MATLAB solve函数主要应用于求解等式和不等式的解集,包括单变量、多变量以及线性、非线性方程。使用语法包括:S = solve(eqn, var) 或 S = solve(eqn, var, Name, Value) 求解单变量方程。Y = solve(eqns, vars) 或 Y = solve(eqns, vars, Name, Value) 求解包含多个变量的方程。示例包括...

matlab中调用solve函数出错?怎么解决
解决的办法是,定义符号变量lambda,然后把方程写成符号表达式从而代入l(i)、Re的值,再调用solve求解。2、下面的写法 for Re=linspace(4*10^3,10^7,100)Re作为循环控制变量,每次只取一个值,后面用semilogx绘图时,Re只是一个标量。3、使用vpa保留一定精度,得到的结果仍然是sym类型,不是数值类型...

matlab用solve解方程
首先检查solve中第二个式子:,'y*(1-c*sum((k*(y\/x)^k)\/sum(((y\/x)*exp(en-2*pi))^k)))+x*c*sum((k*(y\/x)^k\/sum(((y\/x)*exp(en-2*pi))^k))-fai'是否存在括号匹配的问题(好像有问题输入Maple后,提示有误),请楼主检查后再试试,、楼主要想清楚x,y到底是标量还是...

MATLAB中solve函数的问题
1、首先打开Matlab,直接在命令行输入solve函数,里面加上方程式,如下图所示,这里是一个二元一次方程。2、接着直接回车就可以得到结果了,如下图所示。3、然后solve函数中还可以写两个方程式,如下图所示。4、回车后会得到两个未知数的解,如下图所示。5、还可以先声明变量,然后编写方程式,并在...

怎么用Matlab解方程?
1、打开matlab,首先定义变量x:syms x;2、matlab中solve函数的格式是solve(f(x), x),求解的是f(x) = 0的解。第一个例子,求解最常见的一元二次方程x^2-3*x+1=0:solve(x^2-3*x+1,x),解出的结果用精确的根式表示。3、matlab解出的根不仅包含实根,也包含复根,例如求解三次方程x^...

MATLAB用solve解方程组后如何在程序中调用解的结果?
使用MATLAB的solve函数可以求解方程组,解的结果可以通过赋值给变量来保存。例如,假设我们有以下方程组:x + y = 52x - y = 1 我们可以使用solve函数求解:syms x y[x, y] = solve(x + y == 5, 2*x - y == 1);在程序中,我们可以通过变量x和y来调用解的结果。例如,我们可以将解...

相似回答