2017-02-17 3 views
0

Я пытаюсь настроить sympy для вычисления производных. Когда я тестирую его с помощью простого уравнения, я нахожу тот же ответ (равенство истинно между вычислением симпы и моим собственным вычислением). Однако, когда я пытаюсь с более сложными, когда он не работает (я также проверял ответы с помощью вольфрам-альфа).симметричное дифференциальное равенство

Вот мой код:

from __future__ import division 
from sympy import simplify, cos, sin, expand 
from sympy import * 
x, y, z, t = symbols('x y z t') 
k, m, n = symbols('k m n', integer=True) 
f, g, h = symbols('f g h', cls=Function) 

equation = (x**3*y-x*y**3)/(x**2+y**2) 
equation2 = (x**4*y+4*x**2*y**3-y**5)/((x**2+y**2)**2) 


pprint(equation) 
print "" 
pprint(equation2) 


print diff(equation,x) == equation2 

ответ

1

Это обычный "Гоча" в SymPy. Для создания символических равенств вы должны использовать sympy.Eq и не= или == (см. tutorial). Для примера,

Eq(equation.diff(x), equation2).simplify() 

True

Примечание, как указано выше, то вы можете позвонить simplify() для того, чтобы увидеть погоду Eq объект соответствует True или False

Смежные вопросы