Hi,
 

> Something I'd really like to see changed in the vector module, is the 
> dependence of these operators on the coordinate system. That is, you define 
> the *grad, curl, div* operators for every coordinate system. This is not 
> necessary, because *base_scalar*s and *base_vector*s all contain a 
> reference to their coordinate system instance.
>
> In SymPy, remember to access to parameters passed to the constructor with 
> *obj.args*
>

So I did some playing around here and found that when a vector is 
constructed with VectorAdd or VectorMul the system reference is lost in 
obj.arg as you mentioned.  It's still there, just buried in tuples of 
BaseScalar and BaseVector instances.  Should we add a system property to 
the classes for basis dependent classes (basisindependent.py).
 

> They both check out.  Next, something will have to be done for dot 
>> products to check:
>>
>
Dot products are fine... granted one puts parenthesis around them.  For 
example:

>>> r + r * dr & dr

TypeError: r cannot be interpreted correctly


>>> r + r * (dr & dr)

2 * spherical_r


So something will need to be added to the order of operations handler... 
any idea on how to start on this?  Is that an error from *decorators.py*?
 

> 3) grad(fg) --> laplacian(fg) = f laplacian(g) + 2 * grad(f) (dot) grad(g) 
>> + g laplacian(f)
>>
>
Whoops! 
 

> 4) curl(curl(A)) = grad(div(A)) - laplacian(A)
>>
>
> Did you write some code? Did you post it on github? 
>

Following Jason's post I fetched the branch from your repo and started 
doing testing.  I haven't done much coding; I did add the laplacian to 
*functions.py. 
*Should I push to you on a different branch or stop, fork and continue?


>  I'll see if I can get a hold of him and see where he is at (or, if you 
> (*Upabjojr 
>> <https://github.com/Upabjojr>) *keep up with posts, message me on here).
>>
>
> Hello there!
>

Hi back! 

So, I think for now I will focus on adding a system property to the 
BasisDependent(Add)Mul classes and then debug the order of operations 
issue.  Let me know how you would like to handle the push (it should be 
fine to push to you because I'm on a different branch and will have to 
submit a pull request to you anyways).

 

-- 
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/a43cffe0-c8f1-4654-8c3b-ac319a0a66ad%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to