Ich versuche sympy für einige einfache Algebra und Physik zu verwenden. Wenn eine Gleichung definiert, wieGrund Algebra mit sympy: halten Koeffizienten und Variablen zusammen
import sympy as sy
g,h = sy.Symbols("g h")
v = sy.sqrt(2 * g * h)
die Gleichung V bis
erweitert wirdv = sqrt(2) * sqrt(g * h)
es eine Möglichkeit, um anzugeben, dass der Koeffizient „2“ sollte nicht von unter der Wurzel herausgerechnet werden, und die Begriff unter der Quadratwurzel wird beibehalten als "2 * g * h"? Der Grund dafür ist, dass die zugrundeliegende Physik und die Ableitung einer resultierenden Gleichung manchmal viel deutlicher zu sehen sind, wenn die relevanten Koeffizienten nicht ausgeklammert werden.
wäre Ein anderes Beispiel so etwas wie die Bogenlänge in einer Gleichung der Berechnung wie
phi = sy.symbols("phi")
r = sy.symbols("r")
a= r * phi
für die Doppel eines Winkels
phi = sy.pi/4
wie in
a = r * (2 * phi)
die gesammelt wird zu
wenn
a = r * 2 * (sy.pi/4)
könnte klarer zu zeigen, wie das Ergebnis erhalten wurde.
Haben Sie versucht, powsimp()? http://docs.sympy.org/latest/tutorial/simplification.html – gariepy
Ich glaube nicht, powsimp() ist, was ich suche. Es scheint das Gegenteil von dem zu sein, was ich erreichen möchte. – grma0025