A NEW CLASS OF VARIABLE STEP-SIZE METHODS FOR MULTIBODY DYNAMICS

Similar documents
SYMMETRIC PROJECTION METHODS FOR DIFFERENTIAL EQUATIONS ON MANIFOLDS

Geometric Numerical Integration

Variable Step Runge-Kutta-Nyström Methods for the Numerical Solution of Reversible Systems

Numerical Integration of Equations of Motion

GEOMETRIC INTEGRATION OF ORDINARY DIFFERENTIAL EQUATIONS ON MANIFOLDS

On the construction of discrete gradients

Reducing round-off errors in symmetric multistep methods

COMPARISON OF TWO METHODS TO SOLVE PRESSURES IN SMALL VOLUMES IN REAL-TIME SIMULATION OF A MOBILE DIRECTIONAL CONTROL VALVE

CHAPTER 10: Numerical Methods for DAEs

A Second Order Extension of the Generalized α Method for Constrained Systems in Mechanics

Adaptive Geometric Numerical Integration of Mechanical Systems

Digital linear control theory for automatic stepsize control

Study the Numerical Methods for Solving System of Equation

Semi-implicit Krylov Deferred Correction Methods for Ordinary Differential Equations

1 Ordinary differential equations

M3-4-5 A16 Notes for Geometric Mechanics: Oct Nov 2011

Chapter 6 - Ordinary Differential Equations

Scientific Computing with Case Studies SIAM Press, Lecture Notes for Unit V Solution of

Initial value problems for ordinary differential equations

Parallel-in-time integrators for Hamiltonian systems

Symplectic integration with Runge-Kutta methods, AARMS summer school 2015

Efficiency of Runge-Kutta Methods in Solving Simple Harmonic Oscillators

Newton s Method and Efficient, Robust Variants

An initialization subroutine for DAEs solvers: DAEIS

Solutions to the Hamilton-Jacobi equation as Lagrangian submanifolds

The Plan. Initial value problems (ivps) for ordinary differential equations (odes) Review of basic methods You are here: Hamiltonian systems

Remarks on Quadratic Hamiltonians in Spaceflight Mechanics

Numerical solution of ODEs

Geometric Mechanics and Global Nonlinear Control for Multi-Body Dynamics

Lecture Notes to Accompany. Scientific Computing An Introductory Survey. by Michael T. Heath. Chapter 9

Ordinary Differential Equations

NUMERICAL SOLUTION OF ODE IVPs. Overview

An Implicit Runge Kutta Solver adapted to Flexible Multibody System Simulation

Lecture Notes to Accompany. Scientific Computing An Introductory Survey. by Michael T. Heath. Chapter 5. Nonlinear Equations

ROLLING OF A SYMMETRIC SPHERE ON A HORIZONTAL PLANE WITHOUT SLIDING OR SPINNING. Hernán Cendra 1. and MARÍA ETCHECHOURY

Index Reduction and Discontinuity Handling using Substitute Equations

A note on the uniform perturbation index 1

CHAPTER 5: Linear Multistep Methods

Squirming Sphere in an Ideal Fluid

Finite Element Decompositions for Stable Time Integration of Flow Equations

SANGRADO PAGINA 17CMX24CM. PhD Thesis. Splitting methods for autonomous and non-autonomous perturbed equations LOMO A AJUSTAR (AHORA 4CM)

Scientific Computing: An Introductory Survey

19.2 Mathematical description of the problem. = f(p; _p; q; _q) G(p; q) T ; (II.19.1) g(p; q) + r(t) _p _q. f(p; v. a p ; q; v q ) + G(p; q) T ; a q

Calculus of Variation An Introduction To Isoperimetric Problems

Modified Equations for Variational Integrators

MBS/FEM Co-Simulation Approach for Analyzing Fluid/Structure- Interaction Phenomena in Turbine Systems

ETNA Kent State University

Solving Orthogonal Matrix Differential Systems in Mathematica

Hamilton-Jacobi theory on Lie algebroids: Applications to nonholonomic mechanics. Manuel de León Institute of Mathematical Sciences CSIC, Spain

type of high order Z. Jackiewicz, A. Marthinsen and B. Owren PREPRINT NUMERICS NO. 4/1999

SOLVING ODE s NUMERICALLY WHILE PRESERVING ALL FIRST INTEGRALS

Quasipatterns in surface wave experiments

Physics 106a, Caltech 4 December, Lecture 18: Examples on Rigid Body Dynamics. Rotating rectangle. Heavy symmetric top

ELLIPTIC RECONSTRUCTION AND A POSTERIORI ERROR ESTIMATES FOR PARABOLIC PROBLEMS

