Thank you all for the input.  This is very helpful.  I would like to get to 
the point where a Lagrangian class can be used to produce equations of 
motion outputted in whatever format is desired.  Allowing the user to 
select the output format would allow him to proceed with simulation in 
whatever manner he is most comfortable/knowledgeable with.  It would also 
be cool to integrate simulation using sympy.odeint for simple problems to 
quickly get from problem statement to simulation.

Elliot

On Tuesday, March 27, 2012 9:09:44 PM UTC-7, Aaron Meurer wrote:
>
> On Mar 27, 2012, at 6:19 PM, Luke <hazelnu...@gmail.com> wrote:
>
> >> 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 look at the already existing code generation module, to see what
> it can do and how it can be utilized.
>
> Aaron Meurer
>
> >
> > 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.
> >
>
>

-- 
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/-/_R42XJLiq-0J.
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.

Reply via email to