contact determination methods for nonsmooth time … · contact determination methods for nonsmooth...

81
Contact determination methods for nonsmooth time-stepping schemes Summer School "Nonsmooth Mechanics: Modeling and Simulation", September 9th-14th 2012, Aussois, France Xavier Merlhiot, CEA, LIST, Interactive Simulation Laboratory [email protected]

Upload: voque

Post on 10-Jun-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

Contact determination methods for nonsmooth

time-stepping schemes

Summer School "Nonsmooth Mechanics: Modeling and Simulation",

September 9th-14th 2012, Aussois, France

Xavier Merlhiot,

CEA, LIST,

Interactive Simulation Laboratory

[email protected]

Page 2: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 2

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 3: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 3

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 4: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 4

The XDE Physics software component Driving applications: industrial virtual prototyping

Page 5: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 5

The XDE Physics software component Driving applications: industrial virtual prototyping

Page 6: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 6

The XDE Physics software component Driving applications: industrial virtual prototyping

Page 7: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 7

The XDE Physics software component Driving applications: simulation for robotics

Page 8: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 8

The XDE Physics software component Driving applications: simulation for robotics

Page 9: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 9

The XDE Physics software component Driving applications: simulation for robotics

Page 10: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 10

The XDE Physics software component Main features (1/2)

XDE = eXtended Dynamics Engine (fully developed by CEA)

XDE Physics = mechanical simulation kernel (C++ SDK)

Current version 4.0

Integrated in several commercial products

from Haption (CEA spin-off)

» IFC (Interactive Fitting for Catia V5),

IPP (Virtools), IFS (Solidworks), RTI (Delmia)

Freely available for non-commercial use

Mixed rigid and deformable multibody systems with intermittent contacts and kinematic constraints

Mechanical setting based on Lie groups

as configuration spaces

» Lagrangian reduction = natural, robust and efficient

treatment of geometric nonlinearities [Chetayev, 1927]

Efficient and robust numerical schemes

» Geometric ([Iserles, 2000]) and nonsmooth

(time-stepping) numerical time integrator

Collision (contact) detection (LMD++)

Page 11: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 11

The XDE Physics software component Main features (2/2)

Kinematic constraints

Between rigid bodies, holonomous

Usual constraints and more specialized ones

Maximal coordinates and/or kinematic reduction

Kinematic loops

Deformable bodies

Geometrically exact 3D beams (with F. Boyer, IRCCyN)

Large displacements (Reissner kinematics)

Small strains

Geometrically exact finite elements

Built-in interaction ports

Visualization (~30-100 Hz)

Space-mouse (~20-100 Hz)

Haptics (~300-2000 Hz)

Page 12: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 12

The XDE Physics software component Co-workers on the XDE Physics library

Jérémie Le Garrec Collision detectors, mesh importers and

pre-processors

Guillaume Saupin Mechanical models, time-stepping

schemes and solvers

Julien Brisset High-level management of robots,

interfaces for control

Page 13: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 13

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 14: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 14

Nonsmooth time-stepping schemes in XDE Numerical schemes for dynamics

Variants of the Moreau-Jean scheme

Measure Differential Inclusion formulation of nonsmooth dynamics

Time-discretized nonsmooth dynamics

Implicit, drift-stabilized, index-2-like scheme (in the sense of [Studer, 2009])

Two-parameter family of schemes

Algebraic inclusion with unknowns

Constraint drift stabilization: we use it with care… and preferably plastic impacts

Page 15: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 15

Nonsmooth time-stepping schemes in XDE Iterative solvers in XDE

Numerical solver based on a Newton loop (variant of the NSGS method [Alart, Curnier, 1991], [Jean, 1999])

At each iteration: linearization of smooth dynamics and contact kinematics

One-Step Nonsmooth Problem: reformulated using a nonsmooth augmented Lagrangian approach

(i.e. with exact penalization, see e.g. [Studer, 2009])

Equivalent projective equation

𝒓 = 𝒑𝒓𝒐𝒙𝑭𝒗𝑹 𝒓 − 𝑹−𝟏 𝑮 𝒓 + 𝒄

𝑮 ∝ 𝑯𝑻 𝒎 −𝟏 𝑯𝒎 = 𝒎 − 𝚫𝒕 𝜽 𝝏𝒗𝒇 − 𝚫𝐭𝟐𝜽𝟐𝝏𝒙𝒇

Resolution by iterative projective Gauss-Seidel-like (SOR-prox) method with splitting

Use of block-diagonal R matrix (blocks extracted from G)

Slightly more efficient (convergence rate of SOR-prox) than just diagonal R

