mathematica 解方程组
mathematica 解方程组
x^2-y=1,x+y^2=0求解此方程组 并应用变量替换验证
什么叫用变量替换验证啊……难道是这样?:
eqn = {x^2 - y == 1,x + y^2 == 0};
sol = Solve[eqn,{x,y}]
eqn /.N@sol请问最后一句是什么意思我以为你的”变量替换验证“是指反代检验,所以就写了这一句,怎么,你要的不是这个?至于“/.(ReplaceAll)”和”N“的含义,你可以看看帮助。我要的好像就是这个 谢谢了我知道那个/.是不是全部替换的意思 但是再往后没读懂T_TReplaceAll是全部替换,N是取数值值,因为这里的结果根式比较复杂,所以这里用这个提高了下运算速度。@是[ ]的简写,也就是说连起来是N[ ]。哦谢谢啦那最后检验的第三个解为什么会出现一个False……好吧,我都没注意到。我运算精度没取够:eqn = {x^2 - y == 1, x + y^2 == 0}sol = Solve[eqn, {x, y}];eqn /. N[sol, 16]取到16位精度就可以了。其实这里最正确的做法是在最后一行使用FullSimplify[eqn /. sol]但是这个的结果根式比较复杂,这样子计算速度太慢了,我不愿等……等下,我想到个满足全部要求的方法了。那就是先避免对原方程组(本质上是个四次方程组)的显式求解(不使用根式表示解,而使用方程表示解),然后单独化出一个显式根式解,再对非显式解去用FullSimplify,这样化简会很快:eqn = {x^2 - y == 1, x + y^2 == 0}sol = Solve[eqn, {x, y}, Quartics -> False]ToRadicals@solFullSimplify[eqn /. sol]