Backward error analysis

Fourth-order symplectic exponentially-fitted modified Runge-Kutta methods of the Gauss type: a review

Chapter 1 Symplectic Integrator and Beam Dynamics Simulations

CS 450 Numerical Analysis. Chapter 9: Initial Value Problems for Ordinary Differential Equations

Variational Integrators for Maxwell s Equations with Sources

Adaptive Time-Stepping and Computational Stability

Ordinary differential equations - Initial value problems

A Hamiltonian Numerical Scheme for Large Scale Geophysical Fluid Systems

THE Hamilton equations of motion constitute a system

Technische Universität Berlin

Mathematical Models with Maple

8.1 Introduction. Consider the initial value problem (IVP):

Investigation of falling control rods in deformed guiding tubes in nuclear reactors using multibody approaches

Quasi-Newton Methods

Comparison of Modern Stochastic Optimization Algorithms

The Milne error estimator for stiff problems

16.7 Multistep, Multivalue, and Predictor-Corrector Methods

A CRASH COURSE IN EULER-POINCARÉ REDUCTION

REVERSIBLE LONG-TERM INTEGRATION WITH VARIABLE STEPSIZES. 1. Introduction. We consider the numerical treatment of systems

II. DIFFERENTIABLE MANIFOLDS. Washington Mio CENTER FOR APPLIED VISION AND IMAGING SCIENCES

Numerical Algorithms as Dynamical Systems

Trajectory planning and feedforward design for electromechanical motion systems version 2

Iterative solution of SPARK methods applied to DAEs

HIGH ACCURACY NUMERICAL METHODS FOR THE SOLUTION OF NON-LINEAR BOUNDARY VALUE PROBLEMS

SOME PROPERTIES OF SYMPLECTIC RUNGE-KUTTA METHODS

Tilt-Rotor Analysis and Design Using Finite Element Multibody Procedures

a 32 γ 0 1 a 31 a 42 a 43 γ 1 a 41 v n = u n + haf(v n ) (3) u n+1 = u n + hbf(v n ) (4)

A definition of stiffness for initial value problems for ODEs SciCADE 2011, University of Toronto, hosted by the Fields Institute, Toronto, Canada

Optimal Sojourn Time Control within an Interval 1

CS 450 Numerical Analysis. Chapter 5: Nonlinear Equations

Review for Exam 2 Ben Wang and Mark Styczynski

Richarson Extrapolation for Runge-Kutta Methods

Lesson Rigid Body Dynamics

A NOTE ON BLASIUS TYPE BOUNDARY VALUE PROBLEMS. Grzegorz Andrzejczak, Magdalena Nockowska-Rosiak, and Bogdan Przeradzki

Cayley transforms in micromagnetics

CONSTRUCTING OF CONSTRAINT PRESERVING SCHEME FOR EINSTEIN EQUATIONS

HAMILTONIAN ACTIONS IN GENERALIZED COMPLEX GEOMETRY

Parameter-Dependent Eigencomputations and MEMS Applications

Numerical Methods for ODEs. Lectures for PSU Summer Programs Xiantao Li

CONTROL SYSTEMS, ROBOTICS AND AUTOMATION Vol. XI Stochastic Stability - H.J. Kushner

PREPRINT 2010:23. A nonconforming rotated Q 1 approximation on tetrahedra PETER HANSBO

Tong Sun Department of Mathematics and Statistics Bowling Green State University, Bowling Green, OH

Key words. conjugate gradients, normwise backward error, incremental norm estimation.

DEVELOPMENT OF A CONTINUUM PLASTICITY MODEL FOR THE COMMERCIAL FINITE ELEMENT CODE ABAQUS

Quadrature based Broyden-like method for systems of nonlinear equations

European Consortium for Mathematics in Industry E. Eich-Soellner and C. FUhrer Numerical Methods in Multibody Dynamics

Transcription:

MULTIBODY DYNAMICS 2005, ECCOMAS Thematic Conference J.M. Goicolea, J. Cuadrado, J.C. García Orden (eds.) Madrid, Spain, 21 24 June 2005 A NEW CLASS OF VARIABLE STEP-SIZE METHODS FOR MULTIBODY DYNAMICS Klas Modin, Dag Fritzson, Claus Führer, Gustaf Söderlind SKF Group Manufacturing Development Centre, RKS 2, SE 41550 Göteborg, Sweden e-mails: kmodin@maths.lth.se, Dag.Fritzson@skf.com Numerical Analysis, Centre for Mathematical Sciences Lund University, SE 22100 Lund, Sweden e-mails: claus@maths.lth.se, Gustaf.Soderlind@na.lu.se Keywords: multibody dynamics, adaptive integration, rolling bearing simulations, discrete mechanics, initial value problems, step-size control Abstract. A new class of variable step-size methods for dynamic multibody problems is presented. The step-size selection is specifically designed for multibody dynamics, and is not derived under continuity assumption, as in conventional step-size control. Instead, additional system specific information, in particular contact power, is used to provide a control objective in the step-size control. Numerical examples are given for: (i) A simple, but numerically intricate, contact problem with strongly alternating time-scales (contact non-contact). (ii) An industrial dynamic rolling bearing problem, with complex tribologic contacts (realised in the simulation software BEAST, developed at SKF). The examples indicate good performance in comparison with a standard adaptive ODE solver. 1