Each block may necessitate regularization (e.g. addition of a spherical term)

Evaluation of 𝒑𝒓𝒐𝒙𝑹 operator on disks (tangential Coulomb's friction) and ellipsoids (approximate

Coulomb-Contensou friction)

Can be seen as optimization problems on smooth manifolds

Resolution using iterative approaches [Absil, Mahony, Sepulchre, 2008]

Stop after one Newton loop linearly implicit scheme

Page 16: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 16

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 17: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 17

Geometrical needs of nonsmooth contact modeling Introduction

Time-stepping methods ([Acary, Brogliato, 2008])

Powerful numerical tools for nonsmooth mechanics

Need “geometric information” about contacts as an input for nonsmooth contact laws

» point contact kinematics : gap function, tangential velocities, twist rate, etc.

Collision detection (contact determination) algorithms

Computer graphics and robotics communities have been the most productive

Algorithms often designed for

» computationally inexpensive contact models:

– penalty, regularized models

– repulsive potentials based on separation distances…

» event-driven integration methods

Naive combination with time-stepping schemes

Risks of severe robustness and/or stability issues

Page 18: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 18

Geometrical needs of nonsmooth contact modeling Non-interference of rigid bodies

• Consider a system of 𝑁 rigid bodies in dimension 𝑑 = 2 or 3

• Generalized coordinates: 𝑞 ∈ ℳ

• For the 𝑖-th rigid body:

• its shape 𝒮𝑖 𝑡 ⊂ ℝ𝑑, compact set, topological dimension 𝑑, “regular” boundary (ex: CAD part)

• its direct geometric model : ℋ𝑖: ℳ × ℝ⟶ 𝑆𝐸 𝑑 , 𝐶2-regular

• its reference configuration : at reference time 𝑡0, ℋi q(t0), t0 = 𝐼

𝒮𝑖 𝑡 = ℋ𝑖 𝑞 𝑡 , 𝑡 𝒮𝑖(𝑡0)

• Set of geometrically admissible configurations 𝑪(𝒕)

Defined by the non-penetration of body shapes:

𝐶 𝑡 = 𝑞 ∈ ℳ,∀ 𝑖, 𝑗 , 𝑖 ≠ 𝑗 ⇒ ℋ𝑖𝑗𝑞, 𝑡 𝒮𝑖 𝑡0 and 𝒮𝑗 𝑡0 have disjoint interiors

ℋ𝑖𝑗𝑞, 𝑡 = ℋ𝑗 𝑞, 𝑡

−1ℋ𝑖 𝑞, 𝑡 is the relative configuration of rigid body 𝑖 w.r.t. rigid body 𝑗

• Contacts areas between bodies 𝑖 and 𝑗 at time 𝑡: “connected components” of 𝜕𝒮𝑖 𝑡 ∩ 𝜕𝒮𝑗 𝑡

• Isolated points : point contacts

• Other areas : conforming contacts

Page 19: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 19

Geometrical needs of nonsmooth contact modeling Non-interference of rigid bodies

• Abstract formulation of perfect unilateral constraint when 𝐶(𝑡) is tangentially regular

𝑓 𝑡 ∈ −𝑁𝐶 𝑡 𝑞 𝑡 or (better) d𝑟 ∈ −𝑁𝑇𝐶 𝑡 𝑞 𝑡 𝑞 + 𝑡

• Important practical case: description of 𝐶(𝑡) by a finite number of constraints 𝑔𝑘:

𝐶 𝑡 = 𝑞 ∈ 𝑀, ∀𝑘 ∈ 1, … , 𝑝 , 𝑔𝑘 𝑞, 𝑡 ≥ 0

• Constraint qualification condition CQ1 ([Acary, Brogliato, 2008]):

∀𝑞 ∈ 𝐶 𝑡 , ∃𝑑 ∈ 𝑇𝑞ℳ,∀𝑘 ∈ 1,… , 𝑝 , 𝑔𝑘 𝑞, 𝑡 = 0 ⇒ 𝛻𝑞𝑔𝑘 𝑞, 𝑡 . 𝑑 > 0

• CQ1 with 𝑔 “sufficiently regular” (at least continuously differentiable) imply that :

• C(t) is tangentially regular

• 𝑁𝐶 𝑡 𝑞 = − 𝛼𝑖𝑝𝑘=1 𝛻𝑞𝑔 𝑞, 𝑡 , 𝛼 ≥ 0, 𝛼 ⊥ 𝑔 𝑞, 𝑡

• Hypothesis : 𝑔𝑘 constraints defined by gap functions associated

to point contacts 𝑃𝑘

