Top Banner
INRIA Rhône–Alpes Basics on numerical algorithms for Non Smooth Dynamical Systems Vincent Acary, Frédéric Dubois Tuturial Lecture Third SICONOS General Meeting. September 15-17, Bristol Basics on Numerical algorithms – Third SICONOS General Meeting. – p.1/32
58

Basics on numerical algorithms for Non Smooth Dynamical Systems

Sep 12, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Basics on numerical algorithms forNon Smooth Dynamical Systems

Vincent Acary, Frédéric Dubois

Tuturial Lecture

Third SICONOS General Meeting. September 15-17, Bristol

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.1/32

Page 2: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Outline

➜ 1 – Introdution

1.1 – Scope

1.2 – Linear Complementarity Systems(LCS)

1.3 – Linear Lagrangian systems with Contact and Friction

• 2 – Event–Driven

• 3 – Time–stepping

• 4 – Comparison

• 5 – Illustrations

• 6 – Conclusion

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.2/32

Page 3: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Scope

❈ Only Initial Value Problems (IVP).

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.3/32

Page 4: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Scope

❈ Only Initial Value Problems (IVP).

❈ Two typical examples of Non Smooth Dynamical Systems (NSDS) :• Linear Complementarity Systems• Lagrangian Dynamical Systems with contact and friction

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.3/32

Page 5: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Scope

❈ Only Initial Value Problems (IVP).

❈ Two typical examples of Non Smooth Dynamical Systems (NSDS) :• Linear Complementarity Systems• Lagrangian Dynamical Systems with contact and friction

❈ Two major kinds of time integration scheme :• Event–driven scheme. (the time–steps depend on the events)• Time–stepping scheme (the time–step does not depend on the events)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.3/32

Page 6: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Linear Complementarity systems

❈ The Linear Complementarity System (LCS) may be defined by

8

>

<

>

:

x = Ax + Bλ

y = Cx + Dλ

0 ≤ y ⊥ λ ≥ 0

(1)

with A ∈ IRn×n, B ∈ IRn×m, C ∈ IRm×n, D ∈ IRm×m, for m constraints.In the sequel, we consider the scalar case (m = 1)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.4/32

Page 7: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Linear Complementarity systems

❈ The Linear Complementarity System (LCS) may be defined by

8

>

<

>

:

x = Ax + Bλ

y = Cx + Dλ

0 ≤ y ⊥ λ ≥ 0

(1)

with A ∈ IRn×n, B ∈ IRn×m, C ∈ IRm×n, D ∈ IRm×m, for m constraints.In the sequel, we consider the scalar case (m = 1)

❈ Notion of Relative degree ryλ

Defining the Markov Parameters as

(D, CB, CAB, CA2B, . . .)

the relative degree is the rank of the first non zero Markov Parameter.“The number of differentiation of y to obtain explicitly y in function of λ.”

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.4/32

Page 8: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Linear Complementarity systems (Continued ...)

❈ Relative degree ryλ = 0, D > 0, Trivial case

• The multiplier λ = max(0,−D−1Cx) is a Lipschitz continuous function of x

• The numerical integration may be performed with any standard ODE solvers.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.5/32

Page 9: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Linear Complementarity systems (Continued ...)

❈ Relative degree ryλ = 0, D > 0, Trivial case

• The multiplier λ = max(0,−D−1Cx) is a Lipschitz continuous function of x

• The numerical integration may be performed with any standard ODE solvers.

❈ Relative degree ryλ = 1, D=0, CB > 0

• The multiplier λ is a function of time t, not necessarily continuous, for instance,of bounded variations (BV).

• The numerical integration have to be performed with specific solvers(Event–Driven or Moreau’s Time–stepping)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.5/32

Page 10: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Linear Complementarity systems (Continued ...)

❈ Relative degree ryλ = 0, D > 0, Trivial case

• The multiplier λ = max(0,−D−1Cx) is a Lipschitz continuous function of x

• The numerical integration may be performed with any standard ODE solvers.

❈ Relative degree ryλ = 1, D=0, CB > 0

• The multiplier λ is a function of time t, not necessarily continuous, for instance,of bounded variations (BV).

• The numerical integration have to be performed with specific solvers(Event–Driven or Moreau’s Time–stepping)