1 INTRODUCTION In this paper a new class of variable step-size numerical integration methods is presented. Contrary to conventional step-size control, the step-size selection in these methods is specifically designed for dynamic multibody problems, here referred to as multibody initial value problems (MB-IVPs). We concentrate on rigid systems with contacts. One of the main points in the paper is to use contact power as a guiding quantity in the step-size control. The motivation for the research comes directly from the industry. Indeed, it has been noted at SKF that standard step-size control often leads to inefficient time-step selection, or even to failures, for industrial non-smooth MB-IVPs with complex contacts. This is so, especially when accuracy demands are relatively low. Our intention is to develop variable step-size methods that are not derived under smoothness assumptions on the solution, which is the case in standard step-size control. It should be noted that our work is in a preliminary stage. Rigourous analysis of the methods, e.g. convergence results and the connection between control quantities and error estimates, is under progress, but is not presented here. Rather, the objective of the paper is to illustrate some new ideas, and to support these ideas with numerical examples. The paper is organized as follows. In Section 2 we give the problem formulation and introduce the notation used throughout the paper. In Section 3 a brief review of step-size control is given. The purpose is to point out key properties of different approaches. In Section 4 we develop a theoretic framework, which is utilized in Section 5 to derive a new class of methods. One of these methods is tested in Section 6, in particular on an industrial dynamic rolling bearing problem. Here, the software BEAST developed at SKF is used. 2 PROBLEM FORMULATION In this section we formulate the problems of interest within the notion of analytic mechanics. For background reading, we refer to [1] or [11]. Let Q i denote the d i dimensional configuration manifold of body i, and the co-tangent bundle T Q i its phase space. (It is not enough to consider only vector spaces. Indeed, the configuration space of a rigid body is not a vector space due to rotations.) The total configuration space of the multibody system is Q = Q 1 Q n, where n is the number of bodies. For example, the total configuration space of n free rigid bodies in three dimensional space is Q = (R 3 SO(3)) n, i.e., the direct product of n spaces of translations and rotations. We assume that Q i is parallelizable, i.e., its tangent bundle is the direct product R d i Q i. Notably, every Lie group, in particular SO(3), is parallelizable. So is the 1-sphere S 1 and the 3-sphere S 3, which are also often used to represent rotations. We refer to [2, 13, 5] for further issues concerning coordinate representation of rigid body rotations in numerical simulations. Due to parallelizability, coordinates on the phase space of body i can be given on the form y i = (q i, p i ), where q i are generalized position coordinates and p i are generalized momentum coordinates. (One may, of course, choose velocity instead of momentum.) We assume that the motion of each body, in the absence of interaction with other bodies, is described by a Hamiltonian system with Hamiltonian H i : T Q i R. Hence, the energy of body i is given by H i. The reason why an energy concept for each body is necessary will become apparent in Section 5, with the introduction of contact power. 2