This hypothesis is often implicitly made

Geometric prerequisites on body shapes!

Page 20: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 20

Geometrical needs of nonsmooth contact modeling Regularity of body shapes and contact kinematics

Intuitive notion of mechanical gap

Assume that 𝐻∗ ∈ 𝑆𝐸 𝑑 is such that 𝐻∗𝒮𝑖 𝑡0 and 𝒮𝑗 𝑡0 have disjoint interiors

Assume that 𝑃𝑘 is an isolated point of 𝐻∗𝜕𝒮𝑖 𝑡0 ∩ 𝜕𝒮𝑗 𝑡0

The relative gap function 𝑔𝑃𝑘: 𝐻 ∈ 𝑆𝐸 𝑑 ⟶ ℝ should be

1. based on “some kind of signed local distance”

between 𝑯𝓢𝒊 𝒕𝟎 and 𝓢𝒋 𝒕𝟎

2. defined and continuously differentiable

on a whole neighborhood 𝑉 of 𝑯∗

In practice, violation of condition 2 is a major

source of non-convergence of nonsmooth

time-stepping scheme solvers.

Page 21: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 21

Local regularity of the boundary surfaces 𝜕𝒮𝑖 𝑡0 and 𝜕𝒮𝑗 𝑡0

𝐶2-regularity of the surfaces and 𝑃𝑘 isolated implies

» strict relative convexity of the body boundaries at 𝑃𝑘

» non-negative gaps (at least) may receive an adequate

definition

“degenerate point contact cases” imply reintrant corners in 𝑪 𝒕

» Situations where 𝑷𝒌 lies in the medial axis of both shapes (contacting sharp features)

» ex: vertex-vertex or vertex-edge contacts between polyhedra

» “Annoying” singularity in 𝝏𝑪 𝒕 : suitable contact/impact laws are to be invoked [Glocker, 2001]

» One cannot hope for a locally 𝑪𝟏 gap function…

» Normal direction not univocally defined: applying Coulomb’s friction is not obvious…

» From a numerical point of view: reintrant corners in 𝑪 𝒕 “should be avoided”

Geometrical needs of nonsmooth contact modeling Regularity of body shapes and contact kinematics

From [Pfeiffer, Wolfsteiner, 1997]

Page 22: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 22

Geometrical needs of nonsmooth contact modeling Defining point contacts thanks to Local Minimum Distances

Local Minimum Distance (LMD) between two compact subsets 𝐴 and 𝐵 in ℝ𝒅,

with disjoint interiors

Local strict minimizers of Euclidean distance restricted to 𝐴 × 𝐵

LMDs = definition of point contacts which is

Non-ambiguous

Mechanically natural

Gives a “natural” definition of non-negative gaps

Consistent with existing definitions (e.g. [Pfeiffer, Wolfsteiner , 1997])

Regularity of the gap function can be guaranteed by the regularity of the body boundaries

𝐶𝑘-regular boundaries at the neighborhood of the minimizing points will give

𝐶𝑘-regularity to the associated gap function (𝑘 ≥ 1)

What about the definition of negative gaps ?

What about “conforming contacts” ?

Page 23: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 23

Geometrical needs of nonsmooth contact modeling Problem 1 : negative gaps definition issues

Definition of negative gaps should be

Consistent: convexity assumptions needed to avoid locality issues

Objective: it should depend only on the instantaneous relative configuration of the bodies

» Especially: not on history of motion!

Penetration depths between convex sets

𝜋 𝐴, 𝐵 = inf 𝜏 , 𝜏 ∈ ℝ𝑑 , 𝐴 + 𝜏 and 𝐵 have disjoint interiors

In practice, we would like the two following properties to hold

» For (almost) any ℎ in 𝑆𝐸(3), 𝜋 ℎ 𝒮𝑗 𝑡0 , 𝒮𝑖 𝑡0 is attained for a unique translation vector 𝜏∗ ℎ .

» If ℎ 𝒮𝑗 𝑡0 and 𝒮𝑖 𝑡0 interpenetrate for some ℎ, then ℎ 𝒮𝑗 𝑡0 + 𝜏∗ ℎ ∩ 𝒮𝑖 𝑡0 is an isolated

point of ℎ 𝜕𝒮𝑗 𝑡0 + 𝜏∗ ℎ ∩ 𝜕𝒮𝑖 𝑡0 , denoted 𝑎(ℎ).

and use 𝑎 ℎ , 𝑎 ℎ − 𝜏∗ ℎ to define negative gap values, tangent velocities, etc.

[Agarwal et al, 2000]: for convex polyhedra, existence (but non-uniqueness) of minimizers

