Cavendish, 3 is definitely what you should use. 2 isn't made for your use case. There was work on 3 this summer. Look for the pull requests with relevant topics. I'm not sure all has been merged yet.
Feel free to help with any of the printing or other bugs. I opened an issue for the bug in 2 yesterday. It should be easy to fix. Jason moorepants.info +01 530-601-9791 On Thu, Sep 28, 2017 at 5:34 AM, Cavendish McKay <cavendish.mc...@gmail.com> wrote: > Hello, > > I'm using sympy in my upper level undergraduate physics courses, and of > course the subject of how to deal with vectors has come up. As far as I can > tell, there are three fairly reasonable approaches at the moment: > > 1. use 1 x n or n x 1 matrices. Simple vector operations work fine, but > vector calculus requires some additional work on the part of the end user. > > 2. use the physics.mechanics.vector module. We get vector calculus, but > this doesn't support curvilinear coordinates, and there's a bug in the > pretty printer (printing iterables of vectors raises an exception; if this > isn't a known issue, I'd be happy to open an issue on GitHub). Since we > spend a lot of time in spherical and cylindrical coordinates when doing > electricity and magnetism (the course I'm currently teaching), the lack of > curvilinear coordinates is a blow. > > 3. use the vector module. In the 1.1.1 release, curvilinear coordinates > are not officially supported, but can be made to work using private methods > (although one of the Lame coefficients for cylindrical coordinates is > wrong, and I haven't checked to see if this is fixed in the current > master). The pretty-printer for this module doesn't have the same bug as > the physics.mechanics.vector module, but the labeling scheme is > significantly less flexible, and the defaults violate standard > typographical convention by making the base scalars bold face. > > None of these is perfect, but my current favorite is (3). If I understand > correctly, this was a GSoC project. What is its current status? Is the > vector module going to be the right way to do vector fields going forward? > > I'm happy to contribute, if that would be helpful, but I don't want to > step on anyone's toes, and if there's already a clear vision/roadmap I'd > want to be sure that I don't take things in a different direction. > > Cavendish > > -- > 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 https://groups.google.com/group/sympy. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/sympy/9c319390-382d-414a-9392-4f358a7dbce0%40googlegroups.com > <https://groups.google.com/d/msgid/sympy/9c319390-382d-414a-9392-4f358a7dbce0%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- 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 https://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAP7f1AgCSEVB7eEka2qnjOXYMiO4s9fwgx1MFo64abiXmKASnQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.