The governing equations for the system are on the form dy i dt = X Hi (y i ) + j i C i j (y i, y j ), i = 1,..., n (1) where X Hi is the Hamiltonian vector field of H i, and C i j represents dynamics in y i due to contact between body i and body j. Accordingly, we assume that the contact is formulated in terms of force laws (ODE formulation) and not in terms of non-penetration constraints (DAE formulation). Introducing coordinates y = (y 1,..., y n ) on T Q, we may use the more compact notation ẏ = X (y), (2) where X is the vector field on T Q defined by (1). 3 BRIEF REVIEW OF STEP-SIZE CONTROL In large scale simulation, it is necessary to use variable step-sizes for reasons of efficiency. The theory of step-size control involves two fundamental questions: (i) which quantity should be used in guiding the step-size, and (ii) exactly how should the step-size be chosen, i.e., how should the control algorithm be designed and implemented? Below we give a summary of commonly used approaches. 3.1 Step-size based on local error estimates This is the classical approach to variable step-size algorithms, frequently used in commercial and open-source software. The step-size in each step is based on a local error estimate from the previous step. A modern viewpoint is to consider step-size control as a feedback control system. For continuous systems, this approach has proven to increase the computational stability in the integration process [17]. Robust control algorithms, based on accompanying rigorous analysis, have been developed [16]. The following properties are of importance in the analysis of these methods. First, local error estimates are derived under smoothness assumptions on the vector field. Second, as the stepsize is based on past information, safety algorithms are often added in order to handle stiff problems (e.g. if convergence fails, decrease the step by a predefined factor). These safety algorithms have to be implemented with great care, as they would otherwise destroy advantageous properties such as computational stability. 3.2 Step-size based on global error estimates This approach is an extension of the above, where an estimate of the global error e(t) is used instead of the local error. The objective is then to choose the step-size so that t n+1 t n ė(s) ds is kept moderate. In finding an estimate of the global error, a technique based on solving a dual problem has been successful, and rigorous software based on this approach has been developed [10]. Estimating the global error rigorously, e.g. by solving the dual problem, requires expensive additional computations. Indeed, solving the dual problem is usually as computationally expensive as solving the original problem. 3