» Some invoke history ([Baraff, 1989],[Baraff, 1990], [Heidelberger et al., 2004] hysteretic contact kinematics, gap jumps…

Penetration depths between non-convex sets

Locality issues convex decomposition…

Page 24: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 24

Geometrical needs of nonsmooth contact modeling Conforming contacts and point contact selection strategies

In the general case

Large diversity of conforming contact situations…

Main idea for a planar region:

» consider the extreme points of the convex hull of the contacting region in exact conforming contact configuration

» apply point/surface or edge/edge geometric contact models

Main issues

» Number of “selected point contacts” may be infinite (e.g. cylinder resting on a plane selection of a whole circle)

» An exact conforming contact configuration is needed…

Discussion restricted to polyhedra

[Baraff, 1989] : invoke history of movement (instant of first contact) to get to an exact conforming contact situation

» Hysteresis again…

Combination with frictional contact laws

» Arbitrary modeling choice

» No particular mechanical justification

A popular alternative to point contact selection: accumulation over

several Newton steps or time steps robustness issues…

Page 25: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 25

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 26: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 26

Locality of point contacts definition Contact space construction issues: dimensionality and locality

Two separate issues

The number 𝑝 of potential point contacts (pairs of “geometrical features”) may become

very large overload of the time-stepping scheme solver

» N strictly convex rigid bodies (e.g. spheres) N(N−1)

2 potential point contacts

» Two non-convex bodies with “high-frequencies” in their boundaries N1N2 potential contacts

Presence of non-convex bodies difficult to extend the definition domain of the gap

functions to the whole configuration manifold 𝓜

Unavoidable in practice when using

Non-convex complex shapes (CAD models)

and/or numerous bodies (granular materials)

Necessary distance threshold locality of definition of point contacts

Numerically : “vision of contacts” only up to a limited “distance” from a given point 𝑞 ∈ ℳ

Incremental displacements should be controlled not to “miss contacts” (“bullet through

paper” effect) conservative advancement

» When stepping from 𝒒𝒏 to 𝒒𝒏+𝟏

» During intermediary time-stepping solver computations (implicit contact determination,

nonlinear treatment of contact constraints with Newton loops…)

Page 27: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 27

Locality of point contacts definition Time-stepping schemes and continuous collision detection

Standard time-stepping schemes can “jump” from one connected component of 𝐶(𝑡) to

another, even if the definition domains of the constraints extend to the entire configuration

manifold…

𝛁𝐠𝐢 𝐪𝐧

𝛁𝐠𝐣 𝐪𝐧

𝐪𝐧

𝐪𝐧+𝜶

𝑪(𝒕𝒏)

𝐪𝐧

Page 28: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 28

Locality of point contacts definition Control of incremental displacements

Explicit maximum shape point displacement bound on ℳ

𝑠𝑢𝑝 ℋ𝑖 𝑞1, 𝑡 𝑥 −ℋ𝑖 𝑞2, 𝑡 𝑥 , 𝑥 ∈ 𝒮𝑖 𝑡0 ≤ 𝑐𝑖 𝑑 𝑞1, 𝑞2 , with 𝑐𝑖 non-decreasing

Powerful practical tool, but not always easy to build a 𝑐𝑖 function …

For rigid bodies, can be also formulated in relative displacement flavor: 𝑐𝑖,𝑗 functions

Outline of a typical incremental displacements control strategy (conservative advancement)

1. Starting from 𝑞𝑛 ∈ ℳ, consider a candidate time step Δt and an estimate of “next” velocities

𝑣𝑛+𝛼

2. Compute 𝜀 = 𝑐𝑖,𝑗 𝑑 𝑞𝑛, 𝑞𝑛 + Δt 𝛽 𝑣𝑛+𝛼 , with 𝛽 ≥ 1

3. Perform a contact determination query between bodies 𝑖 and 𝑗 with distance threshold 𝜀

4. Use the results set of point contacts (with associated contact kinematics) to perform solver

computations in order to get a new corrected (possibly intermediate) velocity 𝑣𝑛+𝛼′

5. Check whether 𝑐𝑖,𝑗 𝑑 𝑞𝑛, 𝑞𝑛 + 𝛥𝑡 𝑣𝑛+𝛼′ ≤ 𝜀

» If true, then continue solver iterations (if several to be done)

» If false, then discard computations of steps 2 to 5 and take one of two main options:

– Start over from step 1, but with the larger velocity estimate 𝑣𝑛+𝛼′

– Start over from step 1, but with a smaller time step

Page 29: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 29

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 30: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 30

Efficient collision detection methods Diversity of existing methods

Vast literature on the subject

Computer graphics and robotics communities have been the most productive

Several good surveys [Lin, Gottschalk, 1998], [Jiménez et al, 2001],

[Teschner et al., 2005], [Klein, 2005], [Kockara et al, 2007]

Implementation considerations can be found in the book of Ericson [Ericson, 2005]

Collision detection is a broader notion that mechanical contact determination:

depending on their expected outcome, a large variety of methods has been developed

Interference detection: boolean, spatial/temporal localization (instant of first contact,

intersection regions) intensively used in probabilistic geometrical path planning

methods (PRM, RRT, etc.)

Proximity queries: global or local separation distance collision avoidance in robot

control laws…

Penetration depths assembly design, tolerance management systems…

With possible convex decomposition + GJK (Gilbert-Johnson-Keerthi) algorithm

With possible incremental computations : closest features tracking algorithms

(Voronoi regions), popular “incremental manifold” methods in game engines

(accumulation of contacts)…

Page 31: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 31

Efficient collision detection methods Important facts

Collision detection algorithms

belong to the field of computational geometry

may exhibit a relatively high level of complexity in their implementation (especially

parallel and GPU versions)

are (in their backend at least) dedicated to particular shape representation models

may be specialized to rigid or deformable models

may be exposed to robustness issues due to approximations in geometric

computations

In general, implementations details do matter…

Page 32: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 32

Efficient collision detection methods Advantages and drawbacks of discrete shape representation

Contact determination between shapes represented B-rep CAD models can be

Difficult because of

» Non-convexity of the surface patches

» Surface patches may be numerous in industrial models

Computationally expensive

» Iterative methods ([Johnson, Cohen, 1998])

» Approaches based on polynomial root-finding (restricted to special shape patches like

canonical surfaces)

Necessary in some case :

» Especially, when using polyhedral approximation introduce impacts which dramatically

change the dynamics of the system

In some cases, small changes in shapes can induce large modifications in the dynamics

Rolling polyhedron (impacts) vs. “strictly convexified” polyhedron (no impact)…

Convex but nearly flat surface rolling on a plane: contact point may move very fast…

But… using polyhedral representations of shapes opens the door for very efficient collision

detection methods

Page 33: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 33

Efficient collision detection methods “Broad phase” of contact determination

Consider a system of 𝑁 bodies

“Broad phase” of contact determination

Computation of the potentially contacting pairs of bodies or “collision pairs”

Typically considering a distance threshold between bounding volumes of the shapes

Computationally dominant phase for

granular or divided media

most simulations in computer games

Bounding volumes (BV)

A bounding volume for a shape completely covers the shape (inclusion)

Computational cost of the distance (or intersection) between two BVs should be low convex BV

Many BV have been proposed and extensively experimented: spheres, Axis-Aligned Bounding Boxes

(AABB), Oriented Bounding Boxes (OBB), k-Discrete Orientation Polytopes (k-DOP), etc.

Tradeoff to find between computational cost of the distance (or intersection) queries and potential of

shape representation (tight-fitting BV)

𝑁(𝑁 − 1)/2 too large to use brute force (exhaustive testing of the pairs) Spatial partitioning (hashing)

Using a uniform grid: how to choose cell size ?

Other types of spatial localization structures : hierarchical grids, quad- and octrees, BSP trees…

Algorithms extensively presented and discussed in [Ericson, 2005] and Siggraph courses

Page 34: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 34

Efficient collision detection methods “Narrow phase” and “exact phase” of contact determination

Consider a “collision pair” (𝑖, 𝑗) coming from the broad phase of contact determination

Assume that 𝒮𝒊 and 𝒮𝒋 can be decomposed (partitioned) into 𝑵𝒊 and 𝑵𝒋 simpler geometric features

(e.g. triangles, edges and points)

“Narrow phase” of contact determination

Computation of the potentially contacting pairs of geometric features

𝑁𝒊𝑁𝒋 may be too large to use brute force approach (exhaustive contact queries on the feature pairs)

Acceleration by pre-computation of bounding volume hierarchies (BVH) for each shape partition

intro features: binary trees of BV

Traversal (depth-first, possibly parallel) of the resulting quaternary “collision tree” at each query

For deformable bodies, the pre-computed BVH must be updated to follow the deformations

Other efficient localization techniques: grids, octrees, etc.

“Exact phase” of contact determination

Leaf-leaf tests: check whether the potentially contacting pairs of features are effectively in contact

If so, generate contact points (one or more) for each positive leaf-leaf test

Page 35: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 35

Efficient collision detection methods A non exhaustive list of possible time-stepping compatibility issues

Locality of point contact definition

The definition domains of the gap functions may not extend to the whole configuration manifold

This can be taken care of using conservative advancement

Lack of regularity of the gap functions and reintrant corners in 𝐶(𝑡)

Hysteretic contact determination

No open covering of the singularities of the boundary of 𝐶(𝑡)

Singularity located on the boundary of the definition domain of one of the constraints contributing

to this singularity

“Dimer and rod” example

Page 36: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 36

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 37: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 37

The LMD++ contact determination method Goals

Desired properties

Objectivity

Must not produce any “singular point contact” situation

Should yield sufficiently regular gap functions and 𝐻 operator

Should reproduce a point contact selection strategy for conforming contacts

» Without resorting to a reference configuration of “exact conforming contact”

» The point contacts should be univocally defined even if the two rigid bodies are “nearly” in a conforming

contact configuration

» Resorting only to local computations (no explicit conforming contact region computation)

Should run efficiently on industrial models

Should be robust w.r.t. geometrical flaws (meshing artifacts)

Should be able to represent volumes, shells, cables…

Should be extendable to deformable models

Page 38: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 38

The LMD++ contact determination method Representating shapes with dilated simplicial complexes

Simplicial complex

Generalization of triangulations

All integer topological dimensions encompassed

Theoretical background: algebraic topology

𝜺-dilated simplical complex

Minkowski sum with ℬ 𝟎, 𝜺

Every body has a non-zero volume!

This gives

» a thickness to shells

» a radius to circular cross-section beams

Compensative pre-erosion needed for volumes

Page 39: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 39

The LMD++ contact determination method LMDs between dilated simplicial complexes

Basic ideas behind the LMD++ method

Use “retracted LMDs” between the base complexes to define

point contacts between the dilated shapes

All the computations can be based on the base complexes

only, which should never interpenetrate

𝐶1-regular contacting surfaces and gap functions

Tangential direction to contact well defined and continuous

Negative gaps (“smart” penetration depths) up to minus the

sum of the dilations

“Price to pay”

Sharp edges are rounded off

Take care that the contact model and the numerical scheme

and solver should not demand negative gaps of larger

absolute value than the sum of the dilations

» Otherwise augment the dilatations…

» …and/or reduce the time step

Page 40: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 40

The LMD++ contact determination method Using implicit dilation in geometrical modeling

Page 41: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 41

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 42: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 42

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 43: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 43

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 44: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 44

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 45: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 45

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 46: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 46

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 47: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 47

The LMD++ contact determination method Using implicit dilation in physical modeling

Page 48: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 48

The LMD++ contact determination method Compensating dilation with pre-erosion

Page 49: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 49

The LMD++ contact determination method Compensating dilation with pre-erosion

Page 50: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 50

The LMD++ contact determination method Compensating dilation with pre-erosion

Page 51: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 51

The LMD++ contact determination method Compensating dilation with pre-erosion

Page 52: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 52

The LMD++ contact determination method Characterization of LMDs between simplicial complexes

[Johnson, Cohen, 2004]: seminal works, but lacked a good definition of the

Gauss map of a polyhedron

Right theoretical background: convex analysis

The tangent cone to a simplicial complex

Is constant on the relative interior of each simplex

Is a (convex) polyhedral cone

Is numerically computable (gift-wrapping algorithm on the unit shere)

Theorem: Characterization of LMDs between simplicial complexes

1 2

* *

1 2 1 2( ) ( )K K

x x T x T x 1x 2x1

*

1( )K

T x

2

*

2( )K

T x

Page 53: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 53

The LMD++ contact determination method Efficient quasi-LMD computations based on 5D+1 BVH

[Johnson, Cohen, 2004]: partition into triangles

LMD++ [M. 2007]: partition of the complex = collection of all simplex interiors

5D+1 Bounding Volume Hierarchy (“upgraded” version of Johnson’s BVH),

each BV is composed of

a 3-dimensional sphere and an OBB (bound the simplex interiors)

a revolution cone (bounds the polar cones of the tangent cones of the simplex interiors)

a subset of {0, 1, …, 7} (bounds the classes of the simplex interiors)

Page 54: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 54

The LMD++ contact determination method Quasi-LMDs : generic and stable treatment of conforming contacts

Main idea: regularization of LMDs w.r.t. small rotations

Classification of the simplices (pre-computation)

“Enlargement” of the associated normal cones (at run time)

Page 55: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 55

The LMD++ contact determination method Quasi-LMDs : generic and stable treatment of conforming contacts

Main idea: regularization of LMDs w.r.t. small rotations

Classification of the simplices (pre-computation)

“Enlargement” of the associated normal cones (at run time)

Page 56: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 56

The LMD++ contact determination method Key implementation details

In pre-computations

The gift-wrapping algorithm on the unit sphere is the critical point, especially for vertices

in the 3D case

Use approximate inequalities with care…

In node-node tests

Do not forget to include the incremental shape point displacement bound

In leaf-leaf tests

Normal cones are more suitably represented by a minimal generator of the tangent cone

Page 57: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 57

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 58: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 58

A few application examples Interactive assessment of assembly trajectories

Page 59: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 59

A few application examples Interactive assessment of assembly trajectories

Page 60: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 60

A few application examples Interactive assessment of assembly trajectories

Page 61: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 61

A few application examples Interactive evaluation of assembly trajectories

Page 62: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 62

A few application examples Interactive evaluation of assembly trajectories

Page 63: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 63

A few application examples Interactive evaluation of assembly trajectories

Page 64: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 64

A few application examples LMD++: deformable bodies

LMD++ generalized to deformable bodies in [M. 2009]

Some pre-computed data have to be updated at each time step

The main algorithm (contact query) is generic

Page 65: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 65

A few application examples LMD++: deformable bodies

LMD++ generalized to deformable bodies in [M. 2009]

Some pre-computed data have to be updated at each time step

The main algorithm (contact query) is generic

Page 66: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 66

A few application examples LMD++: deformable bodies

LMD++ generalized to deformable bodies in [M. 2009]

Some pre-computed data have to be updated at each time step

The main algorithm (contact query) is generic

Page 67: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 67

A few application examples LMD++: deformable bodies

LMD++ generalized to deformable bodies in [M. 2009]

Some pre-computed data have to be updated at each time step

The main algorithm (contact query) is generic

Page 68: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 68

A few application examples Coulomb-Contensou friction

Page 69: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 69

A few application examples Assembly study of specific measure devices (with CEA/DAM)

Page 70: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 70

A few application examples Assembly study of specific measure devices (with CEA/DAM)

Page 71: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 71

A few application examples Assembly study of specific measure devices (with CEA/DAM)

Page 72: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 72

A few application examples Assembly study of specific measure devices (with CEA/DAM)

Page 73: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 73

A few application examples

Multibody dynamics with intermittent frictional contacts and haptics

(Internal project with CEA/DEN)

Page 74: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 74

A few application examples

Multibody dynamics with intermittent frictional contacts and haptics

(Internal project with CEA/DEN)

Page 75: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 75

A few application examples

Multibody dynamics with intermittent frictional contacts and haptics

(Internal project with CEA/DEN)

Page 76: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 76

Introduction: the XDE Physics software component

Nonsmooth time-stepping schemes in XDE

Geometrical needs of nonsmooth contact modeling

Locality of point contacts definition

Efficient collision detection methods

The LMD++ contact determination method

A few application examples

Conclusion: perspectives and open issues

Page 77: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 77

Conclusion: perspectives and open issues

Efficient continuous collision detection strategies

Going further than time step / proximity threshold adaptation techniques

Conservative advancement with front tracking (C²A-like)

But: must be compatible with massive models...

Level of details (LOD) on rigid body shapes

Goal: maintain bounded computation costs as velocities grow higher

Main issue: continuity of constraints!

Very similar to adaptive re-meshing with contacts (tying a knot, etc.)

Page 78: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 78

References

[Chetayev, 1927] Nikolai Gur’yevich Chetayev. Sur les équations de Poincaré. In Comptes Rendus de l’Académie des Sciences,

volume 185, pages 1577–1579, 1927.

[Iserles, 2000] Arieh Iserles, Hans Munthe-Kaas, Syvert Paul Nørsett, and Antonella Zanna. Lie group methods. Acta Numerica,

9:215–365, 2000.

[Alart, Curnier, 1991] Pierre Alart and Alain Curnier. A mixed formulation for frictional contact problems prone to Newton like

solution methods. Computer Methods in Applied Mechanics and Engineering, 92(3):353–375, 1991.

[Jean, 1999] Michel Jean. The Non-Smooth Contact Dynamics method. Computer Methods in Applied Mechanics and

Engineering, 177:235–257, 1999.

[Studer, 2009] Christian Studer, Numerics of Unilateral Contacts and Friction, ser. Lecture Notes in Applied and Computational

Mechanics. Springer, 2009, vol. 47.

[Absil, Mahony, Sepulchre 2008] Pierre-Antoine. Absil, Robert Mahony, and Rodolphe Sepulchre, Optimization algorithms on

matrix manifolds. Princeton University Press, 2008.

[Moreau, 1983] Jean-Jacques Moreau. Liaisons unilatérales sans frottement et chocs inélastiques. In Comptes Rendus de

l’Académie des Sciences, volume 296, pages 1473–1476, 1983.

[Acary, Brogliato 2008] Vincent Acary and Bernard Brogliato. Numerical Methods for Nonsmooth Dynamical Systems. Lecture

Notes in Applied and Computational Mechanics. Springer, 2008.

[Pfeiffer, Wolfsteiner, 1997] Friedrich Pfeiffer and Peter Wolfsteiner. Relative kinematics of multibody contacts. In Proceedings of

the International Mechanical Engineering Congress and Exposition, pages 16–21, november 1997.

[Glocker, 2001] Christoph Glocker. Impacts with global dissipation index at reentrant corners. In Proceedings of the 3rd Contact

Mechanics International Symposium, pages 45–52, 2001.

Page 79: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 79

References

[Agarwal et al, 2000] Pankaj K. Agarwal, Leonidas J. Guibas, Sariel Har-Peled, Alexander Rabinovitch, and Micha Sharir.

Penetration depth of two convex polytopes in 3D. Nordic Journal of Computing, 7(3):227–240, 2000.

[Baraff, 1989] David Baraff. Analytical methods for dynamic simulation of non-penetrating rigid bodies. Computer Graphics,

23(3):223–232, 1989.

[Baraff, 1990] David Baraff. Curved surfaces and coherence for non-penetrating rigid body simulation. Computer Graphics,

24(4):19–28, 1990.

[Heidelberger et al., 2004] Bruno Heidelberger, Matthias Teschner, Richard Keiser, Matthias Müller, and Markus H. Gross.

Consistent penetration depth estimation for deformable collision response. In Proceeding of the Vision, Modeling, Visualization

Conference 2004 (VMV’04), pages 339–346, 2004.

[Lin, Gottschalk, 1998] Ming C. Lin and Stefan Gottschalk. Collision detection between geometric models: A survey. In

Proceedings of the IMA Conference on Mathematics of Surfaces, pages 33–52, 1998.

[Jiménez et al, 2001] Pablo Jiménez, Federico Thomas, and Carme Torras. 3D collision detection: a survey. Computers &

Graphics, 25(2):269–285, 2001.

[Teschner et al., 2005] Matthias Teschner, Stefan Kimmerle, Bruno Heidelberger, Gabriel Zachmann, Laks Raghupathi, Arnulph

Fuhrmann, Marie-Paule Cani, François Faure, Nadia Magnenat-Thalmann, Wolfgang Straßer, and Pascal Volino.

[Klein, 2005] Collision detection for deformable objects. Computer Graphics Forum, 24(1):61–81, 2005. Jan Klein. Efficient

Collision Detection for Point and Polygon Based Models. PhD thesis, University of Paderborn, Germany, 2005.

[Kockara et al, 2007] S. Kockara,T. Halic, K. Iqbal, C. Bayrak and R. Rowe. Collision detection: A survey, Systems, Man and

Cybernetics, 2007. ISIC. IEEE International Conference on, pp.4046-4051, 2007.

Page 80: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 80

References

[Ericson, 2005] Christer Ericson. Real Time Collision Detection. Morgan Kaufmann Publishers, Elsevier, 2005.

[Johnson, Cohen, 1998] David E. Johnson and Elaine Cohen. A framework for efficient minimum distance computations. In

Proceeding of the IEEE International Conference on Robotics and Automation (ICRA), pages 3678–3684, 1998.

[Johnson, Cohen, 2004] David E. Johnson and Elaine Cohen. Unified distance queries in a heterogeneous model environment. In

Proceeding of the ASME Design Engineering Technical Conferences (DETC), 2004.

[M., 2007] Xavier Merlhiot. A robust, efficient and time-stepping compatible collision detection method for non-smooth contact

between rigid bodies of arbitrary shape. In Proceedings of the Multibody Dynamics 2007 ECCOMAS Thematic Conference,

2007.

[M., 2009] Xavier Merlhiot. Extension of a time-stepping compatible contact determination method between rigid bodies to

deformable models. In Proceedings of the Multibody Dynamics 2009 ECCOMAS Thematic Conference, 2009.

Page 81: Contact determination methods for nonsmooth time … · Contact determination methods for nonsmooth time-stepping schemes ... • For the -th rigid body: ... Regularity of body shapes

■ 81

Thank you for your attention!

Acknowledgements

Digital Mock-up CAD data courtesy of EADS, Renault and PSA

CEA's Military Applications Division