import sympy as sym
from IPython.display import display,Math
print('Partial derivatives')
display(Math('f(x,y) = 2xy^2'))
display(Math('\\frac{\\partial f}{\\partial x} = f_x = 2y^2'))
display(Math('\\frac{\\partial f}{\\partial y} = f_y = 4xy'))
from sympy.abc import x,y
f = x**2 + x*y**2
display(Math('\\frac{\\partial f}{\\partial x} = %s' %sym.latex(sym.diff(f,x))))
display(Math('\\frac{\\partial f}{\\partial y} = %s' %sym.latex(sym.diff(f,y))))
Exercise
display(Math('f(x,y) = x^2 + xy^2'))
display(Math('f_x = 2x + y^2'))
display(Math('f_y = 2xy'))
p = sym.plotting.plot3d(f,(x,-3,3),(y,-3,3),title='$f(x,y)=%s$' %sym.latex(f))
p = sym.plotting.plot3d(sym.diff(f,x),(x,-3,3),(y,-3,3),title='$f(x,y)=%s$' %sym.latex(sym.diff(f,x)))
p = sym.plotting.plot3d(sym.diff(f,y),(x,-3,3),(y,-3,3),title='$f(x,y)=%s$' %sym.latex(sym.diff(f,y)))