Dynamics with SymPy Mechanics; SciPy 2013 Presentation
Authors: Moore, Jason, University of California at Davis
The SymPy Mechanics package was created to automate the derivation of the equations of motion for rigid body dynamics problems. It has been developed primarily through several Google Summer of Code grants over three years and is capable of deriving Newton's Second Law for non-trivial multi-body systems using a variety of methods: from Newton-Euler, to Lagrange, to Kane. The software provides essential classes based around the concepts of a three dimensional vector in a reference frame which ease the setup and bookkeeping of the tedious kinematics including both kinematic and motion constraints. There are also classes for the automated formulation of the equations of motion based on the bodies and forces in a system. It also includes automated linearization of the resulting non-linear models. The software can be used to solve basic physics problems or very complicated many-body and many-constraint systems all with symbolic results. I will go over the basic software design, demonstrate its use through the API along with several classic physics problems and some not-so-trivial three dimensional multi-body problems.