Section: New Results
Keywords : Multibody Dynamics, Simulation algorithms, Contact, Impact.
Frictionnal contact and impact multibody dynamics
Dealing with three dimensional frictional contact with impacts is a key point for the applications with haptic feedback. The work aims at adapting the outstanding methods in computational mechanics to the real-time constraints induced by Virtual Reality. For efficiency reasons, our work is based on the Non Smooth Contact Dynamics (NSCD) framework introduced by Moreau (1988). Two major advantages of the method can be exhibited for the real-time context: the method uses a time-stepping numerical scheme without explicit event-handling procedure and an unilateral contact impact formulation associated with the 3D Coulomb's friction law.
Most of the existing algorithms are based on an event-driven approach. In this context, a constraint based approach and an impulse based approach are widespread and have proven their efficiencies. Major drawbacks of these approaches remain the treatment of accumulation of events (Zeno-behavior) and a large number of bodies in closed contact. More, the real-time constraint has not been taken into account.
As an alternative to the previous drawbacks, we have chosen to adapt tools of computational mechanics for the real-time simulation of multibody systems, based on the Non Smooth Contact Dynamics (NSCD) framework. The time-stepping scheme is not handicapped by the change of contact status during the simulation. One of the important points is to have a unified treatment of collisions as well as potential, sticking or sliding contacts. It is not necessary to determine the interval of time for which the change of status occurs. Thus each time-step depends only on the geometry, the boundary conditions and the possible nonlinear behavior of the smooth dynamics. Consequently, the time step can be constant and large enough to ensure fast computations. The theoretical results on the convergence of such schemes is also a strong point for this time-integration scheme. Moreover the general character of such a formulation allows to use a large panel of numerical methods for the time-discretized problem.
In a virtual environment, a model of solid is built around two entities. As in CAD, the first model is a geometrical one. The second one is the rigid body model that drives the motion through space. So the treatment of interactions (contact/impact) is composed of two parts: the first concerns geometrical detection, the second concerns the resolution of equations of motion. Once a geometrical interaction has been detected, one has to modify the resolution of the equations of motion for taking this interaction into account and for ensuring non penetration of the concerned solids. The geometrical detection collision algorithm that we have implemented deals with spheres and bricks. It is not a general one because our purpose is to deal with contact and impact phenomena. Improvements are planned aiming at using more general detection algorithms.
The typical algorithm for a contact/impact resolution is presented in figure 5 .
When using a "time-stepping" algorithm, contacts and impacts treatments are unified in the velocities space.The equation of motion is then written as as discontinuous equation expressed in velocities:
where dt is a Lebesgue measure, is the measure of representing the acceleration and d is a positive measure for which earns a measure density and is a density of impulsion. This leads to introduce on a time interval ] ti, ti+ 1] , the unknown that represents a mean contact impulse:
Once this equation of motion is written, one has to determine the impact law. The Signorini contact condition stands for this impact law and is formulated in terms of relative normal velocities. This condition states that, for two initially non-contacting object (at time t0 , the gap ( t0) is greater than zero: ( t0) 0 ) and interpenetrating at time t( ( t) 0 ), the relative normal velocity ( vn ) of the two objects is positive or that the normal contact force ( Rn ) is positive for each tin the time interval I (repulsion):
The Coulomb friction is modeled by a classical law, which states that the norm of the tangential impulsion is always smaller than the norm of the normal impulsion multiplied by the friction coefficient :
These equations are solved by using an iterative Gauss-Seidel algorithm  .
The main advantages of these methods (time-stepping) is that no backwards steps are performed and that the discrimination between contact and impact is no more necessary.
In Figure 6 , we propose a simulation of masonry structures where the objects pack without any vibration.
In Figure 7 , we reproduce the emergence of the big stone in a set of smaller stones, by applying a vibration to the external box.
This work was done by Mathieu Renouf, researcher in post doctoral position, and was equally supported by SIAMES project and BIPOP project (INRIA Rhône/Alpes). We plan to work on the adaptation of the developed algorithms to the haptic interaction with objects in the virtual world.