❈ Relative degree ryλ = 1, D=0, CB = 0, CAB>0

• The system is not self-consistent : Need a re-initialization mapping• The multiplier λ is a real measure.• Specific solvers (Event–Driven or Moreau’s Time–stepping) as for Lagrangian

dynamical system with constraints

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.5/32

Page 11: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Comparison Illustrations Conclusion

Linear Complementarity systems (Continued ...)

❈ Relative degree ryλ = 0, D > 0, Trivial case

• The multiplier λ = max(0,−D−1Cx) is a Lipschitz continuous function of x

• The numerical integration may be performed with any standard ODE solvers.

❈ Relative degree ryλ = 1, D=0, CB > 0

• The multiplier λ is a function of time t, not necessarily continuous, for instance,of bounded variations (BV).

• The numerical integration have to be performed with specific solvers(Event–Driven or Moreau’s Time–stepping)

❈ Relative degree ryλ = 1, D=0, CB = 0, CAB>0

• The system is not self-consistent : Need a re-initialization mapping• The multiplier λ is a real measure.• Specific solvers (Event–Driven or Moreau’s Time–stepping) as for Lagrangian

dynamical system with constraints

❈ Higher Relative degree• The multiplier λ is a distribution of order ryλ − 1.

• Dedicated time-stepping integrators

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.5/32

Page 12: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Contact-friction Conclusion

Linear Lagrangian systems with Contact and Friction

❈ Lagrangian dynamical system :

Mq + Cq + Kq = Fext(t) + r (2)

• q ∈ Rn : generalized coordinates vector.

• M ∈ IRn×n : the inertia matrix• K ∈ IRn×n and C ∈ IRn×n : the stiffness and damping matrices,• Fext(t) : R 7→ R

n : given external force,• r ∈ R

n is the force due the nonsmooth law.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.6/32

Page 13: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Contact-friction Conclusion

Linear Lagrangian systems with Contact and Friction

❈ Lagrangian dynamical system :

Mq + Cq + Kq = Fext(t) + r (2)

• q ∈ Rn : generalized coordinates vector.

• M ∈ IRn×n : the inertia matrix• K ∈ IRn×n and C ∈ IRn×n : the stiffness and damping matrices,• Fext(t) : R 7→ R

n : given external force,• r ∈ R

n is the force due the nonsmooth law.

❈ Linear relations.• Kinematical laws from the generalized coordinates to the local coordinates at

contact.y = H

Tq + b, y = H

Tq

Mapping H : change of frame• By duality,

r = Hλ

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.6/32

Page 14: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Contact-friction Conclusion

Linear Lagrangian systems with Contact and Friction

❈ Local frame at contact : (n, t)

y = ynn + yt, y = ynn + yt

λ = λnn + λt,

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.7/32

Page 15: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Contact-friction Conclusion

Linear Lagrangian systems with Contact and Friction

❈ Local frame at contact : (n, t)

y = ynn + yt, y = ynn + yt

λ = λnn + λt,

❈ Unilateral contact :

0 ≤ yn ⊥ λn ≥ 0 ⇐⇒ −λn ∈ ∂ΦIR+(yn)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.7/32

Page 16: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Contact-friction Conclusion

Linear Lagrangian systems with Contact and Friction

❈ Local frame at contact : (n, t)

y = ynn + yt, y = ynn + yt

λ = λnn + λt,

❈ Unilateral contact :

0 ≤ yn ⊥ λn ≥ 0 ⇐⇒ −λn ∈ ∂ΦIR+(yn)

❈ Coulomb’s Friction, µ Coefficient of friction

