Performance of Automatic Differentiation Tools in the Dynamic Simulation of Multibody Systems
A multibody system (MBS) is an assembly of two or more rigid or flexible bodies (also called elements) imperfectly joined together, with possible relative movement between them. Examples of MBS include robots, heavy machinery, spacecraft, automobile suspensions and steering systems, graphic arts and textile machinery, packaging machinery and machine tools. As forces are applied on an MBS, it undergoes displacements resulting in a change in its geometric configuration.
In order to predict and control the behavior of an MBS, its dynamic behavior is usually simulated. We have used the algorithmic (automatic) differentiation (AD) tools ADIC2 and ADOL-C to provide derivatives for code that simulates different multibody systems. The simulation code in this study requires the solution of a nonlinear system of equations, which are solved here with Newton's method which requires derivatives. Prior to the use of AD, the authors of the code used the finite-difference method to obtain derivatives which dominated the simulation time. While the use of AD provided derivative code is not expected to change the convergence of Newton's method, the goal was to provide efficient derivatives and reduce simulation time. The MBS codes are the most complex that ADIC2 has been applied to and required enhancements to ADIC2. The changes are a necessary stepping stone to providing derivatives for more complex DOE applications. Based on this work, more changes are expected.