Python 如何用辛代数解双边方程
我想用辛来解以下方程,关于x,g,w 以下是我认为应该编写的代码Python 如何用辛代数解双边方程,python,sympy,Python,Sympy,我想用辛来解以下方程,关于x,g,w 以下是我认为应该编写的代码 from sympy import * w, a, x, g = symbols('w a x, g', real=True) lhs = 1/g*(w-a)**g rhs = 1/(2*g)*(w-x)**g + 1/(2*g)*(w+x)**g solve((lhs,rhs), (x,g,w)) 但这似乎是在试图找到一个数字答案。好吧,你需要意识到sympy的局限性。它可能无法处理这种类型的方程。对于双面,通过求解rhs
from sympy import *
w, a, x, g = symbols('w a x, g', real=True)
lhs = 1/g*(w-a)**g
rhs = 1/(2*g)*(w-x)**g + 1/(2*g)*(w+x)**g
solve((lhs,rhs), (x,g,w))
但这似乎是在试图找到一个数字答案。好吧,你需要意识到sympy的局限性。它可能无法处理这种类型的方程。对于双面,通过求解
rhs-lhs=0
使其成为单面
把你的方程插入WolframAlpha并没有解决它。因此,我非常怀疑辛皮会给你任何有用的东西
嗯,你需要意识到Symphy的局限性。它可能无法处理这种类型的方程。对于双面,通过求解
rhs-lhs=0
使其成为单面
把你的方程插入WolframAlpha并没有解决它。因此,我非常怀疑辛皮会给你任何有用的东西
您可以使用
Eq
创建一个双面方程式:
In [52]: Eq(lhs, rhs)
Out[52]:
g g g
(-a + w) (w - x) (w + x)
───────── = ──────── + ────────
g 2⋅g 2⋅g
当你说你想用“x,g和w”来解时,我不确定我是否理解你的意思。你的意思是你想从其他方面解决a
?如果是这样的话,那么您只需要求解出a
:
In [53]: solve(Eq(lhs, rhs), a)
Out[53]:
⎡ -1 ⎤
⎢ ─── _____________________⎥
⎢ g g ╱ g g ⎥
⎣w - 2 ⋅╲╱ (w - x) + (w + x) ⎦
您可以使用
Eq
创建双面方程式:
In [52]: Eq(lhs, rhs)
Out[52]:
g g g
(-a + w) (w - x) (w + x)
───────── = ──────── + ────────
g 2⋅g 2⋅g
当你说你想用“x,g和w”来解时,我不确定我是否理解你的意思。你的意思是你想从其他方面解决a
?如果是这样的话,那么您只需要求解出a
:
In [53]: solve(Eq(lhs, rhs), a)
Out[53]:
⎡ -1 ⎤
⎢ ─── _____________________⎥
⎢ g g ╱ g g ⎥
⎣w - 2 ⋅╲╱ (w - x) + (w + x) ⎦
嗯,你需要意识到sympy的局限性。它可能无法处理这种类型的方程。至于双面,通过求解rhs-lhs=0使其成为单面。好的,您需要了解Symphy的限制。它可能无法处理这种类型的方程。至于双面,通过求解rhs-lhs=0I使用alpha的免费网络版本使其成为一面。它接受了您的输入,看起来还可以,但时间不够了。分配给免费版本的时间非常有限。@Marichyasana猜猜看,sympy不会解决它。与商业符号数学解算器如Mathematica和Maple相比,它速度非常慢,动力不足。我使用免费的alpha网络版本。它接受了您的输入,看起来还可以,但时间不够了。分配给免费版本的时间非常有限。@Marichyasana猜猜看,sympy不会解决它。与Mathematica和Maple等商业符号数学解算器相比,它速度非常慢,动力不足。