(

yt = 0, ‖λt‖ ≤ µλn

yt 6= 0, λt = −µλnsign(yt)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.7/32

Page 17: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event-Driven Time-stepping Contact-friction Conclusion

Linear Lagrangian systems with Contact and Friction

❈ Local frame at contact : (n, t)

y = ynn + yt, y = ynn + yt

λ = λnn + λt,

❈ Unilateral contact :

0 ≤ yn ⊥ λn ≥ 0 ⇐⇒ −λn ∈ ∂ΦIR+(yn)

❈ Coulomb’s Friction, µ Coefficient of friction

(

yt = 0, ‖λt‖ ≤ µλn

yt 6= 0, λt = −µλnsign(yt)

❈ (Newton) Impact law, if necessary, e coefficient of restitution

yn(t+) = −eyn(t−)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.7/32

Page 18: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Outline

✔ 1 – Introdution

➜ 2 – Event–Driven

2.1 – Principle

2.2 – Pseudo-Algorithm

2.3 – Comments

• 3 – Time–stepping

• 4 – Comparison

• 5 – Illustrations

• 6 – Conclusion

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.8/32

Page 19: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Principle

❈ For a set of unilateral constraints :

yα = hα(x) ≥ 0, α = 1 . . . ν

we define the index set of active constraints as :

I = {α, yα = 0}

❈ Event = change in the index set of active constraints

❈ Stages in the time integration scheme:• With the assumption that there is no event in the time interval, (unilateral =

bilateral), a standard time integration is done with any standard ODE solver.• At the end of the time step, one check the constraints with a relevant algorithm

(e.g LCP solvers to avoid Delassus problem)• If the constraints are not satisfied, the switching time is found by an interpolation

and a root finding procedure. At this switching time, both initial conditions andindex set are updated (e.g. LCP solvers at various levels).

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.9/32

Page 20: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Pseudo-Algorithm

�� � � �

� �� � � � �

� � �� � � �

� � � � � � � �

� � � � � �

�� � � � �� � � � � � � � � �

� � � �� � � �� � � � � � � � �

� � � � � � � � � �� � �� � � �

� � � � � � � � � � � � �

!

� � � �� � � �� � � � � � � � "

� � � � "# $ %

& � ' � � � � �� � �

� � � � � � � � �

� � � �� � � � �( � � � �

� � � � � � �

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.10/32

Page 21: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Comments

❈ For NSDS with relative degree ≥ 2, you need to solve an LCP problem in terms ofthe higher derivative of y.For instance, for Lagrangian systems, the unilateral constraints on displacementmust be expressed in terms of the acceleration.

❈ The ODE integration solver must include a relevant treatment of bilateral constraints(DAE solvers) and an accurate root finding procedure.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.11/32

Page 22: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Outline

✔ 1 – Introdution

✔ 2 – Event–Driven

➜ 3 – Time–stepping

3.1 – Principle

3.2 – Reformulation of the Dynamics as a measure differential equation.

3.3 – Reformulation of the constraints as a measure inclusion

3.4 – Discretization of the Dynamics

3.5 – Discretization of the constraints

3.6 – Summary

3.7 – Linear complementarity system

• 4 – Comparison

• 5 – Illustrations

• 6 – Conclusion

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.12/32

Page 23: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Principle

❈ The time-step does not depend on the events.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.13/32

Page 24: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Principle

❈ The time-step does not depend on the events.

❈ The NSDS is reformulated in a consistent way with the respect to the non smoothcharacter of the evolution :• relative degree 0 or 1: ODE with possibly not continuous RHS,• relative degree 2: Measure differential equation (Lagrangian dynamical systems)• Higher Order : Higher Order Sweeping Process

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.13/32

Page 25: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Principle

❈ The time-step does not depend on the events.

❈ The NSDS is reformulated in a consistent way with the respect to the non smoothcharacter of the evolution :• relative degree 0 or 1: ODE with possibly not continuous RHS,• relative degree 2: Measure differential equation (Lagrangian dynamical systems)• Higher Order : Higher Order Sweeping Process

❈ The unknowns are chosen such that only real finite values are approximate:• continuous function f : evaluation at point f(t)

• real measure µ: measure of finite time interval µ((ti, tf ))

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.13/32

Page 26: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Principle

❈ The time-step does not depend on the events.

❈ The NSDS is reformulated in a consistent way with the respect to the non smoothcharacter of the evolution :• relative degree 0 or 1: ODE with possibly not continuous RHS,• relative degree 2: Measure differential equation (Lagrangian dynamical systems)• Higher Order : Higher Order Sweeping Process

❈ The unknowns are chosen such that only real finite values are approximate:• continuous function f : evaluation at point f(t)

• real measure µ: measure of finite time interval µ((ti, tf ))

❈ The constraints are derived with respect to the time and treated at various levels toensure the numerical stability.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.13/32

Page 27: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Reformulation of the Dynamics

❈ Lagrangian dynamical system as a measure differential equation.

Mdv + (Kq(t) + Cv(t)) dt = Fext(t) dt + R

where• dt is the Lebesgue measure on IR

• dv is the Stieltjes measure (Differential measure) associated with the rightcontinuous function v(t) of bounded variations, such that :

dv((a, b]) =

Z

(a,b]dv = v(b+) − v(a+)

• R is a measure due to the non smooth law• q(t) is the absolutely continuous displacement given by :

q(t) = q(t0) +

Z t

t0

v(s) ds

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.14/32

Page 28: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Reformulation of the unilateral constraints

❈ Reformulation of the unilateral constraints in terms of derivatives :

If y(t) = 0, then 0 ≤ y ⊥ λ ≥ 0 (2)

which can be stated equivalently as

−λ ∈ ∂ΨV (q)(y)

where V (q) is the tangent cone of IR+ at q and Ψ the indicator function.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.15/32

Page 29: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Reformulation of the unilateral constraints

❈ Reformulation of the unilateral constraints in terms of derivatives :

If y(t) = 0, then 0 ≤ y ⊥ λ ≥ 0 (2)

which can be stated equivalently as

−λ ∈ ∂ΨV (q)(y)

where V (q) is the tangent cone of IR+ at q and Ψ the indicator function.

❈ If λ is a measure, the inclusion is extended considering the Radon-Nykodymderivative

λ′(t) =

dν∈ ΨV (q)(y)

where dν is a nonnegative measure and λ is absolutely continuous with respect todν

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.15/32

Page 30: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the Dynamics

❈ Given a subdivision of a time interval, {t0, t1, . . . , ti, . . . , tN}, we evaluate of themeasure differential equation on a time interval (ti, ti+1] of length h :

Mdv((ti, ti+1]) =

Z

(ti,ti+1]M dv = M(v(t+i+1) − v(t+i ))

M(v(t+i+1) − v(t+i )) = −

Z ti+1

ti

Kq(t) + Cv(t) dt +

Z ti+1

ti

Fext(t) dt +

Z

(ti,ti+1]R

❈ Evaluation of the displacement

q(ti+1) = q(ti) +

Z ti+1

ti

v(s) ds

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.16/32

Page 31: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the Dynamics Continued

❈ The measure R((ti, ti+1]) of the time-interval (ti, ti+1] is kept as primary unknown :

Ri+1 = R((ti, ti+1])

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.17/32

Page 32: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the Dynamics Continued

❈ The measure R((ti, ti+1]) of the time-interval (ti, ti+1] is kept as primary unknown :

Ri+1 = R((ti, ti+1])

❈ Interpretation : The measure R may be decomposed as follows :

R = Ra dt + Rs

where Ra dt is the abs. continuous part of the measure R and Rs the singular part.• Impulse : If Ra = 0 and Rs = Pδti+1

then Ri+1 = P

• Continuous multiplier : If Ra(t) = f(t) and Rs = 0 then Ri+1 =R ti+1

ti

f(t) dt

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.17/32

Page 33: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the Dynamics

❈ Notations :vi ≈ v(t+i ), qi ≈ q(ti)

❈ Approximation of the integral of functions : θ-method

Z ti+1

ti

Kq(t) + Cv(t) dt ≈ h [θ(Kqi+1 + Cvi+1) + (1 − θ)(Kqi + Cvi)]

Z ti+1

ti

Fext(t) dt ≈ h [θFext(ti+1) + (1 − θ)Fext(ti)]

❈ Evaluation of the displacement: θ-method

qi+1 = qi + h [θvi+1 + (1 − θ)vi]

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.18/32

Page 34: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the Dynamics Continued

❈ Complete set of discrete equations:

8

>

<

>

:

M(vi+1 − vi) = h [θ(Kqi+1 + Cvi+1) + (1 − θ)(Kqi + Cvi)]

+h [θFext(ti+1) + (1 − θ)(Fext(ti)] + Ri+1

qi+1 = qi + h [θvi+1 + (1 − θ)vi]

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.19/32

Page 35: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the Dynamics Continued

❈ Complete set of discrete equations:

8

>

<

>

:

M(vi+1 − vi) = h [θ(Kqi+1 + Cvi+1) + (1 − θ)(Kqi + Cvi)]

+h [θFext(ti+1) + (1 − θ)(Fext(ti)] + Ri+1

qi+1 = qi + h [θvi+1 + (1 − θ)vi]

❈ One step linear system :vi+1 = vfree + hWRi+1

with

W =h

M + hθC + h2θ2K

i

−1

vfree = vi + Wh

−hCvi − hKqi − h2θKvi + h [θFext(ti+1) + (1 − θ)Fext(ti)]

i

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.19/32

Page 36: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the constraints

❈ Discretization of the relations :

yi+1 = HT

qi+1 + b

yi+1 = HT

vi+1

Ri+1 = Hλi+1

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.20/32

Page 37: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the constraints

❈ Discretization of the relations :

yi+1 = HT

qi+1 + b

yi+1 = HT

vi+1

Ri+1 = Hλi+1

❈ Discretization of an unilateral constraint :A natural way :

0 ≤ yi+1 ⊥ λi+1 ≥ 0

in terms of velocityIf y

p ≤ 0, then 0 ≤ yi+1 ⊥ λi+1 ≥ 0

where yp is a prediction of the position at time ti+1, for instance, yp = yi +h

2yi.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.20/32

Page 38: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Discretization of the constraints

❈ Discretization of the relations :

yi+1 = HT

qi+1 + b

yi+1 = HT

vi+1

Ri+1 = Hλi+1

❈ Discretization of an unilateral constraint :A natural way :

0 ≤ yi+1 ⊥ λi+1 ≥ 0

in terms of velocityIf y

p ≤ 0, then 0 ≤ yi+1 ⊥ λi+1 ≥ 0

where yp is a prediction of the position at time ti+1, for instance, yp = yi +h

2yi.

❈ Newton Impact law yei+1 = yi+1 + eyi

If yp ≤ 0, then 0 ≤ y

ei+1 ⊥ λi+1 ≥ 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.20/32

Page 39: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Summary

One step linear problem

(

vi+1 = vfree + hWRi+1

qi+1 = qi + h [θvi+1 + (1 − θ)vi]

Relations

(

yi+1 = HT vi+1

Ri+1 = Hλi+1

Non Smooth Law

8

<

:

If yp = yi +h

2yi

then 0 ≤ yei+1 ⊥ λi+1 ≥ 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.21/32

Page 40: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Summary

One step linear problem

(

vi+1 = vfree + hWRi+1

qi+1 = qi + h [θvi+1 + (1 − θ)vi]

Relations

(

yi+1 = HT vi+1

Ri+1 = Hλi+1

Non Smooth Law

8

<

:

If yp = yi +h

2yi

then 0 ≤ yei+1 ⊥ λi+1 ≥ 0

➜ One step LCP in terms of yei+1 and λi+1 :

yei+1 = H

Tqfree + hH

TWHλi+1 + eyi

yp = yi +

h

2yi

If yp ≤ 0, then 0 ≤ yei+1 ⊥ λi+1 ≥ 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.21/32

Page 41: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Summary

)* +, +- . +/ - , +0 *

10 2 3 4, - , +0 * 0 5 , + 2 6

+* 7- 8 +- * , 0 3 6 8- , 0 8 9

+ , 6 8- , 6 +* , + 2 6

10 2 3 4, - , +0 * 0 5 , : 6 5 8 6 6 9, - , 6

7 5 8 6 6

; 8 6 < += , +0 * 0 5 , : 6 - = , + 7 6

= 0 * 9, 8- +* , 9

>? @ A B @ C ? D ? A E D D B F

C G D HI @ E G @ A DIJ B K D ?

L D G @ M N E CI @ O PQ A DIR @ G A

S* < 0 5 , : 6 9 + 2 4 .- , +0 * T

U VW X Y V UZ [ \Z Z ]

^Z

_ 3 <- , 6 , : 6 9, - , 6 ` +, : , : 6

2 4 ., + 3 . + 6 8

^ W a VZ [b c Y ] de Z [ \Z Z ]

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.22/32

Page 42: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Linear complementarity system

❈ Direct application of a Backward Euler Scheme :

8

>

>

<

>

>

:

xk+1 − xk

h= Axk+1 + Bλk+1

yk+1 = Cxk+1 + Dλk+1

0 ≤ λk+1 ⊥ yk+1 ≥ 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.23/32

Page 43: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Linear complementarity system

❈ Direct application of a Backward Euler Scheme :

8

>

>

<

>

>

:

xk+1 − xk

h= Axk+1 + Bλk+1

yk+1 = Cxk+1 + Dλk+1

0 ≤ λk+1 ⊥ yk+1 ≥ 0

• Relative degree 0 and 1➜ Direct equivalence with the Moreau’s Time-stepping scheme

• Relative degree 2

➜ inconsistency of the variable λk+1 which tends toward +∞ when h −→ 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.23/32

Page 44: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Linear complementarity system

❈ Direct application of a Backward Euler Scheme :

8

>

>

<

>

>

:

xk+1 − xk

h= Axk+1 + Bλk+1

yk+1 = Cxk+1 + Dλk+1

0 ≤ λk+1 ⊥ yk+1 ≥ 0

• Relative degree 0 and 1➜ Direct equivalence with the Moreau’s Time-stepping scheme

• Relative degree 2

➜ inconsistency of the variable λk+1 which tends toward +∞ when h −→ 0

❈ Moreau’s Time–stepping scheme for a relative degree 2:• The primary unknown is Ri+1 = hλk+1,

• The unilateral constraint is set on yk+1

➜ See the illustration on the LCS

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.23/32

Page 45: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Outline

✔ 1 – Introdution

✔ 2 – Event–Driven

✔ 3 – Time–stepping

➜ 4 – Comparison

4.1 – Event–Driven - Advantages and disadvantages

4.2 – Time–stepping - Advantages and disadvantages

4.3 – Time–stepping vs. Event–Driven

• 5 – Illustrations

• 6 – Conclusion

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.24/32

Page 46: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Event–Driven - Advantages and disadvantages

❈ Advantages :• Low cost implementation (re-use of existing ODE solvers).• Higher-order accuracy on free motion.• Pseudo-localisation of the time of events with finite time-step.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.25/32

Page 47: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Event–Driven - Advantages and disadvantages

❈ Advantages :• Low cost implementation (re-use of existing ODE solvers).• Higher-order accuracy on free motion.• Pseudo-localisation of the time of events with finite time-step.

❈ Weaknesses• Numerous events in short time.• Accumulation of impacts.• No convergence proof

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.25/32

Page 48: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Time–stepping - Advantages and disadvantages

❈ Advantages :• No root finding procedure,• Accumulation of impacts & Numerous events in short time.• Convergence proofs (stability and consistency) ➜ Existence and uniqueness

results• Extensible to higher relative degree system

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.26/32

Page 49: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Time–stepping - Advantages and disadvantages

❈ Advantages :• No root finding procedure,• Accumulation of impacts & Numerous events in short time.• Convergence proofs (stability and consistency) ➜ Existence and uniqueness

results• Extensible to higher relative degree system

❈ Weaknesses• low-order accuracy on free motion.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.26/32

Page 50: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Time–stepping vs. Event–Driven

❈ Event–driven schemes are suitable for simulations with :• strong accuracy requirements on the free motion• sparse events• low number of constraints

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.27/32

Page 51: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Time–stepping vs. Event–Driven

❈ Event–driven schemes are suitable for simulations with :• strong accuracy requirements on the free motion• sparse events• low number of constraints

❈ Time–stepping schemes are suitable for simulations with :• dense events and accumulation• high number of constraints

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.27/32

Page 52: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Outline

✔ 1 – Introdution

✔ 2 – Event–Driven

✔ 3 – Time–stepping

✔ 4 – Comparison

➜ 5 – Illustrations

5.1 – Linear complementarity system

5.2 – The Boucing ball example with time–stepping

5.3 – A friction oscillator

• 6 – Conclusion

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.28/32

Page 53: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Linear Complementarity system

Consider the following LCS of relative degree 2:

8

>

>

>

<

>

>

>

:

x1 = x2

x2 = λ

y = x1

0 ≤ y ⊥ λ ≥ 0

with inelastic reinitialization mapping (if y(t) = 0, y(t+) = 0)

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.29/32

Page 54: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Linear Complementarity system

Consider the following LCS of relative degree 2:

8

>

>

>

<

>

>

>

:

x1 = x2

x2 = λ

y = x1

0 ≤ y ⊥ λ ≥ 0

with inelastic reinitialization mapping (if y(t) = 0, y(t+) = 0)

❈ Initial condition x(0−) = (0,−1)T

Backward Euler scheme: xk = (0, 0), ∀k, λ1 =1

h, λk = 0

Moreau’s time stepping: xk = (0, 0), ∀k, λ1 = 1, λk = 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.29/32

Page 55: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Linear Complementarity system

Consider the following LCS of relative degree 2:

8

>

>

>

<

>

>

>

:

x1 = x2

x2 = λ

y = x1

0 ≤ y ⊥ λ ≥ 0

with inelastic reinitialization mapping (if y(t) = 0, y(t+) = 0)

❈ Initial condition x(0−) = (0,−1)T

Backward Euler scheme: xk = (0, 0), ∀k, λ1 =1

h, λk = 0

Moreau’s time stepping: xk = (0, 0), ∀k, λ1 = 1, λk = 0

❈ Initial condition x(0−) = (−1,−1)T

Backward Euler scheme: xk = (k, 1h ), ∀k, λ1 =

1

h2, λk = 0

Moreau’s time stepping: xk = (−1, 0), ∀k, λ1 = 1, λk = 0

Extended Moreau’s time stepping: xk = (0, 0), ∀k, µ1 = 1, λ1 = 1, λk = 0, µk = 0

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.29/32

Page 56: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

The Boucing ball example with time–stepping

8

>

>

>

>

>

<

>

>

>

>

>

:

mq = −mg + λ

y = q

0 ≤ y ⊥ λ ≥ 0

if y(t) = 0,

y(t+) = −ey(t−)

0 1 2 3 4 50.5

0.6

0.7

0.8

0.9

1.0

0 1 2 3 4 5−3

−2

−1

0

1

2

3

Position of the ball vs. Time Velocity of the ball vs. Time

0 1 2 3 4 50

1

2

3

4

5

6

0 1 2 3 4 5−1

0

1

2

3

4

5

0 1 2 3 4 5−1

0

1

2

3

4

5

0 1 2 3 4 5−1

0

1

2

3

4

5

Reaction due to the contact force vs. Time Energy balance vs.time

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.30/32

Page 57: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

A friction oscillator

8

>

>

>

<

>

>

>

:

q + q = sin(ωt) + r

y = q, r = λ(

y = 0, ‖λ‖ ≤ µ

y 6= 0, λt = −µsign(y)

50 55 60

f gf h i j

0

0.5

1

50 55 60 65

f gf h i j

0

0.5

1

24 26 28 30

f gf h i j

0

0.5

1

µ = 0.025 µ = 0.05 µ = 0.1

Position and velocity of the oscillator vs. Time

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.31/32

Page 58: Basics on numerical algorithms for Non Smooth Dynamical Systems

INRIA Rhône–Alpes

Introduction Event–Driven Time–stepping Comparison Illustrations Conclusion

Outline

Further reading:

❈ Event–Driven• F. Pfeiffer & C. Glocker. Multibody Dynamics with Unilateral Contact, John Wiley & Sons, 1996

• M. Abadie, Dynamic Simulation of Rigid bodies: Modelling of Frictional contact, Impact in Mechanical

Systems, analysis and modelling, B. Brogliato ed., LNP 551 Springer Verlag

❈ Time-stepping• J.J. Moreau, Evolution Problem Associated with a Moving Convex Set in a Hilbert Space, Journal of

Differential Equations, pp 347-374 1977

• J.J. Moreau, Unilateral contact and dry friction in finite freedom dynamics, CISM 302, Springer Verlag,

pp 1-82, 1988

• J.J. Moreau, Some numerical methods in multibody dynamics: Application to granular materials,

European Journal of Machanics-A/Solids, pp 93-114, 1994.

Basics on Numerical algorithms – Third SICONOS General Meeting. – p.32/32