3.3 Step-size control in geometric integration During the last decades, the area of geometric numerical integration, i.e., structure preserving algorithms, has been explored. It was soon noticed that classical step-size strategies destroy symmetry properties and, hence, structure preservation [4, 3]. As a remedy, symmetric stepsize control has been developed, in which the step-size is based on present information only [6, 19, 8]. Here, the interaction of step-size dynamics and discretization is carefully studied in order to maintain structure preservation. With the development of these algorithms, it became natural to view adaptive step-size algorithms as the result of a dynamic time transformation, called a Sundman transformation. Here the independent variable t is viewed as a function of a new variable, s. If t(s) is differentiable, we introduce ρ = ds/ dt, and let prime denote derivative with respect to s. We then have the following transformation, ẏ = X (y) { y = X (y)/ρ ρ = G(y), (3) where the additional state variable ρ will be interpreted as the step density. The phase space has thus been extended, and the added equation, defined by G, is used to determine the step-size control objective. A sub-branch of geometric integration, which is of particular interest in this paper, is that of discrete mechanics and variational integrators [12, 20]. Here, the fundamental concepts of analytic mechanics have carefully been translated into discrete counterparts, defining discrete mechanics. The governing equation in the discrete setting may be viewed as a particular choice of discretization of the classical equations in continuous mechanics. It therefore naturally defines numerical time-stepping integrators, known as variational integrators. For conservative systems, variable step-size variational integrators have been developed, with the objective of constructing algorithms that exactly conserve symplecticity, momentum and energy [9]. A theorem by Ge and Marsden states that this is not possible for constant step-size methods, unless the method gives the exact solution [21]. 3.4 Adaptive step-sizes in multibody dynamics Multibody dynamics is a class of IVPs that is highly special and requires special care. Many problems exhibit substantial difficulties, often due to stiff force terms (cf. singular perturbation theory) and a low degree of continuity. Concerning adaptive step-size control for multibody systems, it is well known that stiff force terms act almost as constraints. The system then shows a behavior akin to that of index-3 DAEs, leading to order reduction and, in turn, incorrect error estimation and pessimistic stepsize outputs from standard adaptive algorithms. It is an outstanding problem to design error estimators that overcome these problems. Within the framework of classical step-size control, some solutions have been proposed [14]. 4 BASIC FRAMEWORK In this section we present a framework for variable step-size methods, which is used in Section 5 to derive new methods. The framework is influenced from ideas in geometric integration, in particular from the notion of discrete mechanics. A main point is to use the mathematical setting of extended phase spaces, as in [9, 6]. 4

As a first step, we introduce a time transformation s t(s), and an extended configuration space Q = Q R. The relation between the actual time t and the parameter s is defined dynamically by a map G : T Q R 2. Choosing coordinates z = (t, u) on R 2, the motion of the extended system is governed by dy ds = u X (y), dz ds = ug(y). (4) G should be such that our control objective is a first integral of the extended system. Indeed, let W : T Q R be a function with differential dw and choose G(y) = (1, dw (y) X (y)). We then have d dy (W (y) u) = dw (y) ds ds du ds = dw (y) u X (y) du ds = 0. (5) Thus, W (y) u is a first integral of the extended system, and the corresponding control objective is W (y) u. (Without loss of generality, we may assume that initial data fulfills W (y(0)) = u(0), i.e., that W (y) u = 0 throughout the solution.) In order for the step-size control to make sense, we require that W is strictly positive. This, in turn, implies that the time transformation s t(s) is bijective, as it ought to be. Our selection of G also gives that the time variable fulfills t(s) = s 0 u ds. In comparison with (3), u is the inverse of the step-size density, i.e., u = 1/ρ. The next step is to discretize (4). The discretization is equidistant in s, but not in t due to the time transformation. We denote the numerical solution at time-step k by y k and z k. That is, y k y(s k ) and z k z(s k ), where s k = ɛ k, for some ɛ > 0. The discretized equations implicitly define a numerical flow ψ : (y k, z k ) (y k+1, z k+1 ). ψ can be thought of as a constant step-size integrator for (4). In general, ψ is defined by a system of equations on the form y k+1 φ(y k ; z k+1 ) = 0 z k+1 ϑ(z k ; y k, y k+1 ) = 0, where φ(y ; t, h/ɛ) is a numerical flow of y resulting from a discretization of (2) with step-size h, and ϑ(z ; y 0, y 1 ) is a numerical flow of z resulting from a discretization of the second equation in (4) with step-size ɛ. Note that if ϑ depends on its parameter y 1, then (6) is fully implicit, regardless of whether φ and ϑ are defined explicitly. However, if ϑ does not depend on y 1, then ψ is defined explicitly. We say that φ is explicit in the y domain if it is defined explicitly and ϑ is independent of y 1. Otherwise, φ is implicit in the y domain. Corresponding definitions are used for ϑ. Evaluating this, we are led to a classification: Explicit in z domain Implicit in z domain Explicit in y domain E y E z E y I z Implicit in y domain I y E z I y I z In fact, there are two types of I y I z methods whether ϑ is dependent on y 1 or not. If not, the equations for z and y can be solved one after the other. The last step in the framework is to choose a suitable numerical algorithm for solving the discrete equations, and consider how to preferably set numerical parameters, e.g. tolerances. In summary, the approach can be illustrated by a graph: System on T Q System on T Q Discrete system Algorithm 5 (6)

This framework is advantageous in the following aspects. (i) It is complete, in that it completely describes adaptive numerical integrators. (ii) It has a strong theoretic foundation, which simplifies rigorous mathematical analysis of the resulting methods. (iii) As the framework is described in the language of analytic mechanics, it is general enough to fit different types of multibody settings, yet specific enough to point out information that is characteristic for multibody systems. In this paper we do not develop an analysis of the methods; that will come in later work. Rather, as a first step, we give in the next section a class of methods of type E y I z. Notably, these methods does not need system Jacobians, since they are explicit in y. 5 NEW CLASS OF METHODS In this section we utilize the framework described above to derive a new class of methods, where contact power is used as a guiding quantity for the step-sizes. 5.1 Contact power as control quantity We assume the system (1) to be such that if there are no contacts between bodies, then it can be discretized accurately with a constant step-size method, using a relatively large step-size ɛ. However, in contact regimes this assumption can not be made. The situation then is rather delicate; contact alone is not reason enough to decrease the step-size. For example, if a body is resting on another body, i.e., they are in contact but the relative motion between them is zero, then there is no need to decrease the step. We need a quantity that tells, not only when contacts occur, but also gives a measure of the current action in the contact. Intuitively, contact power is such a quantity. Formally, we define contact power P i for body i as P i (y i ) = d dt H i(y i ) = 1 u d ds H i(y i ) = dh i (y i ) X i (y i ), (7) i.e., the rate of change of energy with respect to time. Following the framework above, we choose as control objective ( W (y) = 1 + α ( max{ P i (y i ) } ) ) β 1. (8) i Notice that 0 < W 1, where W = 1 if and only if the contact power of each body is zero. The differential dw, needed in order to define G, is taken in a distributional sense. As we will see, G is never evaluated in the final numerical scheme, only W. The parameters α and β affect the behavior of the step-size control. In order for P i β to have physical dimension s 1, we choose β = 1/3. (Classically, the dimension of P i is kg m 2 s 3.) α is intepreted as a sensitivity parameter, that determines how responsive the step-size change should be with respect to variations in contact power. If α is zero, then u is constant throughout the simulation. 5.2 Discretization Next, the extended system is discretized. Special care is taken to assure that the control objective is actually reached. This is not obvious. For example, if (4) is discretized directely with a non structure preserving method, then the u will most likely drift off target, i.e., the first 6

Figure 1: Geometric interpretation of the step-size objective. The length of the path γ is chosen to fulfil condition (12). integral W (y) u will not be preserved. A possibility is to utilize symmetric integration techniques, as is done in [6]. However, this approach fails if the original system (1) is dissipative. Our approach is to directly discretize the first integral. From W (y) u = 0 and W > 0 it follows that u W (y) = 1. (9) Integrating this relation from s k to s k+1, and switching variables s t, yields sk+1 s k u ds W (y) = ɛ tk+1 t k dt W (y) = ɛ, (10) where the relation u = dt/ ds is used. From the finite difference approximation ɛu k+1 = t k+1 t k, (11) and from numerical quadrature of (10) by the trapezoidal rule, we get an equation for u k+1 as u ( k+1 1 2 W (y k ) + 1 ) = 1. (12) W (y k+1 ) The equations (11) and (12) define the numerical flow ϑ(z ; y 0, y 1 ) in (6). Let φ be some explicit method for (2). The extended system (4) is now discretized in total as y n+1 φ(y n ; z n+1 ) = 0 z n+1 ϑ(z n ; y n, φ(y n ; z n+1 )) = 0. (13) Note that the resulting method is explicit in y and implicit in z, i.e., of type E y I z. From a geometric point of view, the discretization can be described as follows. Consider the path γ : [0, u k+1 ] T Q in the phase space defined by restricting the curve u φ(y k ; t k + ɛu, u). (14) The objective of the step-size control is to select u k+1 such that condition (12), with y k+1 = γ (u k+1 ), is fulfilled, see Figure 1. 7

5.3 Algorithm Now to our main result. The following algorithm defines a new class of variable step-size methods for MB-IVPs. Algorithm 1. Let α 0, ɛ > 0, η (0, 1) and let φ(y ; t, h/ɛ) be an explicit integration method for (2) with step-size h. Further, assume that initial conditions y 0 T Q at t 0 = 0 are given. Define u 0 = 1, r 0 = 0, R(u ; t, y) = u ( 1 2 W (y) + 1 ) 1. W (φ(y ; t + ɛu, u)) A numerical method (y k, z k ) (y k+1, z k+1 ) is given by: 1. Solve the equation R(u k+1 ; t k, y k ) = 0 for u k+1 with the bisection method: u = u k /(1 + r k ) a = 0 b = u while R(u ; t k, y k ) > η if R(b ; { t k, y k ) < 0 b = 2 b then u = b do u = (a + b)/2 else r k+1 = R(u ; t k, y k ) u k+1 = u if R(u ; t k, y k ) < 0 then a = u else b = u 2. Update the state variables: t k+1 = t k + ɛu k+1 y k+1 = φ(y k ; t k+1, u k+1 ) Efficient implementation of the algorithm requires m evaluations of φ and W at each step, where m 1 is the number of times the convergence criterion is tested. The initial guess of u is to be interpreted as a predictor for u k+1. From a geometric viewpoint, it is the intersection with the u axis of the line that interpolates (0, R(0 ; t k, y k )) = (0, 1) and (u k, r k ). From an automatic control perspective, it is an I controller. Indeed, if we ignore the iteration part, and take the logarithm, we get log u k+1 = log u k log(1 + r k ), (15) which is an I controller that acts to make log(1 + r k ) equal zero. From this point of view, the algorithm might be improved by using a PI controller instead. See [15] for further issues of automatic control and adaptive time-stepping. 8

secondiemethod.nb Klas Modin, Dag Fritzson, Claus Führer, and Gustaf Söderlind 1 q 0.5 0 0.1 1 10 t a b c s Figure 2: Above: Simulation result of a bouncing ball model. Note that the energy of the system behaves well (the tops are of almost equal height). Below: Detailed graph in the parameter s. Also note the time transformation: the distance in time between a and b is about 1 ms and between b and c about 1 s. 6 NUMERICAL EXAMPLES We present in this section some simulation results of the new methods, applied first to a simple, yet numerically intricate, system and then to an industrial rolling bearing problem. In the first example, the particular choice of Algorithm 1 is η = 0.1 and φ the Störmer-Verlet method, which is a symmetric method suitable for conservative systems, see [5]. In the second example we choose η = 1/2 q k+1 = q k + hf(q n, p n ) (16) φ : q k+1 = q k + h q k + 3h2 4 F(q n, p n ), where F is the part of the vector field X in (2) that corresponds to accelerations. Different choices of the tolerance parameters α (sensitivity of step-size control) and ɛ (maximal stepsize) are tested. 6.1 Bouncing ball Consider a metal ball of mass 1 kg dropped from 1 m, and then left bouncing on the ground. Let q(t) be its height at time t. Assuming that the bounces are fully elastic, the motion is described by q = f con (q) g, q(0) = 1, q(0) = 0, where g is the gravitational acceleration and f con is the force due to contact between the ball and the ground. We take a simple contact model given by f con (q) = k min(q, 0), where k = 10 7 N/m is the stiffness parameter. In the setting of Section 2, the system is described as follows. The configuration space is Q = R, so that the phase space is R 2. As coordinates on the phase space we choose y = (q, q). The Hamiltonian for the ball is given by H(y) = q2 2 + gq, (17) 9 Printed by Mathematica for Students

Figure 3: Exploded view of mechanical parts of the ball bearing simulated in BEAST. and the contact dynamics is defined by C(y) = (0, f con (q)). Thus, the contact power for the ball is P(y) = d dt H(y) = q q + g q = q f con(q). (18) The E y I z method derived above is then used; there is flawless adaptation between the two time-scales in the problem (contact non-contact). The contact discontinuity is duly resolved and the step-size selection algorithm does not get stuck in the transitions between contact and non-contact regimes. See Figure 2. The results from this problem indicates that the method performs well for impact problems. 6.2 Rolling bearing (with BEAST) BEAST (BEAring Simulation Tool) is a multibody simulation software package developed at SKF, with special focus on contact problems. It is used on a daily basis for studying the dynamic behaviour of bearings (and other machine elements) under general loading conditions. For example, detailed information of the forces on and motions of the cage, skew and tilt behaviours of rollers and skidding of balls is obtained from a BEAST simulation. The contact modelling in BEAST is highly complex; tribological issues such as oil-film thickness, surface roughness, etc. are accounted for. See [18] for further information on rolling bearing simulations and BEAST. We have implemented the new method in BEAST and simulated a standard case consisting of an axially loaded ball bearing. Implementation was straightforward, since contact power always is computed at each right hand side evaluation for data output purposes. The system consists of altogether 12 bodies: 1 outer ring, 1 cage, 9 balls and 1 inner ring. See Figure 3. The outer ring is held steady, i.e., it does not move. The inner ring is given a prescribed rotation speed of 10 4 rpm and is loaded axially with a force of 1000 N. The system is simulated for about 0.011 s, which corresponds to about one and a half revolutions of the inner ring. 10

ɛ α Cost [# rhs] EI1 10 4 0.5 5091 EI2 10 4 0.2 2474 EI3 10 3 0.05 1181 EI4 10 3 0.02 failure! h max tol Cost (FAST-JAC/SLOW-JAC) [# rhs] CV1 10 4 10 8 9022/25006 CV2 10 4 10 6 2397/7293 CV3 10 3 10 4 2222/10718 CV4 10 3 10 3 failure! Table 1: Solver settings and corresponding results. The results of the simulations show that the new method performs well also for complex contact problems. We compare the results with the numerical integration software CVODE [7] a commonly used open-source ODE solver. This solver uses implicit schemes, and thus system Jacobians must be computed. In BEAST semi-analytical Jacobians have been implemented. Evaluation of such a Jacobian requires twelve right hand side evaluations. This is far better then the d i evaluations needed when a Jacobian is computed by raw finite differences. As the new method is Jacobian free, we give computational costs with CVODE for both semi-analytical Jacobians (FAST-JAC) and finite difference Jacobians (SLOW-JAC). The simulations, for both the new method and CVODE, were carried out in the following way. First, method parameters were chosen to get high accuracy. Thereafter, less and less accuracy was demanded in the simulation, until failure occurred (usually due to unrealistic contact forces). In Table 1 we present a list of computational costs (number of right hand side calls) for the different user settings. Four different accuracy levels were tested for both the new method and CVODE. Note that the new method performs well for simulations where accuracy demands are low. In CVODE, the computational cost of simulations CV2 and CV3 are about the same. A graph of the used step-sizes is given in Figure 4. Seemingly, the step-sizes for CVODE are sporadically strongly reduced, whereas the variations are less drastic and more continuous for the new method. This indicates good computational stability of the step-size control. It should be noted that, before failure, there are indications of stability problems in simulation EI4, most likely due to violation of the stability criteria of φ. A method with larger stability region would perhaps be more suitable. 7 CONCLUSIONS AND FURTHER WORK In conclusion, we have described a new class of Jacobian free variable step-size methods, where step-size control is based on contact power, and numerical examples with one of these methods have been given. Results from the simulations indicate good performace for the the application field under study; simulation of a standard rolling bearing case in BEAST can be carried out about twice as fast as with the standard solver CVODE used with semi-analytical Jacobians. If finite difference Jacobians are used in CVODE, the simulation can be carried out about six times faster. The numerical examples indicate that computational stability of the new step-size controller is good and there is no indication of pessimistic step-size selection. There are many important details of the proposed algorithm that have not been included in 11

EI1 h 10 5 10 6 0 0.005 0.01 t EI2 h 10 5 10 6 0 0.005 0.01 t EI3 h 10 5 10 6 0 0.005 0.01 t CV1 h 10 5 10 6 0 0.005 0.01 t CV2 h 10 5 10 6 0 0.005 0.01 t CV3 10 5 h 10 6 0 0.005 0.01 t Figure 4: Stepsizes for the different simulation settings. 12

this study. In particular, we are currently investigating the following aspects: Rigourous analysis of the new methods within the framework sketched in Section 4, e.g. convergence results. Theoretic connection between local error estimates and contact power. Numerical test-runs of more complex rolling bearing problems. Methods of the type I y I z. Future extensions of the approach may include: Extension to flexible systems. Extension to asynchronous step-size control, where each body has its own time-stepping. Other control quantities than contact power. Adaptive numerical damping, developed within the framework of Section 4. REFERENCES [1] V. I. Arnold. Mathematical methods of classical mechanics, volume 60 of Graduate Texts in Mathematics. Springer-Verlag, New York, 1989. Translated from the 1974 Russian original by K. Vogtmann and A. Weinstein, Corrected reprint of the second (1989) edition. [2] S. R. Buss. Accurate and efficient simulation of rigid-body rotations. J. Comput. Phys., 164(2):377 406, 2000. [3] M. P. Calvo and J. M. Sanz-Serna. Variable steps for symplectic integrators. In Numerical analysis 1991 (Dundee, 1991), volume 260 of Pitman Res. Notes Math. Ser., pages 34 48. Longman Sci. Tech., Harlow, 1992. [4] B. Gladman, M. Duncan, and J. Candy. Symplectic integrators for long-term integrations in celestial mechanics. Celestial Mech. Dynam. Astronom., 52(3):221 240, 1991. [5] E. Hairer, C. Lubich, and G. Wanner. Geometric numerical integration, volume 31 of Springer Series in Computational Mathematics. Springer-Verlag, Berlin, 2002. Structurepreserving algorithms for ordinary differential equations. [6] E. Hairer and G. Söderlind. Explicit, time-reversible, adaptive step size control. Accepted for publication in SIAM J. Sci. Comput. 2005., 2005. [7] A. Hindmarsh. CVODE open-source software. www.llnl.gov/casc/sundials/. [8] W. Huang and B. Leimkuhler. The adaptive Verlet method. SIAM J. Sci. Comput., 18(1):239 256, 1997. Dedicated to C. William Gear on the occasion of his 60th birthday. [9] C. Kane, J. E. Marsden, and M. Ortiz. Symplectic-energy-momentum preserving variational integrators. J. Math. Phys., 40(7):3353 3371, 1999. 13

[10] A. Logg. Automation of Computational Mathematical Modeling. PhD thesis, Chalmers University of Technology, 2004. [11] J. E. Marsden and T. S. Ratiu. Introduction to mechanics and symmetry, volume 17 of Texts in Applied Mathematics. Springer-Verlag, New York, second edition, 1999. A basic exposition of classical mechanical systems. [12] J. E. Marsden and M. West. Discrete mechanics and variational integrators. Acta Numer., 10:357 514, 2001. [13] P. J. Rabier and W. C. Rheinboldt. Nonholonomic motion of rigid mechanical systems from a DAE viewpoint. SIAM, Philadelphia, PA, 2000. [14] M. Schaub and B. Simeon. Automatic h-scaling for the efficient time integration of stiff mechanical systems. Multibody Syst. Dyn., 8(3):329 345, 2002. Computational techniques and applications in nonlinear dynamics of structures and multibody systems (Paris, 2001). [15] G. Söderlind. Automatic control and adaptive time-stepping. Numer. Algorithms, 31(1-4):281 310, 2002. Numerical methods for ordinary differential equations (Auckland, 2001). [16] G. Söderlind. Digital filters in adaptive time-stepping. ACM Trans. Math. Software, 29(1):1 26, 2003. [17] G. Söderlind and L. Wang. Adaptive time-stepping and computational stability. Accepted for publication in J. Comp. and Appl. Math., 2005, 2005. [18] L.-E. Stacke and D. Fritzson. Dynamical behaviour of rolling bearings: simulations and experiments. Proc. Instn. Mech. Engrs., 215:499 508, 2001. [19] D. Stoffer. Variable steps for reversible integration methods. Computing, 55(1):1 22, 1995. [20] V. Talasila. A Hamiltonian approach to Discrete Mechanics: Issues in Geometry, Modeling, Simulations and Control. PhD thesis, Universiteit Twente, Enschede, 2004. [21] G. Zhong and J. E. Marsden. Lie-Poisson Hamilton-Jacobi theory and Lie-Poisson integrators. Phys. Lett. A, 133(3):134 139, 1988. 14