An Implicit Runge Kutta Solver adapted to Flexible Multibody System Simulation Johannes Gerstmayr 7. WORKSHOP ÜBER DESKRIPTORSYSTEME 15. - 18. March 2005, Liborianum, Paderborn, Germany Austrian Academy of Sciences, Institute for Technical Mechanics Johannes Kepler University of Linz AUSTRIA Support of the author by a grant of the Austrian Academy of Sciences (APART-scholarship) is gratefully acknowledged.
Overview Goal: Flexible multibody simulation Time integration code HOTINT Nonlinear equations in K-form Large scale systems: Structure and improvement of Jacobian Examples: Large number of equations Example: High order of convergence
Goal Develop formalisms for the modeling of flexible multibody systems: new flexible bodies and special joints o Multibody system simulation (3D industrial applications) Rigid bodies (non-constant mass matrix) Flexible bodies (non-linear stiffness matrix) Special joints (e.g. sliding joint, including ODEs) Hydraulics, controlled actuators (very stiff) o Needed: Time-integration code Mixed first order / second order ODE / DAE large number of equations (>1000) Integrated multibody and time-integration code
Flexible Multibody System Formulations Two approaches for flexible MBS we are interested: Floating Frame of Reference Formulation (FFRF) Absolute Nodal Coordinate Formulation (ANCF) Very stiff equations ( condition numbers as high as possible ) Numerical solution for MBS with small deformations: ANCF: + constant mass matrix + nonlinear stiffness matrix can be linearized + approximate Jacobian, no factorization for all time steps (except for nonl. algebra. equ.) FFRF: - non-constant mass matrix + If coupling of deformations and rotations is week Jacobian can be re-used for larger number of time steps (typically 10s-1000s) + Modal analysis can be used in the framework of FFRF
High order Implicit Runge Kutta (IRK) schemes HOTINT High Order Time INTegrator Mixed first order + second order ODE + algebraic equations solver Generally implemented for implicit Runge Kutta schemes Properties: Object-oriented multibody formulation (C++) Most operations done on element level, object oriented Gauss, LobattoIIIA, LobattoIIIC, RadauIA, RadauIIA; up to s=20 Specially adapted to (flexible) multibody system simulation Adapted to redundant coordinates multibody formulation, sparse system matrices Object oriented structure (Classes, Inheritance): Element (Class): Rigid body, flexible body, joint, contact, control, actuator, sensor, Element provides first/second order ODE and algebraic equations, knows what to do Forces: point load, torque, body load,
Main structure of HOTINT Equations of motion for mixed 1 st, 2 nd order and algebraic equations, semi-implicit form: (, u&, x, z) u&& = F2 ( u, u&, x, z) F1 ( u, u&, x, z) G( u, u&, x, z) M u x& = 0 = with u...second order ODE variables x... first order ODE variables z...algebraic variable M (non-constant) Mass matrix F 2 includes damping, gyroscopic, elastic and external forces; constraint forces F 1 right-hand-side of first order equations (e.g. hydraulics, control, ) G G G G G algebraic constraints,,,, is available u u& x z
Structure of HOTINT (contd.) General Implicit Runge Kutta methods are used to solve the DAE Index 2 formulation mostly used (numerical drift off in many cases neglectable, or stabilized) Runge-Kutta methods written in K-form unknowns: K, K z, nonlinear equations for every stage i: iv ix, i ( Kiu ) ( vi ) ( ) i iv F = 2 ui, vi, xi, zi Kix F1 ( ui, vi, xi, zi ) 0 G( u, v, x, z ) M K i i i i vi = v0 + τ j= 1 AijK jv n, with ui = u0 + τ j= 1 AijK ju, n xi = x0 + τ j= 1 AijK jx n K iu = v i is eliminated The Jacobian is computed for every element w.r.t. ( u, v, x, z ) i i i i The evaluation step does not require the factorization of the mass matrix For first order equations, g-form, adaptive stepsize RadauIIA-methods see E. Hairer and G. Wanner. Stiff differential equations solved by Radau methods or the RADAU5 code. Available via WWW at URL, ftp://ftp.unige.ch/pub/doc/math/stiff/radau5.f (1996).
Sketch of the Jacobian for the K-form IRK method
Transformation of the Jacobian Split up system into one part with dominating band-structure ( ; mostly terms of mass and stiffness matrix) and remaining part (mostly algebraic equations). The Jacobian is written as J bb Jbb Jbz qb Rb = J J q R zb zz z z Requirement: J bb must be regular for rigid bodies with Euler parameters, the algebraic equations are part of the bb-system and are sparse matrices (Lagrange multipliers; depends on joints) J zb J J bz Size of is much larger than size of bb The solution is computed by means of the transformed equation: ( ) 1 with the matrix Q = J J J J. zz zz zb bb bz J zz 1 1 qz = Qzz ( Rz JzbJbbRb) ( ) q = J R J q 1 b bb b bz z Alternatives: Sparse matrix solver (SuperLU, PARDISO)
Advantages (compared to standard ODE/DAE integrators and multistep integrators) Smaller number of unknowns for time-integration compared to implicit-dae approaches (DASSL) or compared to RadauIIA (constant mass matrix) No symbolic inversion of possibly non-linear and non-constant mass matrix High order of convergence; orders up to 20 (10-stage-Gauss) possible for real-life multibody systems No restarting is necessary after a discontinuous step Factorization and back-substitution is not expensive compared to evaluation (~1K-10K nonlinear equations). RadauIIA (s>1) methods are useful for the development/verification of new joints (Index 3) Numerical damping is low for most methods (Gauss, LobattoIIIA; RadauIIA, s>1 ok) Disadvantages Increasing size of equations for nonlinear system, larger Jacobian than in multistep methods Condition numbers become worse with larger number of stages Error estimator based on half-steps (similar to idea of Richardson-extrapolation)
Example: Sliding 3D Beam with Eccentricity Beam modeled by absolute nodal coordinate formulation, example model from Sugiyama et al. sliding joint flexible cable sliding beam
Computational times for dense and transformed sparse factorisation Example: Sliding flexible beam along flexible cable (Sugiyama et al. 2003) 0.2 seconds simulation, 2000 steps, trapezoidal rule 250 200 sparse + transformed dense factorization linear quadratic computational time 150 100 50 0 0 1000 2000 3000 4000 5000 6000 unknowns
Main parts of the computational effort in the multibody simulation Computational effort versus unknowns: 100% 90% 80% 70% 60% 50% 40% 30% Rest Factorize Apply Evaluation 20% 10% 0% 239 443 851 1667 3299 6563 Evaluation: Computation of mass matrix, elastic and external forces, constraints, Apply: Explicit computations (multiplications and back-substitution)
Example: 3D pantograph/catenary system Integrated simulation: Pantograph (spring-damper system with, rigid bodies) and Catenary (flexible, large deformation, ANCF) as one multibody system 279 flexible bodies and 4 rigid bodies, ca. 1500 second order ODEs, ~1 hour for 8seconds
Contact force at pan-head for 32 m/s (left) and 45 m/s (right).
2-Arm crane with slender pipe, contact and friction (with M. Stangl) Actuators (represented by moments M1 and M2) placed in first and second hinge dry friction in third hinge Degrees of freedom: 4 Rigid body DOF / 4 elastic DOF Discontinuity: contact with surface and dry friction in hinge 3 nonlinear control of actuators in hinges 1 and 2 with limiter Control: PD-Control 3y MR3(t) 4y -q3(t) 3x 4x w4(x,t) q4(t) w2(x,t) w3(x,t) 2y q2(t) 2x 1y Iy w1(x,t) M2 M1 q1(t) 1x Ix h FK
Animation: Control of Crane-mechanism with contact and friction moment
Optimal stages for computational time? Test case: Absolute accuracy 1e-4, adaptive timestep, simulate 3 seconds discontinuous system, 2-arm crane with pipe, contact and friction 300 250 Computational time [s] 200 150 100 50 2 3 4 5 6 7 8 stages Computational time, Radau IIA, stages 2 to 8, ODE-Order 3 to 15
Number of time steps and number of computed Jacobians for different number of stages Radau IIA, absolute accuracy =10-4 Number of timesteps 7 x 104 6 5 4 3 2 1 0 2 3 4 5 6 7 8 stages Number of Jacobians 950 900 850 800 750 700 650 600 550 500 2 3 4 5 6 7 8 stages
ODE - Accuracy 10 0 10-2 10-4 10-6 10-8 10-10 10-12 Convergence of Continuous system (ODE-variables) (no friction/contact, const. control parameters) RadauIIA s=3 RadauIIA s=6 Gauss s=3 Gauss s=6 investigated: RadauIIA RadauIA Gauss LobattoIIIA/C RadauIIA and LobattoIIIA perform best 10-14 10-5 10-4 10-3 Timestepsize [s] Good agreement with theory, see Hairer and Wanner, Solving ordinary differential equations I (II), Springer Verlag Berlin Heidelberg, 1991
Convergence of Continuous system (no friction/contact, const. Control) Computational time versus accuracy with 2 arm-crane with pipe, adaptive timestep 10 2 2 stages 3 stages 4 stages 5 stages 6 stages 7 stages 8 stages Computation Time [s] 10 1 10-10 10-8 10-6 10-4 10-2 10 0 ODE-Accuracy
Conclusion Implicit Runge Kutta methods show good performance for large flexible multibody systems Nearly order-n formalism due to numerical methods Good convergence properties for small multibody systems and higher order Integrated time integration and object oriented multibody code is favorable Outlook / Question: Automatic stepsize + order + method? Error estimation for stiff equations?