> For example, I would like to write the functions necessary so that, using > sympy.physics.mechanics, one could use Euler, Lagrange, and possibly other > methods to find the dynamical equations of motion for a system.
Elliot, since the kinematics part of sympy.physics.mechanics is in pretty good shape, I would suggest outlining a Lagrange class, similar in some regards to the Kane class, which would let the user specify all information needed to construct the Lagrangian, and would then generate the equations of motion. Before you think to much about implementation, I think a valuable thing to do would be to write out sample use cases and code sessions which would show how a typical session would flow and would let you think about the interface the Lagrange class would have. Try coming up with a bunch of different interfaces to see what would be the most intuitive to somebody who has their dynamics book opened to chapter on Lagrange's method -- ideally I think you want a pretty close mapping between the math and the code you write to perform that math symbolically. sympy.physics.mechanics needs improvement in the department of code output. If implementing a Lagrange class proved straightforward, I think it would make sense to build a code output class which could take either a Kane object or a Lagrange object, and generate output code in python/C/fortran/matlab/??? format which would then be usable independently from the script you used to derive the equations in. Another idea on this front is to have a member function to the Kane or Lagrange class which could be passed directly to a python ODE integrator like scipy.odeint, eliminating the need to output code to file. This would allow you to derive and simulate all from the same script. This might only be feasible for small problems though since it will likely to be pretty slow. Also, I think it makes sense to first tackle the case where you are dealing with rigid bodies and you obtain ODE's, as opposed to flexible bodies where you obtain PDE's. Once that is complete and works reliably, it makes sense to pursue the flexible body case. I don't think it make sense to pursue the flexible case until after that though, and code output will vary significantly between the two because you obtain PDE's in one case and ODE's in the other. Luke > > > On Tuesday, March 20, 2012 3:55:48 PM UTC-7, Elliot Marshall wrote: >> >> Hello world, >> >> I am a graduate student studying dynamics at UC Davis. We have been using >> a dynamics package for one of my classes that was written by some current >> graduate students in my research group. They have previous experience with >> GSoC developing this dynamics package. The package is by no means completed >> and I would like to work on developing it this summer. Any suggestions on >> how to go about the application process would be greatly appreciated. >> >> Thank you, >> >> Elliot Marshall > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To view this discussion on the web visit > https://groups.google.com/d/msg/sympy/-/50UcUmCEgGYJ. > > To post to this group, send email to sympy@googlegroups.com. > To unsubscribe from this group, send email to > sympy+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/sympy?hl=en. -- "Those who would give up essential liberty to purchase a little temporary safety deserve neither liberty nor safety." -- Benjamin Franklin, Historical Review of Pennsylvania, 1759 -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to sympy@googlegroups.com. To unsubscribe from this group, send email to sympy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.