Hi,

>  $f(x,y)=(x^3*y-y^3*x)/(x^2+y^2$
> for $(x,y)\nq(0,0) and $f(0,0)=0$
>
> has second-order partial derivatives, $f_{x,y}(0,0)=-1$ and $f_{y,x}
> (0,0)=1$. Note they are not equal. But if use directly
>
> diff(f,x,y).subs({x:0,y:0})

diff() differentiates f and arrives at the expression

In [7]: simplify(f.diff(x, y))
Out[7]: (9*x**4*y**2 - 9*x**2*y**4 + x**6 - y**6)/(3*x**4*y**2 +
3*x**2*y**4 + x**6 + y**6)

Now, the difference is the order of the subs argument. You can do:

In [8]: Out[7].subs({x:0})
Out[8]: -1

In [9]: Out[7].subs({y:0})
Out[9]: 1

Since you pass a dict to subs(), you don't control the order in which
the subs are made. For that, you can use a list or call subs() two
times:

In [10]: Out[7].subs([(y,0), (x,0)])
Out[10]: 1

In [11]: Out[7].subs({y:0}).subs({x:0})
Out[11]: 1

Or the other way:

In [12]: Out[7].subs([(x,0), (y,0)])
Out[26]: -1

In [13]: Out[7].subs({x:0}).subs({y:0})
Out[13]: -1

Hope it helps.

Renato

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to