It looks to me like “simplify” has lost all derivatives. As you might guess from the code snippet, this was working earlier, but I don’t know what broke it, and I have made some modifications since then. I am using Python 3.7 and SymPy 1.5.
Here is a code snippet:
eq27 = Eq(eq24.lhs + I*eq25.lhs, 0)
print('eq27 after creation:')
print(eq27)
print(latex(eq27))
eq28 = Eq(eq24.lhs - I*eq25.lhs, 0)
eq27 = eq27.simplify()
print('eq27 after simplify 1:')
print(eq27)
print(latex(eq27))
eq28 = eq28.simplify()
eq27 = eq27.subs(Derivative(s/2 + u/2, tau, 2), Derivative(s, tau, 2)/2 + Derivative(u, tau, 2)/2)
eq27 = eq27.subs(Derivative(I*s/2 - I*u/2, tau, 2), I*Derivative(s, tau, 2)/2 - I*Derivative(u, tau, 2)/2)
eq28 = eq28.subs(Derivative(s/2 + u/2, tau, 2), Derivative(s, tau, 2)/2 + Derivative(u, tau, 2)/2)
eq28 = eq28.subs(Derivative(I*s/2 - I*u/2, tau, 2), I*Derivative(s, tau, 2)/2 - I*Derivative(u, tau, 2)/2)
eq27 = eq27.subs(Derivative(s/2 + u/2, tau), Derivative(s, tau)/2+Derivative(u, tau)/2)
eq27 = eq27.subs(Derivative(I*s/2 - I*u/2, tau), I*Derivative(s, tau)/2-I*Derivative(u, tau)/2)
eq28 = eq28.subs(Derivative(s/2 + u/2, tau), Derivative(s, tau)/2+Derivative(u, tau)/2)
eq28 = eq28.subs(Derivative(I*s/2 - I*u/2, tau), I*Derivative(s, tau)/2-I*Derivative(u, tau)/2)
eq27 = eq27.simplify()
print('eq27 after simplify 2:')
print(eq27)
print(latex(eq27))
eq28 = eq28.simplify()
eq29 = eq26
eq29 = eq29.subs(-I*(-s + u)/2, I*s/2 - I*u/2)
eq29 = eq29.subs(Derivative(s/2 + u/2, tau), Derivative(s, tau)/2+Derivative(u, tau)/2)
eq29 = eq29.subs(Derivative(I*s/2 - I*u/2, tau), I*Derivative(s, tau)/2-I*Derivative(u, tau)/2)
eq29 = eq29.subs((I*Derivative(s, tau)/2 - I*Derivative(u, tau)/2)**2, -Derivative(s, tau)**2/4 + Derivative(s, tau)*Derivative(u, tau)/2 - Derivative(u, tau)**2/4)
eq29 = eq29.subs((Derivative(s, tau)/2 + Derivative(u, tau)/2)**2, Derivative(s, tau)**2/4 + Derivative(s, tau)*Derivative(u, tau)/2 + Derivative(u, tau)**2/4)
eq29 = eq29.simplify()
eq29 = eq29.subs(3*s**2/8 + 3*s*u/4 + 3*u**2/8, 3*(s + u )**2/8)
print('eq27:')
print(eq27)
print(latex(eq27))
print('eq28:')
print(eq28)
print(latex(eq28))
print('eq29:')
print(eq29)
print(latex(eq29))
…and here is a piece of the output:
eq24:
Eq(\nu**2*Derivative(x, (\tau, 2)) - 2*\nu*Derivative(y, \tau) - 3*x + x/r**3, 0)
\nu^{2} \frac{d^{2}}{d \tau^{2}} x - 2 \nu \frac{d}{d \tau} y - 3 x + \frac{x}{r^{3}} = 0
eq25:
Eq(\nu**2*Derivative(y, (\tau, 2)) + 2*\nu*Derivative(x, \tau) + y/r**3, 0)
\nu^{2} \frac{d^{2}}{d \tau^{2}} y + 2 \nu \frac{d}{d \tau} x + \frac{y}{r^{3}} = 0
eq26:
Eq(-\nu**2*Derivative(x, \tau)**2/2 - \nu**2*Derivative(y, \tau)**2/2 + 3*x**2/2 + 1/r, C)
- \frac{\nu^{2} \left(\frac{d}{d \tau} x\right)^{2}}{2} - \frac{\nu^{2} \left(\frac{d}{d \tau} y\right)^{2}}{2} + \frac{3 x^{2}}{2} + \frac{1}{r} = C
eq24:
Eq(\nu**2*Derivative(s/2 + u/2, (\tau, 2)) - 2*\nu*Derivative(I*(s - u)/2, \tau) - 3*s/2 - 3*u/2 + (s/2 + u/2)/(s*u)**(3/2), 0)
\nu^{2} \frac{\partial^{2}}{\partial \tau^{2}} \left(\frac{s}{2} + \frac{u}{2}\right) - 2 \nu \frac{\partial}{\partial \tau} \frac{i \left(s - u\right)}{2} - \frac{3 s}{2} - \frac{3 u}{2} + \frac{\frac{s}{2} + \frac{u}{2}}{\left(s u\right)^{\frac{3}{2}}} = 0
eq25:
Eq(\nu**2*Derivative(I*(s - u)/2, (\tau, 2)) + 2*\nu*Derivative(s/2 + u/2, \tau) + I*(s - u)/(2*(s*u)**(3/2)), 0)
\nu^{2} \frac{\partial^{2}}{\partial \tau^{2}} \frac{i \left(s - u\right)}{2} + 2 \nu \frac{\partial}{\partial \tau} \left(\frac{s}{2} + \frac{u}{2}\right) + \frac{i \left(s - u\right)}{2 \left(s u\right)^{\frac{3}{2}}} = 0
eq26:
Eq(-\nu**2*Derivative(I*(s - u)/2, \tau)**2/2 - \nu**2*Derivative(s/2 + u/2, \tau)**2/2 + 3*(s/2 + u/2)**2/2 + 1/sqrt(s*u), C)
- \frac{\nu^{2} \left(\frac{\partial}{\partial \tau} \frac{i \left(s - u\right)}{2}\right)^{2}}{2} - \frac{\nu^{2} \left(\frac{\partial}{\partial \tau} \left(\frac{s}{2} + \frac{u}{2}\right)\right)^{2}}{2} + \frac{3 \left(\frac{s}{2} + \frac{u}{2}\right)^{2}}{2} + \frac{1}{\sqrt{s u}} = C
Loaded '__main__'
Loaded 'runpy'
eq27 after creation:
Eq(\nu**2*Derivative(s/2 + u/2, (\tau, 2)) - 2*\nu*Derivative(I*(s - u)/2, \tau) - 3*s/2 - 3*u/2 + I*(\nu**2*Derivative(I*(s - u)/2, (\tau, 2)) + 2*\nu*Derivative(s/2 + u/2, \tau) + I*(s - u)/(2*(s*u)**(3/2))) + (s/2 + u/2)/(s*u)**(3/2), 0)
\nu^{2} \frac{\partial^{2}}{\partial \tau^{2}} \left(\frac{s}{2} + \frac{u}{2}\right) - 2 \nu \frac{\partial}{\partial \tau} \frac{i \left(s - u\right)}{2} - \frac{3 s}{2} - \frac{3 u}{2} + i \left(\nu^{2} \frac{\partial^{2}}{\partial \tau^{2}} \frac{i \left(s - u\right)}{2} + 2 \nu \frac{\partial}{\partial \tau} \left(\frac{s}{2} + \frac{u}{2}\right) + \frac{i \left(s - u\right)}{2 \left(s u\right)^{\frac{3}{2}}}\right) + \frac{\frac{s}{2} + \frac{u}{2}}{\left(s u\right)^{\frac{3}{2}}} = 0
eq27 after simplify 1:
Eq(3*s/2 + 3*u/2 - u/(s*u)**(3/2), 0)
\frac{3 s}{2} + \frac{3 u}{2} - \frac{u}{\left(s u\right)^{\frac{3}{2}}} = 0
eq27 after simplify 2:
Eq(3*s/2 + 3*u/2 - u/(s*u)**(3/2), 0)
\frac{3 s}{2} + \frac{3 u}{2} - \frac{u}{\left(s u\right)^{\frac{3}{2}}} = 0
eq27:
Eq(3*s/2 + 3*u/2 - u/(s*u)**(3/2), 0)
\frac{3 s}{2} + \frac{3 u}{2} - \frac{u}{\left(s u\right)^{\frac{3}{2}}} = 0
eq28:
Eq(3*s/2 - s/(s*u)**(3/2) + 3*u/2, 0)
\frac{3 s}{2} - \frac{s}{\left(s u\right)^{\frac{3}{2}}} + \frac{3 u}{2} = 0
eq29:
Eq(C, (3*sqrt(s*u)*(s + u)**2 + 8)/(8*sqrt(s*u)))
C = \frac{3 \sqrt{s u} \left(s + u\right)^{2} + 8}{8 \sqrt{s u}}
Finally, I have pasted the LaTeX output into a Word document to make them more readable. (I know that Jupyter is a great tool for this, but Word is a quick and easy way for me to do it.) In case someone doesn’t have Word, I have included a pdf version.
Tom
(Dr. Thomas S. Ligon)
Frohnloher Str. 6a
81475 Muenchen
Germany
Tel. +49(89)74575075
Strangely enough, I get the following results:
>>> from sympy.abc import *
>>> Derivative(x,y)
Derivative(x, y)
>>> Derivative(x**2,y)
Derivative(x**2, y)
>>> Derivative(x**2,x)
Derivative(x**2, x)
>>> Derivative(sin(x),x)
Derivative(sin(x), x)
>>> simplify(Derivative(sin(x),x))
Derivative(sin(x), x)
>>> simplify(Derivative(sin(x), x))
Derivative(sin(x), x)
>>>
I.e. simplify did not evaluate the derivative at all. That was
using Python 3.7 and sympy 1.5.
I tried this because my guess is that in the OP's original
problem, the variables 's' and 'u' had been accidentally
overwritten somewhere earlier in his sympy session- e.g.
s=0
u=0
Then the derivatives would obviously evaluate to zero.
David