我正在尝试解决以下系统:
gx:=2*x*exp(x^2+y^2)-4*y
gy:=2*y*exp(x^2+y^2)-4*x
sys:={gx=0,gy=0}:
solve(sys,{x,y})
然后显示以下输出:
{x = 0, y = 0}, {x = RootOf(2*_Z^2-ln(2)), y = RootOf(2*_Z^2-ln(2))}, {x = -RootOf(2*_Z^2-ln(2)-I*Pi), y = RootOf(2*_Z^2-ln(2)-I*Pi)}
第一个“根”(0,0)是正确的,但是我如何删除那个根和Z是什么?是否有可能从中得到正确的答案?
2 回答
这是函数allvalues的一个很好的场景 . 从帮助页面:
但请注意,您没有以这种方式获得所有解决方案 . 解决问题的方法有很多种;要获得所有解决方案,请在solve命令中使用可选参数
allsolutions = true
:如果你运行它,你会看到一个新的变量
_Z1
,它有一个尾随波浪号(~
) - 这个波浪号意味着对变量有假设 . 要看这些假设使用这意味着上述解决方案适用于任何整数
_Z1
. 这些都是您的解决方案,并以预期的方式编写 .您可以使用
fsolve
来获得最终的数值解,