I would like to elaborate on the remarks already made by Aaron and Jason. There are two general approaches to this project: 1. taking care of the components of the vectors 2. working only on the algebraic properties of the vectors
Approach 1 is what is done obviously in the "matrix" module. Approach 2 is what is done in the "matrix expressions" module. The quantum module, the diffgeom module and the mechanics module take a mix of the two approaches, but in any case they seem to be closer to approach 1. The new tensor canonicalization module that is still a pull request (by Pernici) takes mostly approach 2. I think that you can base your project on any of the following modules: mechanics, diffgeom and quantum. However, given that there are a lot of techniques that are specific to 3D euclidean space I believe the best fit would be to abstract/extend the mechanics module. I would love to see the vector manipulations in `mechanics` abstracted outside of it (however the time-dependence stuff seems quite specific to what they do, so it could be a problem). I think (the others may disagree) that this would be the most valuable formulation of your project. If you follow this suggestion, it would still be very useful for you to study the whole representation framework employed by the quantum module. It has a very neat implementation of abstract hilbert spaces that can be represented in any basis. -- 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 sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. Visit this group at http://groups.google.com/group/sympy?hl=en. For more options, visit https://groups.google.com/groups/opt_out.