The Language for Programming Right-Hand Sides of Mechanical System Motion Equations.

Abstract:

The language is proposed for programming right-hand sides of ordinary differential equations describing motion of complex mechanical systems. The language is developed using the programming language C++ and object-oriented approach. The language supports the standard vector operations (addition, multiplication by a number, inner and outer products) and extends them to the vectors, which are linear forms of mechanical system generalized coordinates. Calculations of vector components are automatically performed for various frames from a given list. The language is intended for equations of a special type. Those equations are equivalent to the Lagrange ones of the second kind, but they are not expressed through derivatives of the system kinetic energy with respect to generalized coordinates and rates. Those equations are expressed through vector dynamic characteristics of the system and its subsystems such as momentum, moment of momentum etc. The language allows to write the motion equations in a compact form, which is translated to the procedure for calculating their right-hand sides.