I don't see the point at all in removing the ability to represent 
expressions like *C1.x * C1.i + C2.y * C2.j *, it is perfectly desirable 
and has a well-defined behavior under differential operators (since it's an 
addition).

The point I brought up on github, is about the behavior of differential 
operators on expressions like *divergence(C2.y * C1.i) *or *gradient(x*r)* 
where *x* is the Cartesian coordinate, and *r* is the radius in spherical 
coordinates.


   - *gradient(x+r) = gradient(x) + gradient(r) = v_x + v_r * ===> this is 
   straightforward
   
   - *gradient(x*r) = gradient(x*sqrt(x**2+y**2+z**2)) = 
   gradient(r**2*sin(theta)*cos(phi))* ===> what should it return? 
   What if there does not exist a conversion between *x* and *r* (e.g. if 
   scalars of an other coordinate system)?

In my opinion, the second case should raise an exception. It's about 
calculating a differential operator, not about building the expression 
which should always be possible.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/d1ec9288-d464-461a-8fce-75d35ad50dad%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to