Download simulation of non-smooth mechanical systems with many unilateral

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Exact solutions in general relativity wikipedia , lookup

Derivation of the Navier–Stokes equations wikipedia , lookup

Differential equation wikipedia , lookup

Schwarzschild geodesics wikipedia , lookup

Two-body problem in general relativity wikipedia , lookup

Newton's laws of motion wikipedia , lookup

Equations of motion wikipedia , lookup

Partial differential equation wikipedia , lookup

Transcript
ENOC-2005, Eindhoven, Netherlands, 7-12 August 2005
ENOC-2005, Eindhoven, Netherlands, 7-12 August 2005
ID of contribution 14-093
SIMULATION OF NON-SMOOTH MECHANICAL SYSTEMS
WITH MANY UNILATERAL CONSTRAINTS
Christian Studer
Christoph Glocker
Center of Mechanics
IMES, ETH Zurich
Switzerland
[email protected]
Center of Mechanics
IMES, ETH Zurich
Switzerland
[email protected]
Abstract
The two main methods used to simulate non-smooth
dynamical systems are the event-driven and the timestepping approach. Systems with many non-smooth
constraints can only be handled by time-stepping methods. An example of a simple time-stepping method is
the Moreau midpoint rule. Instead of accelerations, velocity updates are calculated. This leads to inclusions
describing the discretized system. The inclusions are
turned into non-linear equations and solved by an iterative method. This procedure is known as the Augmented Lagrangian Method. In the paper we will treat
the following non-smooth constraints: Unilateral contacts, planar friction contacts and spatial friction contacts. Time-stepping methods are very suited for systems with many unilateral constraints. We will show
an example of thousand balls falling into a funnel. Because common time-stepping algorithms require small
time steps, they are not advisable for systems with just
a few non-smooth constraints. A proposal for a time
step adjustment is given at the end of the paper.
Key words
non-smooth dynamical systems, time-stepping, setvalued force laws, event-driven methods, Augmented
Lagrangian
1 Introduction
A ball falling down to the ground is a simple example of a non-smooth mechanical system with one unilateral contact. In a planar modelling, the ball’s three
degrees of freedom are reduced to two when the ball
touches the ground. If we additionally consider friction, then the degrees of freedom are reduced to one
in the case of sticking. Thus, we have different equations of motion for these different contact configurations. In case of an impact, an impact law must be
applied. Event driven methods (Glocker, 1995) simulate non-smooth systems by separating the motion into
smooth parts and switching points in which the system
1597
equations are changed. These methods are only suited
for systems with few contacts. Time-stepping methods
(Glocker and Studer, to appear; Moreau, 1988) calculate velocity updates instead of accelerations. As a consequence, contact behaviour and impact can be treated
by the same equations. The non-smooth constraints
are modelled by set-valued force laws (Glocker, 2001).
Time-stepping methods allow a robust simulation of
dynamical systems with many unilateral contacts. As
an example we show thousand balls falling down a funnel. Time-stepping methods require an overall fixed
small time step to resolve the switching points of the
system. Thus mechanical systems with few contacts
must also be treated with a very small time step. A way
out of this problem is a time step adjustment.
The discrete formulation of a non-smooth system can
be written as inclusions. These inclusions are turned
into non-linear equations, which can be solved by an
iterative method. This procedure is known as the Augmented Lagrangian Method (Alart and Curnier, 1991;
Leine and Nijmeijer, 2004).
2 Description of a non-smooth system
A non-smooth mechanical system without impacts
but with n non-smooth constraints can be described
by the equation of motion and n set-valued force
laws. In case of an impact, an impact equation together with n set-valued impact laws has to be stated
(Glocker, 1995; Glocker, 2001; Glocker and Studer, to
appear). For simplicity we will exclude an explicit dependency of the dynamical system on time t.
2.1 Equation of motion
The equation of motion is
u̇ = M−1 (h +
n

Wi λi ),
i=1
q̇ = u.
(1)
We denote by M = M(q(t)) the positive definite mass
matrix, by q = q(t) the generalized coordinates and
by u = u(t) the generalized velocities. All bilateral constraints of the system are taken into account by
the generalized coordinates q (Lagrange II). The vector
h = h(q(t), u(t)) contains all external and gyroscopic
forces. The set-valued force laws are considered by a
Lagrange I formulation of the equation of motion. We
denote the contact forces of the i-th non-smooth constraint by λi = λi (t), the corresponding generalized
force directions by Wi = Wi (q(t)).
2.2 Set-valued force laws
The set-valued force laws are described by normal
cones NC to a set C. The following sets C are used
C = R+
0,
C = S2 (a) = {x ∈ R | |x| ≤ a},
C = S3 (a) = {x ∈ R2 | ||x|| ≤ a}.
(2)
The normal cones for these selected sets C are
½
+
0 if x ∈ R+
0 /∂R0
+
+
0
−R0 if x ∈ ∂R0
½
0 if x ∈ S2 (a)/∂S2 (a)
NS2 (a) (x) =
x
R+
0 |x| if x ∈ ∂S2 (a)
½
0
if x ∈ S3 (a)/∂S3 (a)
NS3 (a) (x) =
x
R+
0 ||x|| if x ∈ ∂S3 (a).
NR+ (x)
=
0
i ∈ PN ,
i ∈ PN .
i ∈ PT 2 .
2.3 Impact equation
In case of an impact, the equation of motion (1) is not
applicable due to the velocity jump from the pre-impact
velocity u− to the post-impact velocity u+ . This jump
requires infinitely large contact forces λi . Therefore
we integrate the equation of motion over the instantaR t+
neous impact time t− and arrive at the impact equations
u+ − u− = M−1
−
q − q = 0.
(4)
(5)
i ∈ PT 3 . (6)
The scalar ai = ai (t) is the maximum friction force
in the i-th friction contact. Note that we treat the unilateral contact j ∈ PN and the corresponding friction
contact i ∈ PT 2,3 as two contacts, so ai = µλj . Introducing the maximum friction force ai instead of µλj
allows more flexibility.
+
Note that the set-valued force law of a unilateral contact formulated on velocity level is only applicable if
gi = 0. For a planar friction contact, the displacement function gi is the tangential displacement and γi
is the relative contact velocity in tangential direction.
The corresponding set-valued force law is defined on
velocity level
−γi = −wi> q̇ ∈ NS2 (ai ) (λi )
−γ i = −Wi> q̇ ∈ NS3 (ai ) (λi )
(3)
For each contact we define a displacement function
gi = gi (q(t)). The time derivative ġi of this function is
γi = γi (q(t), u(t)) almost everywhere. We introduce
the set PN of all unilateral contacts, the set PT 2 of all
planar friction contacts and the set PT 3 of all spatial
friction contacts. The contact i can either be a unilateral contact i ∈ PN , a planar friction contact i ∈ PT 2
or a spatial friction contact i ∈ PT 3 . In the case of
a unilateral contact, the function gi is the normal distance between the contact points, and γi is the relative
contact velocity in normal direction. The corresponding set-valued force law on displacement and velocity
level is
−gi
∈ NR+ (λi )
0
−γi = −wi> q̇ ∈ NR+ (λi )
For spatial friction, the relative tangent contact velocity
γ i and the contact forces λi are planar vectors in the
tangent plane. They can be described in an arbitrary
tangential coordinate system (t1 , t2 ). The set-valued
force law on velocity level is
n
X
Wi Λi ,
i=1
(7)
The impulsive forces Λi are obtained by integrating the
infinitely large contact forces λi over the instantaneous
impact time.
Λi =
Ai =
R t+
−
λi dt,
t−
ai dt.
Rtt+
(8)
A more detailed explanation can be found in (Glocker
and Studer, to appear). Further we have to define impact laws to obtain a relation between the impulsive
forces Λi and the relative kinematics.
2.4 Newton’s impact law
The Newton impact law for a unilateral contact, a planar friction contact and a spatial friction contact can be
expressed in the normal cone formulations:
−(γi+ + εi γi− ) ∈ NR+ (Λi )
0
−(γi+ + εi γi− ) ∈ NS2 (Ai ) (Λi )
−(γ i+ + εi γ −
i ) ∈ NS3 (Ai ) (Λi )
i ∈ PN ,
i ∈ PT 2 ,
i ∈ PT 3 .
(9)
The relative contact velocity before the impact is γ −
i ,
the relative contact velocity after the impact is γ +
i .
The restitution coefficient εi lies between zero and one.
Note that the impact law for a unilateral contact is only
valid if gi = 0.
1598
2.5 Event-driven methods
A common method used to simulate non-smooth systems are the event-driven methods. The idea is to detect all points in time for which the dynamical system
changes, for example points for which an impact occurs
or for which a friction contact starts to slide. Points for
which such events happen are called switching points.
The period between these switching points can be described by a common smooth formulation and can be
treated classically. Reaching a switching point, the further behaviour of the system is analyzed with the methods of non-smooth mechanics. In case of an impact, the
impact equations (7) and the impacts laws (9) are evaluated to obtain the new initial conditions. Analyzing the
equation of motion (1) and the set-valued force laws
(4-6), the further contact state can be determined and a
new smooth formulation for the further integration can
be stated. Event driven methods are complicated, because the mechanical system has to be rearranged for
the different smooth periods. The treatment of a system with many switching points or even accumulating
switching points by event-driven methods is not advisable.
define the impulsive forces 1
Rt
Λ̂i = tBE λi dt,
R tE
Âi = tB ai dt.
The mass matrix M and the matrix of the generalized
force directions Wi are treated to be constant in the
time interval [tA , tB ]. By the index M we denote the
midpoint time. We define
MM = M(qB + ∆t
2 uB ),
WM i = Wi (qB + ∆t
2 uB ).
uE − uB =
qE − qB =
R tE
M−1
M ( tB
R tE
tB
n
X
h dt +
WM i Λ̂i ),
i=1
3.1 Discrete equation of motion
The equation of motion (1) is integrated over a finite
time interval ∆t = tE − tB :
uE − uB =
qE − qB =
R tE
tB
R tE
tB
M−1 (h +
n
X
i=1
Wi λi dt),
(13)
u dt.
The two remaining integrals are approximated as
RttBE
tB
h dt = hM ∆t,
u dt =
uE +uB
2
(14)
∆t,
with
hM = h(qB +
∆t
uB , uB ).
2
(15)
Thus the discrete form of the equation of motion according to Moreau’s midpoint rule is
uE = uB + M−1
M (hM ∆t +
3 Discretization
In this section we will show one possible discretization of a non-smooth mechanical system. The so called
time-stepping methods merge the equation of motion
and the impact equation. We will discuss the timestepping method known as Moreau’s midpoint rule
(Moreau, 1988).
(12)
With this assumptions we obtain
R tE
2.6 Remarks
The formulation of the set-valued force law of a unilateral contact on velocity level is only valid if the contact is closed, that is gi = 0. An open unilateral contact
must not be considered. We will call all closed unilateral contacts “active contacts”. The friction contact is
defined on velocity level, thus no further restriction has
to be made. Note that the consideration of a friction
contact whose maximum friction force ai is equal to
zero is a waste of computing power.
(11)
qE = qB +
uB +uE
2
∆t.
n
X
WM i Λ̂i ),
i=1
(16)
For tE → tB we obtain in case of an impact the impact
equation (7), in case of no impact uE = uB and qE =
qB .
3.2 Discrete set-valued impulsive force laws
In this subsection we will set up the discrete set-valued
impulsive force laws. These laws should cover both
set-valued force laws (4-6) and impact laws (9). We
state
−(γEi + εi γBi ) ∈ NR+ (Λ̂i )
0
−(γEi + εi γBi ) ∈ NS2 (Âi ) (Λ̂i )
−(γ Ei + εi γ Bi ) ∈ NS3 (Âi ) (Λ̂i )
(10)
i ∈ PN ,
i ∈ PT 2 , (17)
i ∈ PT 3 ,
u dt.
By the index B we denote the velocity and displacement at tB , the index E stands for the time tE . We
1 Normally only the instantaneous integral (8) is called impulsive
force. In this paper we will expand the term ”impulsive force” to the
finite integral (10), which is a discretization of (8)
1599
where Λ̂i is the integral of the contact force (11). We
detect active unilateral contacts by a discrete form of
gi = 0:
giM = gi (qB + uA
∆t
) < 0.
2
(18)
For tE → tB we obtain in case of an impact the impact
−
laws (9) by replacing γ Ei with γ +
i and γ Bi with γ i .
In case of no impact we obtain the set-valued force laws
(4-6) on velocity level. This will be shown as follows:
According to the mean value theorem we write
Z
tE
lim Λ̂i = lim
tE →tB
tE →tB
λi dt
tB
(19)
= λBi lim ∆t = λBi dt.
∆t→0
Using dt > 0 we obtain
NR+ (λBi dt)
= NR+ (λBi ),
0
0
NS2 (aBi dt) (λBi dt) = NS2 (aBi ) (λBi ),
NS3 (aBi dt) (λBi dt) = NS3 (aBi ) (λBi ).
(20)
we can rearrange the first equation of (16) to
γ E + εγ B = GΛ̂ + c.
The matrix G and the vector c are
>
M−1
G = WM
M WM ,
>
c = (I + ε)γ B + WM
M−1
M hM ∆t.
For tE →tB the relative velocity γ Bi is identical to γ Ei
j=1
Gij Λ̂j + NR+ (Λ̂i ) 3 −ci
i ∈ PN .
0
(28)
(21)
For a planar friction contact we obtain
A multiplication of a cone with a positive scalar does
not chance the cone. It holds that
1
NC (λBi ) = NC (λBi ).
1 + εi
(27)
The matrix ε is a diagonal matrix with the entries εi .
The matrix G is positive definite if all active force directions WM i are independent, that means that the active constraints cannot cause an underdetermined system in any contact configuration. Otherwise, the matrix G is only positive semidefinite. The diagonal entries of G are larger than zero because the mass matrix MM is assumed to be positive definite. The equation (26) merged with the discrete set-valued impulsive
force laws (17) gives n inclusions describing the n individual contacts. The inclusion for a unilateral contact
is
n
X
γ Ei + εi γ Bi = (1 + εi )γ Bi .
(26)
n
X
Gij Λ̂j + NS2 (Âi ) (Λ̂i ) 3 −ci
i ∈ PT 2 . (29)
j=1
(22)
A spatial friction contact i ∈ PT 3 is described by
with the nonnegative restitution coefficient εi ∈ [0, 1].
Thus, for tE → tB and no impact, the set-valued impulsive force laws (17) become
n
X
Gij Λ̂j + NS3 (ai ) (Λ̂i ) 3 −ci
i ∈ PT 3 . (30)
j=1
−γBi ∈ NR+ (λBi )
0
−γBi ∈ NS2 (aBi ) (λBi )
−γ Bi ∈ NS3 (aBi ) (λBi )
i ∈ PN ,
i ∈ PT 2 ,
i ∈ PT 3 .
(23)
By stating the appropriate inclusion for each contact,
the system is completely described.
The criterion for the detection of an active unilateral
contact (18) is
3.4 Algorithm
The time-stepping method can be stated as follows
(Moreau, 1988)
gBi = gi (qB ) < 0.
(24)
(i) Calculate the position
The laws (23) and (24) are the set-valued force laws
(4-6) defined on velocity level.
3.3 Time-stepping inclusions
By defining global vectors of all contact velocities,
impulsive forces and contact force directions
¢
¡
> >
,
γ = γ>
1 · · · γn
³
´>
>
>
Λ̂ = Λ̂1 · · · Λ̂n
,
¡
¢
WM = WM 1 · · · WM n ,
qM = qB + uB
∆t
.
2
(31)
(ii) Define all closed unilateral contacts i
i ∈ {j ∈ PN | gj (qM ) < 0}
(32)
as active contacts on velocity level. Because the
physical level of the friction contacts is the velocity level, all friction contacts can be viewed as
(25)
1600
(iii)
(iv)
(v)
(vi)
active. Note that considering a friction contact
i ∈ PT 2,3 belonging to a non-active unilateral contact j ∈ PN is a waist of computing power because
the maximum impulsive friction force Âi = µΛ̂j
is zero. Such a friction contact can be regarded as
non-active friction contact.
Set up the generalized force directions WM i (12)
for all active contacts.
Calculate the vector hM (15) and MM (12). Calculate G and c according to (27).
Solve the time-stepping inclusions (28-30). As result we obtain the impulsive forces Λ̂ and thus the
velocities uE (16).
Calculate the end position qE
qE = qB +
∆t
uE + uB
. (33)
∆t = qM + uE
2
2
3.5 Remarks
The main idea of the time-stepping methods involves
using the impulsive forces Λ̂i instead of the forces λi .
This enables us to treat impacts and smooth motion by
the same discrete equations. Instead of accelerations,
velocity updates are calculated.
Time Stepping methods can be viewed as event-driven
methods in which the switching points are not instantaneous but have a finite “time-length”. In addition, timestepping methods can change their contact state automatically, and no different equations of motion have
to be formulated for the different periods between the
switching points. The time step should be chosen very
small to resolve the switching points. Systems with
many non-smooth constraints switch permanently and
require an over-all small time step, thus a fixed timestepping method is appropriate. However, systems with
few non-smooth constraints may have long periods in
which no switching point occurs. In this case, the use of
a fixed small time step is a waist of computing power.
This problem can be bypassed by using a variable time
step.
The combination of the equation of motion (1) and the
set-valued force laws (4-6) forms a differential algebraic system (DAE). The set-valued force laws on displacement level cause an index 3 DAE, the formulation
on velocity level results in an index 2 DAE. The use of
the impulsive forces Λ̂i makes the solution of this index 2 DAE possible.
Various time-stepping methods (Funk, 2004; Jean,
1999; Stiegelmeyr, 2001) differ in the approximation
of the integrals (14). Also the discrete set-valued impulsive force laws (17) are formulated in a different
manner. The formulation of the set-valued impulsive
force laws on velocity level allows for a good consolidation of impact laws (9) and set-valued force laws (46). A disadvantage is the drift in the unilateral contacts
caused by numerical errors. A formulation of a unilateral contact on displacement level eliminates the drift
problem, but the consideration of the impact law with
ε > 0 becomes cumbersome. The formulation on dis-
placement level results in an index 3 DAE, whose solution is a problem for tE → tB . Some time-stepping
methods merge velocity and displacement level.
4 Solving the time-stepping inclusions
The time-stepping inclusions (28-30) can be solved in
various ways. One way is to transform the inclusions
in linear and non-linear complementarity problems
(Glocker, 1995; Glocker and Studer, to appear; Cottle and Pang, 1992). We will focus on another method
which transforms the inclusions into non-linear equations. This can be interpreted as stating the adequate
conditions for the saddle point of the Augmented Lagrangian, as exact regularization of the set-valued impulsive force laws or as successive solutions of the individual inclusions (Alart and Curnier, 1991; Bertsekas,
1982; Leine and Nijmeijer, 2004; Moreau, 1988). We
will focus on the last interpretation. For r > 0, the
simple inclusion (Paoli and Schatzman, 2002)
x + rNC (x) 3 b
(34)
x = proxC (b).
(35)
is equal to
The proxC function describes the projection on the set
C, that is the point x = proxC (b) is the nearest point
to b in the set C (proximal point). The proxC functions
for the selected sets C are:
½
b if b ∈ R+
0
0
0 if b ∈
/ R+
0
½
b if b ∈ S2 (a)
proxS2 (a) (b) =
b
if b ∈
/ S2 (a)
a |b|
½
b if b ∈ S3 (a)
proxS3 (a) (b) =
b
if b ∈
/ S3 (a).
a kbk
proxR+ (b)
=
(36)
The relation between the inclusion (34) and the nonlinear equation (35) can be shown by writing the normal cone NC (x) as a subdifferential of the indicator
function ΨC (x). The inclusion (34) becomes
0∈
1
(x − b) + ∂ΨC (x).
r
(37)
Integrating (37) leads to
argmin
x
1
||x − b||2 + ΨC (x)
2r
∀x.
(38)
This unconstrained optimization problem can be turned
into a constrained optimization problem
argmin
x
1601
1
||x − b||2
2r
∀x ∈ C.
(39)
The solution x of this constrained optimization problem (39) is the nearest point to b in the set C. The relation between (34) and (35) can also be interpreted as
the solution of one single non-smooth constraint. With
the help of (34) and (35), the time-stepping inclusions
(28-30) can be turned into non-linear equations.
The inclusion for a unilateral contact (28) can be written as
−
n
X
Gij Λ̂j − ci ∈ Gii Λ̂i + NR+ (Λ̂i ).
0
j=1
j6=i
(40)
Since αi = Gii > 0 is a scalar, we obtain
Λ̂i
= proxR+ (Ji (Λ̂)),
0
n
³X
´
Gij Λ̂j + ci .
Ji (Λ̂) = − α1i
(41)
j=1
j6=i
The impulsive force Λ̂i appears only on the left hand
side of (41). Thus it can be computed instantaneously if
G
all other forces Λ̂j are known. The quotient αiji shows
the direct influence of the j-th contact on the unilateral
contact i.
The non-linear equation for a planar friction contact
(29) follows when replacing the set R+
0 by S2 (ai ) in
the non-linear equation (41).
The inclusion of a spatial friction constraint (30) can be
reformulated as
−
n
X
Gij Λ̂j − ci ∈ Gii Λ̂i + NS3 (Âi ) (Λ̂i ).
(42)
j=1
j6=i
Since the matrix Gii is not a scalar, it has to be splitted
into a scalar αi > 0 and a remaining part B
Gii = αi I + B.
(43)
Note that the impulsive force Λ̂i appears on both sides
of the equation (45). The spatial friction contact i can
not be solved by one projection if all other impulsive
contact forces Λ̂j are known. The remainder matrix B
depends on the choice of the the tangential unit vectors
t1 and t2 of the spatial friction contact.
4.1 Solving the non-linear equations
The non-smooth dynamical system is thus described
by n non-linear equations (41) and (45). Because the
non-linear equation of a planar friction contact is very
similar to the non-linear equation of a unilateral contact, we will discuss only the unilateral contact and
the spatial friction contact. The non-linear equations
(41) and (45) can be solved by a Newton-Raphson iteration method (Alart and Curnier, 1991) or any other fix
point iteration method. We will focus on a Jacobi and a
Gauss Seidel like iteration method (Bronstein and Semendjajew, 1995; Schwarz, 1997).
4.1.1 Jprox method One possible iterative instruction to solve the non-linear equations (41) and (45)
is
ν
Λ̂ν+1
= proxR+ (Ji (Λ̂ ))
i
i ∈ PN ,
0
ν+1
Λ̂i
ν
= proxS3 (Âi ) (Ji (Λ̂ ))
ν+1
−
n
X
j=1
j6=i
(44)
∈ αi Λ̂i + NS3 (Âi ) (Λ̂i ).
ν+1
ν
ν+1
ν+1
Λ̂i−1
is already known.
n
X
Gij Λ̂j − ci + ri Λ̂i ∈
i=1
Λ̂i
j=1
j6=i
does not make use of
4.1.2 JORprox method The Jprox method (46) is
altered in a sense that the underlying linear equation
system (47) is solved by the Jacobi relaxation method
(JOR). Therefore we rearrange the inclusion of a unilateral contact (28) by adding ri Λ̂i on both sides:
−
∈
(45)
(47)
The instruction Λ̂i
= Ji (Λ̂ ) can be viewed as a
Jacobi-relaxation instruction for two components h and
(h + 1) at once. Thus the instruction (46) is the Jacobi method combined with a projection. We will call
this method Jprox method, because it combines the Jacobi method (J method) with the prox function. The
Jprox method solves the individual contacts by the asν
sumption that all other impulsive contact forces Λ̂j are
Using (35) we obtain the non-linear equation
= proxS3 (Âi ) (Ji (Λ̂)),
n
³X
´
Gij Λ̂j + ci + BΛ̂i .
Ji (Λ̂) = − α1i
ν
GΛ̂ + c = 0.
the fact that
Gij Λ̂j − ci − BΛ̂i ∈
(46)
Note that the instruction Λ̂i
= Ji (Λ̂ ) is the Jacobi
iteration instruction to solve the linear System
known. The calculation of Λ̂i
The inclusion (30) becomes
i ∈ PT 3 .
(48)
ri Λ̂i + NR+ (Λ̂i ).
0
The same can be done for the inclusion of a spatial friction contact (30).
1602
The corresponding non-linear equation for a unilateral
contact i ∈ PN is
= proxR+ (JORi (Λ̂)),
0
n
X
ν
JORi (Λ̂) = Λ̂i − ri ( Gij Λ̂j + ci ).
Λ̂i
(49)
j=1
i-th constraint. In case of a spatial friction constraint,
h is chosen in a way that ri becomes minimal. If the
diagonal elements in G predominate, then the criterion
(52) and (53) become similar.
4.1.3 SORprox method An iterative instruction
based on the Gauss Seidel relaxation method (SOR) is
ν+1
For the spatial friction contact i ∈ PT 3 we obtain
= proxS3 (Âi ) (JORi (Λ̂)),
n
X
ν
JORi (Λ̂) = Λ̂i − ri ( Gij Λ̂j + ci ).
ν+1
Λ̂i =
Λ̂i
(50)
j=1
The corresponding iterative instructions are
ν
Λ̂ν+1
= proxR+ (JORi (Λ̂ ))
i
ν+1
Λ̂i
0
i ∈ PN ,
ν
= proxS3 (Âi ) (JORi (Λ̂ )) i ∈ PT 3 .
(51)
1
.
Gii
1
m
X
(52)
.
ν+1
i ∈ PN ,
ν
proxS3 (Âi ) (SOR(Λ̂ , Λ̂ )) i ∈ PT 3 ,
(54)
=
Λ̂νi
ν+1
ν
, Λ̂ ) =
j<i
n
X
X
ν+1
ν
− ri ( Gij Λ̂j +
Gij Λ̂j + ci ),
j=1
j=i
(55)
Using this ri we arrive at the original Jprox method.
In case of a spatial friction contact Gii is a matrix and
the largest of the two diagonal elements can be chosen.
Note that if the matrix G is not strictly diagonal dominant, then convergence cannot be guaranteed. For a
small ri the iteration might still converge because the
Lipschitz constant is still near to one. A good empiric
criterion is
ri =
0
with the iterative instructions of the Gauss Seidel relaxation method for a linear system (47):
SOR(Λ̂
We will call the iterative instructions (51) the JORprox
method. The JORprox method consists of a JOR iteration combined with a projection. The factor ri contains
the relaxation parameter. Note that the instruction in
(50) requires one ri , although two components are iterated at once. That means that the relaxation parameters
for both components are not independent. It can be
shown that in case of dry friction the JORprox iteration
converges if the underlying JOR method does. Convergence of the JOR method can only be guaranteed if
the matrix G is strictly diagonal dominant. An optimal
convergence can be achieved by minimizing the Lipschitz constant. Using the maximum norm we obtain an
optimal ri
ri =
ν
Λ̂ν+1
= proxR+ (SOR(Λ̂ , Λ̂ ))
i
(53)
|Ghk |
k=1
The index m denotes the dimension of the matrix G
which is not equal to the number of constraints n because the spatial friction contacts require two rows in
G. The index h denotes the row in G belonging to the
ν+1
SOR(Λ̂
ν
= Λ̂i − ri (
ν
, Λ̂ ) =
j<i
n
X
X
ν+1
ν
Gij Λ̂j +
Gij Λ̂j + ci ).
j=1
j=i
We will call the method (54) the SORprox method.
Different to the JORprox method, the calculation of
ν+1
ν+1
Λ̂i
makes use of the fact that Λ̂i−1 is already
known. Convergence of the SOR method can be guaranteed for positive definite matrices G. It is presumable that for dry friction the SORprox method has the
same convergence criterion as the SOR method, that
means the linear part (55) will determine convergence.
4.2 Remarks
An important aspect is the uniqueness of the solution
of the non-linear equations (41) and (45). Consider a
system with two unilateral contacts
Λ̂1 = proxR+ (− G111 (G12 Λ̂2 + c1 )),
0
Λ̂2 = proxR+ (− G122 (G21 Λ̂1 + c2 )).
(56)
0
We assume that the contact force directions w1 and w2
are not independent, thus the matrix G is only positive
semidefinite and not positive definite. If both proxR+
0
in (56) do not project on the set R+
0 , then the system
(56) is underdetermined. The impulsive forces Λ̂ cannot be determined uniquely. Note that in this case the
motion is in many cases unique. It is therefore sufficient to find one possible solution for the impulsive
forces. The non-unique impulsive forces represent an
arbitrary inner tension state.
An non-regular matrix G does not necessarily induce non-unique impulsive forces. If, for example the
1603
Figure 1. Thousand balls falling through a funnel. Simulation of about half a million possible unilateral and friction contacts with Moreau’s
midpoint rule. The time step is fixed and small. The restitution and friction coefficients are: εN =0.3, εT =0, µ=0.3.
proxR+ from the second contact projects on its set R+
0,
0
then the system (56) has a unique solution. Thus, if active contacts can act on the system in a way that it becomes underdetermined, then the matrix G is positive
semidefinite and not positive definite. The matrix G
is not invertible anymore. The solution for the impulsive forces Λ̂ might be non-unique, but not necessarily,
because the proxC functions may eliminate dependent
rows in G. As a consequence on the non-regularity
of G, one can not expect general convergence of the
SORprox method.
5 Systems with many unilateral constraints
An example of a system with many unilateral contacts is shown in figure 1. Thousand balls are thrown
in a funnel. About half a million possible unilateral
contacts and half a million possible friction contacts
are modelled. It is nearly impossible to simulate this
problem with event-driven methods because there are
so many possible contact configurations and switching
points. Note that event-driven methods cannot treat accumulative switching points. An example of an accumulation point is a ball falling on the ground. There
will be infinitely many impacts in a finite time. An
event-driven method detects all these infinitely many
impacts and is therefore not able to pass the accumulation point.
A time-stepping method with a small fixed time step ∆t
is however suitable to handle such problems. Because
there are so many switching points, an overall small
time step is reasonable. The size of the time step cor-
1604
Figure 2. Moreau’s midpoint time-stepping method with variable step length tested on the woodpecker toy. The switching points are plotted as
solid circles. The switching incidents are shown in table 1.
t
respond to the resolution of the switching points. The
algorithm is very robust. The result is however not very
accurate. However, for large dissipative systems the accuracy is not very important. We are more interested in
the overall behaviour of the system, but not in the particular motion of one single ball.
6 System with few unilateral constraints
A time-stepping method with a fixed time step causes
unessential computional effort if it is used to simulate
systems with a few non-smooth constraints. Because
for such systems not only the overall behaviour is of
interest, the simulation has to be much more accurate.
Thus, the time step has to be chosen very small to resolve the switching points. The smooth part of the motion must also be integrated with this small time step,
which is a waste of computing power.
We suggest a time-stepping method with variable step
length. The system is described by the non-linear equations (41) and (45). If a unilateral contact is closed,
then the proxR+ function does not project onto the set
0
R+
0 . An open unilateral contact can be detected by a
proxR+ that does project on the set R+
0 . In general, a
0
switching point of a contact can be detected by analyzing the behaviour of the proxC function. If a proxC
switching point
Figure 3. Localization of a switching point. By comparing the behaviour of the proxC functions in consecutive time steps, a switching point can be detected. A time step for which the proxC function
does “not project” is plotted dashed, a time step for which the proxC
function “project” is plotted solid. If a switching point is localized,
then the time step is diminished until a minimal time step ∆tmin is
reached.
function projects on the set C during the time step t1
and does not project on the set C in the following time
step t2 , then a switching point is detected during the
time steps t1 and t2 . Of course this is also the case
if the proxC function changes from “non-project” to
“project”. The time step is diminished and the calculation is redone, until a minimal time step length
1605
is reached. Thus, the switching point is located with
nested intervals. The procedure is shown in figure 3.
The Moreau midpoint time-stepping method with a
variable step length has been tested on the woodpecker
toy. The woodpecker toy consists of a pole, a sleeve
with a hole that is slightly larger than the diameter of
the pole, a spring, and the woodpecker. In operation,
the woodpecker moves downwards the pole performing some kind of pitching motion, which is controlled
by the sleeve (Glocker and Studer, to appear). The results are shown in figure 2. The time step is diminished
if the algorithm detects a switching point or if the integration error becomes to big. The switching points are
plotted as solid dark circles. The different switching
incidents are shown in table 1.
Contact
from
to
Friction contact
2
slip
stick
Friction contact
2
stick
slip
Unilateral contact
2
closed
open
Unilateral contact
3
open
closed
Unilateral contact
3
closed
open
Unilateral contact
1
open
closed
Unilateral contact
1
closed
open
Unilateral contact
3
open
closed
Unilateral contact
3
closed
open
Unilateral contact
2
open
closed
Unilateral contact
2
closed
open
Unilateral contact
2
open
closed
Table 1.
The different switching incidents of the woodpecker toy.
The corresponding switching points are shown in figure 2.
7 Conclusions
Time stepping methods are very suitable to simulate mechanical systems with many non-smooth constraints, as demonstrated in section 5. Small systems
with few constraints can be handled by time-stepping
methods with a variable time step length. This enables
an accurate localization of switching points. An example was given in section 6. For the further development,
extrapolation methods should be used to increase the
order of the integration during the smooth parts of the
motion.
The time-stepping inclusions which describe the discrete system are represented by non-linear equations.
For each contact, one specific equation which describes
the contact behaviour is formulated. By this approach,
spatial friction situations can be treated in a compact
way. The non-linear equations are solved iteratively by
a Jacobi or a Gauss Seidel like procedure.
References
Alart, P. and A. Curnier (1991). A mixed formulation
for frictional contact problems prone to newton like
solution methods. Computer Methods in Applied Mechanics and Engineering 92(3), 353–375.
Bertsekas, D. P (1982). Constrained optimization and
Lagrange multiplier methods. Academic Press.
Bronstein, I. N. and K. A. Semendjajew (1995).
Taschenbuch der Mathematik. Harri Deutsch.
Cottle, R. and W. Pang (1992). The Linear Complementarity Problem. Academic Press Inc.
Funk, K. (2004). Simulation eindimensionaler Kontinua mit Unstetigkeiten. Vol. 18/294 of VDIFortschrittberichte Mechanik/Bruchmechanik. VDIVerlag.
Glocker, Ch. (1995). Dynamik von Starrkörpersystemen mit Reibung und Stössen. Vol. 18/182
of VDI-Fortschrittberichte Mechanik/Bruchmechanik.
VDI-Verlag.
Glocker, Ch. (2001). Set-Valued Force Laws – Dynamics of Non-Smooth Systems. Vol. 1 of Lecture Notes in
Applied Mechanics. Springer Verlag.
Glocker, Ch. and C. Studer (to appear). Formulation and preparation for numerical evaluation of linear complementarity systems in dynamics. Multibody
System Dynamics.
Jean, M. (1999). The non-smooth contact dynamics
method. Computer Methods in Applied Mechanics
and Engineering 177(3-4), 235–257.
Leine, R. I. and H. Nijmeijer (2004). Dynamics
and Bifurcations of Non-smooth Mechanical Systems. Vol. 18 of Lecture Notes in Applied Mechanics.
Springer.
Moreau, J. J. (1988). Unilateral Contact and Dry Friction in Finite Freedom Dynamics. Vol. 302 of Nonsmooth Mechanics and Applications, CISM Courses
and Lectures. Springer.
Paoli, L. and M. Schatzman (2002). A numerical scheme for impact problems i: The onedimensional case. Siam Journal on Numerical Analysis 40(2), 702–733.
Schwarz, H. R. (1997). Numerische Mathematik. B.G.
Teubner.
Stiegelmeyr, A. (2001). Zur numerischen Berechnung
strukturvarianter Mehrkörpersysteme. Vol. 18/271
of VDI-Fortschrittberichte Mechanik/Bruchmechanik.
VDI-Verlag.
1606