Overview
DynamY is a C++ class library for the simulation of mechanical systems with unilateral contacts and friction, which was developped in the course of a Ph.D. thesis
[Studer 2008]
at the Center of Mechanics (IMES) at the ETH Zurich. In contrast to most software codes, dynamY does not use regularized but setvalued force laws to model the unilateral contacts and friction
[Glocker 1995, Glocker 2001].
The numerical integration is performed using Moreau's timestepping scheme
[Moreau 1988].
Modeling of unilateral contacts and friction
Unilateral contacts and friction can either be modeled by regularized or setvalued force laws. In the following we discuss an example to introduce the topic. Consider a block which can slide or stick on a table, see figure 1 a. The motion of the block is described by the equation of motion, wheras the friction force is unknown and must be specified by a force law, see figure 1 b.
Regularized force laws for friction write the friction force as function of the velocity, see figure 2 a. Doing so, one can eliminate the friction force to obtain an ordinary differential equation. The approach has numerical drawbacks in application. The resulting ordinary differential equations are stiff and require therfore special attention. In addition, oscillations may occur which are induced by the regularization. Also the choice of suitable regularization parameters is a problem. Note in addition that also the sticking case is associated with small velocities, which does not correspond to the physical nature of friction.
A more sophisticated approach which is used by dynamY is the nonsmooth approach, which uses setvalued force laws to model mechanical systems with unilateral contacts and friction. Consider again the block which slides or sticks on the table. The associated setvalued force law for friction is shown in figure 2 b. Regarding the sliding case, the friction force is given, regarding the sticking case, the friction froce is setvalued and determined according to an additional algebraic constraint. To conclude, the nonsmooth approach changes the underlying mathematical structure if required and leads to a proper description of mechanical systems with unilateral contacts and friction. As a consequence of the changing mathematical structure, impacts can occur, and the time evolutions of the positions and the velocities can not be assumed to be smooth anymore. Additional impact equations and impact laws have to be formulated. In order to handle the changing mathematical structure, the setvalued force laws are commonly written as inclusion problems. DynamY reformulates these inclusions as projective equations and solves them iteratively by Jacobi or GaussSeidel techniques. The nonsmooth approach provides a completely new modelling approach for mechanical systems with unilateral contacts and friction, which incorporates also the whole classical mechanics subjected to bilateral constraints. The approach is associated with the classical DAE theory and leads to robust integration schemes.
Numerical integration of nonsmooth models
To main classes of numerical integrators are used for nonsmooth models of mechanical systems with unilateral contacts and friction. The first class of integrators are the eventdriven integrators. These integrators distingush between smooth parts of the motion in which the underlying sytructure of the differential equations does not change, and in events or socalled switching points at which this structure changes, i.e. time instants at which a unilateral contact opens or at which a stick slip transition occurs. A these switching points, the setvalued force (and the additional impact) laws are evaluated in order to obtain a new underlying mathematical structure on which the integration can be continued. Eventdriven integrators are very accurate but are not suitable for systems with many contacts.
So called timestepping integrators are dedicated numerical schemes for mechanical systems with many contacts. The first timestepping integrator was introduced by J.J. Moreau. The integrators do not aim at resolving switching points and are therefore very robust in application. As the integrators work with the integral of the contact forces and not with the forces itself, the methods can handle both nonimpulsive motion and impulsive events like impacts. As a drawback, the accuracy is low. This lack can be fixed by using a stepsize refinement at switching points. Smooth parts of the motion are processed by larger step sizes, and extrapolation methods can be used to increase the integration order [Studer 2008]. DynamY implements the classical Moreau timestepping with constant step size as well as an augmented timestepping integration which uses stepsize adjustment and extrapolation.
dynamY software
DynamY distingushes between the specification of the mechanical system itself and the numerical integration of it. The mechanical system is divided into mechanical subsystems which can interact by setvalued force laws. DynamY provides abstract base classes which characterize these mechanical subsystems, the setvalued interactions as well as external forces. The user is asked to derive its own classes from these abstract base classes in order to describe his problem properly. Objects of these classes are gathered by an administration object which represents the mechanical system. Considering the integration, dynamY distinguishes between onestep integrators which perform one integration with the mechanical system, and simulation classes which combine these integration steps. Both constant and adjusted step size simulations are possible. DynamY also provides a basic parser and methods for generating output files. A well developped documentation is available in the
download section.
