Wolfram mathematica 多变量数学中非线性方程的求解

Wolfram mathematica 多变量数学中非线性方程的求解,wolfram-mathematica,equation,nonlinear-functions,Wolfram Mathematica,Equation,Nonlinear Functions,我有一个很好的方程,我想计算R2。我在用Mathematica。到目前为止,每次我尝试使用Solve[]或Reduce[]时,计算都会花费很长时间。我希望你能帮助我如何处理这种美丽,以便找到解决办法。非常感谢。下面是我的方程式 eq1 = (R2 + ((((p2x - R2*(vac2y + voby)) - (k1x + vox ((vobx ((p2y + R2*(vac2x + vobx)) - k1y) + voby

我有一个很好的方程,我想计算R2。我在用Mathematica。到目前为止,每次我尝试使用Solve[]或Reduce[]时,计算都会花费很长时间。我希望你能帮助我如何处理这种美丽,以便找到解决办法。非常感谢。下面是我的方程式

eq1 = (R2 + ((((p2x - R2*(vac2y + voby)) - (k1x + 
              vox ((vobx ((p2y + R2*(vac2x + vobx)) - k1y) + 
                   voby (k1x - (p2x - R2*(vac2y + voby))))/(-voby*
                    vox + vobx*voy))))^2 + ((p2y + 
              R2*(vac2x + vobx)) - ((p2y + R2*(vac2x + vobx)) - 
              voby ((vox (k1y - (p2y + R2*(vac2x + vobx))) + 
                   voy ((p2x - R2*(vac2y + voby)) - k1x))/(-voby*vox +
                    vobx*voy))))^2)^0.5))/
   v2 == (R1 + (((k1x - (k1x + 
              vox ((vobx ((p2y + R2*(vac2x + vobx)) - k1y) + 
                   voby (k1x - (p2x - R2*(vac2y + voby))))/(-voby*
                    vox + vobx*voy))))^2 + (k1y - ((p2y + 
                R2*(vac2x + vobx)) - 
              voby ((vox (k1y - (p2y + R2*(vac2x + vobx))) + 
                   voy ((p2x - R2*(vac2y + voby)) - k1x))/(-voby*vox +
                    vobx*voy))))^2)^0.5))/v1

我要注意的一点是,使用^(1/2)或Sqrt[]比使用^0.5要好:Mathematica非常小心地区分实数(带小数点)和整数或有理数


即使你做出了改变,我担心得到一个好的解析解的可能性很小。如果你想办法重新排列方程,去掉平方根,你将不得不平方两次,这样你将得到一个四次方程。原则上,它是解析可解的,但只有在特殊情况下,解才足够紧凑,可以使用。

您的表达式为以下形式:

 a + Sqrt[b + c R2 + d R2^2] == e R2 + Sqrt[f + g R2 + h R2^2]
Solve
随时返回四个解决方案。
现在只需根据原始参数(
vox,voy,…
等)计算出这些参数(
a,b,c…
),并替换为
Solve
结果。(我怀疑结果太难实现,无法实际使用。)

最好在。这有点数学和编程的结合,那边的人可能比我们这些脚本孩子更能提供帮助。谢谢你,我来试一试:)你也应该看一下你的方程式,你也许可以手工简化它。乍一看,在我看来,
p2x
只显示为
p2x-R2*(vac2y+voby)
p2y
显示为
p2y+R2*(vac2x+vobx)
,类似的重用块可用于简化等式(在纸上)。