of 325/325

Recurdyn Solver - Theoretical Manual

  • View
    693

  • Download
    71

Embed Size (px)

Text of Recurdyn Solver - Theoretical Manual

RReeccuurrDDyynn // SSoollvveerr TThheeoorreettiiccaall MMaannuuaall Copyright 2005 FunctionBay, Inc. All rights reserved This document may not be copied, disclosed, or modified without the prior written consent of FunctionBay, Inc. Information described in this document is furnished for general information only, is subject to change without notice, and should not be constructed as a warranty or inaccuracies that may appear in this manual. The software described in this document is provided under written license only, contains valuable trade secrets and proprietary information, and is protected by the copyright laws of the United States and Other countries. UNAUTHORIZED USE OF SOFTWARE OR ITS DOCUMENTATION CAN RESULT IN CIVIL DAMAGES AND CRIMINAL PROSECUTION. Edition Note This theoretical manual documents the theoretical background of the RecurDyn / Solver. Trademarks of FunctionBay, Inc. RecurDyn is a registered trademark of FunctionBay, Inc. RecurDyn/Professional, RecurDyn/SOLVER, RecurDyn/SOLID, RecurDyn/FLEX, RecurDyn/NodalFlex, RecurDyn/LINEAR, RecurDyn/CONTROL, RecurDyn/TRACK_HM, RecurDyn/TRACK_LM, RecurDyn/CHAIN, RecurDyn/MTT2D, RecurDyn/MTT3D, RecurDyn/BELT, RecurDyn/HAT, RecurDyn/Hydraulic, RecurDyn/Gear, RecurDyn/Hydraulic, RecurDyn/Tire are trademarks of FunctionBay, Inc. Revision History First printed, April 2001 1st Revision, January 2002 2nd Revision, July 2002 3rd Revision, August 2002 4th Revision, September 2003 5th Revision, September 2005 RecurDyn/SOLVER THEORETICAL MANUAL TABLE OF CONTENTS 1. GENERALIZED RECURSIVE FORMULATION 1- 1 1.1. INTRODUCTION ... 1- 1 1.2. RELATIVE COORDINATE KINEMATICS .. 1- 2 1.2.1 COORDINATE SYSTEMS . 1- 2 1.2.2 RELATIVE KINEMATICS FOR A PAIR OF CONTIGUOUS BODIES 1- 4 1.3. GENERALIZATION OF THE VALOCITY RECURSIVE FORMULA ... 1- 6 1.4. GENERALIZATION OF THE FORCE RECURSIVE FORMULA 1- 8 1.5. GRAPH REPRESENTATIONS OF MECHANICAL SYSTEMS ... 1- 9 1.6. EQUATIONS OF MOTION AND DAE SOLUTION METHOD .. 1-10 1.7. GENERALIZED RECURSIVE FORMULAS . 1-13 1.7.1 RECURSIVE FORMULA FOR . x B X & & = 1-14 1.7.2 RECURSIVE FORMULA FOR RM BOLD ... q qBx X ) ( =1-14 1.7.3 RECURSIVE FORMULA FOR qTqG) (B g =1-15 1.7.4 RECURSIVE FORMULA FOR AND .. q qx) B ( X & & =v vx B X ) (& & =1-18 1.8. APPLICATION OF THE GENERALIZED RECURSIVE FORMULAS . 1-18 1.8.1 COMPUTATION OF THE RESIDUAL F 1-18 1.8.2 COMPUTATION OF THE JACOBIAN qF1-19 1.9. NUMERICAL EXAMPLES ..... 1-20 1.9.1 A GOVERNOR MECHANISM .. 1-20 1.9.2 A MULTI-WHEELED VEHICLE .. 1-22 1.10. CONCLUSIONS .. 1- 24 RecrDyn / Solver THEORETICAL MANUAL REFERENCES ... 1- 25 APPENDIX A : RECURSIVE FORMULAS 1- 26 2. DECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION .. 2- 1 2.1. INTRODUCTION ... 2- 1 2.2. IMPLICIT NUMERICAL INTEGRATION FOR DIFFERENTIAL ALGEBRAIC EQUATIONS .. 2- 2 2.3. A DECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION .. 2- 4 2.4. NUMERICAL ALGORITHM .. 2-7 2.5. NUMERICAL EXAMPLES . 2-7 2.5.1 QUICK-RETURN MECHANISM .. 2-7 2.5.2 AIR COMPRESSOR . 2-10 2.6. CONCLUSIONS ..... 2-12 REFERENCES ..... 2-13 3. FLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT . 3- 1 3.1. INTRODUCTION ... 3- 1 3.2. KINEMATICS TWO CONTIGUOUS FLEXIBLE BODIES . 3- 3 3.2.1. COORDINATE SYSTEMS AND VIRTUAL BODIES 3-3 3.2.2. JOINT CONSTRAINTS BETWEEN TWO RIGID BODIES .. 3-4 3.2.3. FLEXIBLE BODY JOINT CONSTRAINT BETWEEN A FLEXIBLE BODY AND A RIGID VIRTUAL BODY . 3-5 3.3. EQUATIONS OF MOTION . 3- 9 3.3.1. COEFFICIENT MATRIX OF CONVENTIONAL AUGMENTED FORMULATION 3-10 3.3.2. COEFFICIENT MATRIX OF PROPOSED AUGMENTED FORMULATION 3-11 3.3.3. NON-SINGULARITY OF AUGMENTED MASS MATRIX 3-12 3.4. COMPUTER IMPLEMENTATION AND DISCUSSIONS . 3-13 3.4.1. NUMERICAL ALGORITHM . 3-13 3.4.2. COMPARISON OF DIFFERENT IMPLEMENTATION METHODS 3-14 3.5. NUMERICAL RESULTS .. 3-17 3.5.1. FLEXIBLE SLIDER CRANK MECHANISM ... 3-17 3.5.2. FLEXIBLE PENDULUM MECHANISM . 3-20 3.6. SUMMARY AND CONCLUSIONS 3-22 REFERENCES ..... 3-23 4. GENERALIZED RECURSIVE FORMULATION FOR FLEXIBLE MULTIBODY DYNAMICS 4- 1 4.1. INTRODUCTION ... 4- 1 4.2. RELATIVE COORDINATE KINEMATICS OF TWO CONTIGUOUS FLEXIBLE BODIES .... 4- 3 4.2.1. COORDINATE SYSTEMS AND VIRTUAL BODIES . 4-3 4.2.2. RELATIVE KINEMATICS FOR A FLEXIBLE BODY JOINT 4-5 4.2.3. RELATIVE KINEMATICS FOR A RIGID BODY JOINT .. 4-7 4.2.4. GRAPH REPRESENTATIONS OF MECHANICAL SYSTEMS .. 4-8 4.3. FORWARD RECURSIVE FORMULAS . 4-10 4.3.1. GENERALIZATION OF THE VELOCITY RECURSIVE FORMULA . 4-10 RecrDyn / Solver THEORETICAL MANUAL 4.3.2. RECURSIVE FORMULA FOR q q) (Bx X =4-11 4.4. BACKWARD RECURSIVE FORMULAS ... 4-13 4.4.1. GENERALIZATION OF THE FORCE RECURSIVE FORMULA 4-13 4.4.2. Recursive Formula for k k qTq) ( G B g =4-15 4.5. THE GOVERNING EQUATIONS OF SOLUTION .. 4-17 4.5.1. IMPLICIT INTEGRATION OF THE EQUATIONS OF MOTION 4-17 4.5.2. APPLICATION OF THE GENERALIZED RECURSIVE FORMULAS 4-19 4.6. NUMERICAL RESULTS . 4-20 4.7. CONCLUSIONS . 4-23 REFERENCES ..... 4-25 5. RELATIVE NODAL METHOD FOR LARGE DEFORMATION PROBLEM .... 5-1 5.1. INTRODUCTION ... 5-1 5.2. RELATIVE DEFORMATION KINEMATICS . 5-2 5.2.1. GRAPH THEORETIC REPRESENTATION OF A STRUCTURE 5-2 5.2.2. KINEMATIC DEFINITIONS .. 5-3 5.3. GOVERNING EQUATIONS OF EQUILIBRIUM 5-6 5.3.1. STRAIN ENERGY 5-6 5.3.2. EXTERNAL FORCE . 5-7 5.3.3. CONSTRAINT . 5-8 5.3.4. EQUATIONS OF EQUILIBRIUM 5-10 5.4. NUMERICAL ALGORITHM 5-11 5.5. NUMERICAL EXAMPLES .. 5-12 5.6. CONCLUSIONS ..... 5-16 REFERENCES ..... 5-17 6. DYNAMIC ANALYSIS OF HIGH-MOBILITY TRACKED VEHICLES .................... 6-1 6.1. INTRODUCTION ... 6-1 6.2. HIGH-SPEED, HIGH-MOBILITY TRACKED VEHICLES 6-3 6.3. KINEMATIC RELATIONSHIPS AND EQUATIONS OF MOTION .. 6-6 6.4. A COMPLIANT TRACK MODEL .. 6-7 6.4.1. SINGLE PIN CONNECTION 6-8 6.4.2. DOUBLE PIN CONNECTION .. 6-10 6.5. MEASUREMENT OF TRACK COMPLIANCE CHARACTERISTICS .. 6-12 6.6. CONTACT FORCES .. 6-15 6.6.1. INTERACTION BETWEEN TRACK AND ROAD WHEEL, IDLER, AND SUPPORT ROLLER . 6-15 6.6.2. TRACK CENTER GUIDE AND ROAD WHEEL INTERACTIONS 6-16 6.6.3. INTERACTION BETWEEN SPROCKET TEETH AND TRACK LINK PINS 6-17 6.6.4. GROUND AND TRACK SHOE INTEGRATION .. 6-18 6.7. METHOD OF NUMERICAL INTEGRATION . 6-19 6.7.1. ACCURACY ANALYSIS 6-19 6.7.2. STABILITY ANALYSIS . 6-20 6.7.3. IMPLEMENTATION OF A VARIABLE STEPPING ALGORITHM . 6-22 6.8. NUMERICAL RESULTS . 6-24 RecrDyn / Solver THEORETICAL MANUAL 6.9. CONCLUSIONS ..... 6-30 REFERENCES ..... 6-31 7. DYNAMIC TRACK TENSION OF HIGH MOBILITY TRACKED VEHICLES . 7-1 7.1. INTRODUCTION ... 7-1 7.2. NUMERICAL MODEL OF A HIGH MOBILITY TRACKED VEHICLE ... 7-3 7.3. INTERACTION GROUNDS . 7-8 7.4. MEASUREMENT OF THE DYNAMIC TRACK . 7-16 7.5. NUMERICAL INVESTIGATION OF DYNAMIC TRACK TENSION . 7-17 7.6. FUTURE WORK AND CONCLUSIONS . 7-22 REFERENCES ..... 7-23 8. EFFICIENT CONTACT AND NONLINEAR DYNAMIC MODELING FOR TRACKED VEHICLES .. 8-1 8.1. INTRODUCTION ... 8-1 8.2. MULTIBODY TRACKED VEHICLE MODEL AND PARAMETER EXTRACTIONS . 8-4 8.3. EFFICIENT CONTACT SEARCH ALGORITHM . 8-5 8.3.1. ROAD WHEEL-TRACK LINK CONTACT 8-5 8.3.2. SPROCKET-TRACK LINK CONTACT ... 8-6 8.3.3. GROUND-TRACK LINK CONTACT . 8-7 8.4. EQUATIONS OF MOTION . 8-10 8.5. EXTENDED BEKKERS SOIL MODEL FOR MULTIBODY TRACK SYSTEM 8-11 8.6. SUMMARY AND CONCLUSIONS 8-15 REFERENCES ..... 8-16 9. AN EFFICIENT CONTACT SEARCH ALGORITHM FOR GENERAL MULTIBODY SYSTEM DYNAMICS . 9-1 9.1. INTRODUCTION ... 9-1 9.2 KINEMATIC NOTATIONS OF A CONTACT PAIR . 9-3 9.3. DIVISION OF THE CONTACT DOMAIN .. 9-4 9.4. PRE-SEARCH 9-6 9.5. POST-SEARCH AND COMPLIANCE CONTACT FORCE .. 9-7 9.6. KINEMATICS AND EQUATION OF MOTION FOR THE RECURSIVE FORMULAS 9-9 9.7. NUMERICAL INTEGRATION STRATEGY 9-12 9.8. NUMERICAL EXAMPLE . 9-13 9.9 CONCLUSIONS ... 9-15 REFERENCES ..... 9-16 10. LINEARIZED EQUATIONS OF MOTION FOR MULTIBODY SYSTEMS WITH CLOSE LOOPS .. 10-1 RecrDyn / Solver THEORETICAL MANUAL 10.1. INTRODUCTION .. 10-1 10.2. RELATIVE COORDINATE KINEMATICS . 10-4 10.3. EQUATIONS OF MOTION 10-7 10.4. ELIMINATION OF LAGRANGE MULTIPLIERS AND LINEARIZATION OF THE EQUATIONS OF MOTION . 10-8 10.5. NUMERICAL EXAMPLE. 10-10 10.5.1. FOURBAR MECHANISM WITH A SPRING .. 10-10 10.5.2. CANTILEVER BEAM DRIVEN BY A MOTION 10-13 10.5.3. A SPRING SYSTEM WITH 2 D.O.F 10-14 10.5.4. A CANTILEVER BEAM . 10-15 10.9 CONCLUSIONS ... 10-18 REFERENCES ..... 10-19 11. NONLINEAR DYNAMIC MODELING OF SILENT CHAIN DRIVE 11-1 11.1. INTRODUCTION .. 11-1 11.2. MULTIBODY MODELING OF SILENT CHAIN DRIVE .. 11-4 11.2.1. SPROCKET 11-4 11.2.2. SILENT CHAIN LINK . 11-4 11.2.3. TENSIONER AND CHAIN GUIDE .. 11-6 11.2.4. EQUATIONS OF MOTION AND INTEGRATION .. 11-6 11.3. CONTACT FORCE ANALYSIS .. 11-8 11.3.1. STRATEGE OF CONTACT SEARCH 11-8 11.3.2. LINE-ARC CONTACT 11-9 11.3.3. ARC-POINT CONTACT . 11-12 11.3.4. ARC-ARC CONTACT . 11-13 11.3.5. LINE-POINT CONTACT . 11-13 11.3.6. CONTACT FORCE MODEL 11-14 11.4. NUMERICAL STUDY OF AN AUTOMOTIVE SILENT CHAIN SYSTEM . 11-14 11.5. FUTURE WORK AND CONCLUSIONS . 11-18 REFERENCES ..... 11-19 12. DYNAMIC ANALYSIS AND CONTACT MODELING FOR TWO DIMENSIONAL MEDIA TRANSPORT SYSTEM . 12-1 12.1. INTRODUCTION .. 12-1 12.2. TWO DIMENSIONAL FLEXIBLE MULTIBODY SHEET . 12-3 12.3. CONTACT FORCE ANALYSIS .. 12-5 12.3.1. KINEMATICS NOTATIONS . 12-6 12.3.2. SHEET AND ROLLER INTERACTIONS ... 12-7 12.3.3. ROLLERS INTERACTIONS 12-9 12.3.4. SHEET AND ROLLER INTERACTIONS .. 12-9 12.4. EQUATIONS OF MOTION 12-12 12.5. NUMERICAL RESULTS 12-14 12.6. CONCLUSIONS 12-16 REFERENCES ..... 12-17 13. HYDRAULIC AUTO TENSIONER (HAT) FOR BELT DRIVE SYSTEM ... 13-1 13.1. INTRODUCTION .. 13-1 RecrDyn / Solver THEORETICAL MANUAL 13.2. MULTIBODY SIMULATION MODEL ... 13-3 13.3. EQUATIONS OF MOTION .. 13-4 13.4. HYDRAULIC FORCES 13-5 13.4.1. OIL FLOW RATES THROUGH THE CHECK VALVE . 13-6 13.4.2. OIL FLOW RATES THROUGH THE LEAK BETWEEN PLUNGER AND CYLINDER ... 13-7 13.5. CONTACK OF THE CHECK BALL .. 13-10 13.6. BELT DRIVE SYSTEM.. 13-12 13.7. NUMERICAL RESULTS 13-13 13.8. CONCLUSIONS 13-19 REFERENCES ..... 13-20 14. DYNAMIC ANALYSIS OF CONTACTING SPUR GEAR PAIR FOR FAST SYSTEM SIMULATION .. 14-1 14.1. INTRODUCTION .. 14-1 14.2. TOOTH PROFILE OF SPUR GEAR .. 14-2 14.3. EFFICIENT CONTACK SEARCH ALGORITHM AND CONTACK FORCE MODEL . 14-4 14.3.1. ARC-ARC CONTACT . 14-4 14.3.2. ARC-POINT CONTACT .. 14-8 14.4. KINEMATICS AND EQUATION OF MOTION FOR SYSTEM DYNAMICS USING THE RECURSIVE FORMULAS .. 14-9 14.5. NUMERICAL RESULTS 14-12 RecrDyn / Solver THEORETICAL MANUAL 14.6. CONCLUSIONS 14-17 REFERENCES ..... 14-18 1 GENERALIZED RECURSIVE FORMULATION 1.1. INTRODUCTION In Ref. 1, the equations of motion for the constrained mechanical systems were derived with respect to Cartesian coordinates. Then the equations were transformed into the corresponding ones that employ the relative coordinates by using the velocity transformation method. Since the virtual displacement and acceleration of the entire system were simultaneously substituted into the variational form of the equations of motion, the resulting equations of motion were compact. In spite of the compactness, they are not computationally efficient since the recursive nature of the relative kinematics was not exploited. In Ref. 2, Hooker proposed a recursive formulation for the dynamic analysis of a satellite which has a tree topology. It was shown that the computational cost of the formulation increases only linearly with respect to the number of bodies. In Ref. 3, Featherstone proposed a recursive formulation to calculate the acceleration of robot arms using screw notation. These ideas were extended by using the variational vector calculus for constrained mechanical systems in Ref. 4. Constrained mechanical systems are represented by differential equations of motion and algebraic constraint equations, which are often called differential algebraic equations (DAE). Several DAE solution methods using the BDF have been proposed in Refs. 5-7. In particular, the parameterization method treated the DAE as an ordinary differential equation (ODE) on the kinematic constraint manifolds of the system. The stability and convergence of the method were proved in Ref. 8. The present research employs this method, due to its mathematical soundness. In Ref. 9, a recursive formulation was presented to obtain the Jacobian in the linearization of the equations of motion. Recursive formulas for each term in the equations of motion were directly derived, using the state vector notation. RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION Similar approach was taken in Ref. 8 to implement the implicit BDF integration with the relative coordinates. Since the recursive formulas were derived term by term, the resulting equations and algorithm became much complicated. To avoid the complication involved in Ref. 8, the equations of motion are derived in a compact matrix form by using the velocity transformation method in the present study. Computational structure of the equations of motion in the joint space is carefully examined to classify all computational operations that can be done in a recursive way into several categories. The generalized recursive formula for each category of the computational operations is then developed and applied whenever such a category is encountered. Many common fact ors, which are not easily observed when they are derived term by term, can be observed among terms in the equations of motion. Furthermore, the matrix form of the equations makes it easy to debug and understand the program while computational efficiency is achieved by the recursive computational operation. A library of the generalized recursive formulas is developed to implement a dynamic analysis algorithm using the backward difference formula (BDF) and the relative generalized coordinate. Section 2 introduces relative coordinate kinematics. Generalization of velocity and force recursive formulas is treated in Sections 3 and 4, respectively. Also, computational equivalence between the recursive method and velocity transformation method for a mechanical system is shown in Section 3. Section 5 presents a graph representation of mechanical systems. Section 6 presents the equations of motion and a solution method for the DAE. A library of the generalized recursive formulas are developed and applied in Sections 7 and 8. Numerical examples are given in Section 9. Conclusions are drawn in Section 10. 1.2. RELATIVE COORDINATE KINEMATICS 1.2.1 COORDINATE SYSTEMS Orientation of a body in Fig. 2.1 is given as 1-3 | h g f A =((((

=33 32 3123 22 2113 12 11a a aa a aa a a| (2-1) where , , and h are unit vectors along the f g x , y , and axes, respectively. The zz y x frame is the body reference frame and the frame is the inertial reference frame. Z Y X ZXYrprpxyzso Fig. 2.1 Coordinate systems and a rigid body Velocities and virtual displacements of point in the X O Z Y frame are defined as (2-2a) ((

wr&((

r (2-2b) Their corresponding quantities in the z y x frame are defined as RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION (2-3a) ((

((

=w Ar AwrYTT& & (2-3b) ((

((

= TTAr A r 1.2.2 RELATIVE KINEMATICS FOR A PAIR OF CONTIGUOUS BODIES A pair of contiguous bodies is shown in Fig. 2.2. Body 1) (i is assumed to be an inboard body of body and the position of point is iiO 1) i(i 1)i (i 1)i (i 1) (i i + + = s d s r r (2-4) The angular velocity of body in its local reference frame, using Eq. 2-3a and defining , is iiT1) (i 1)i (iA A A = 1)i (i 1)i (iT1)i (i 1) - (iT1)i (i i + = q H A w A w & (2-5) where is determined by the axis of rotation. H ziXZYri-1ris(i-1)isi(i-1)yi-1xi-1zi-1zi-1xi-1xiyixiziyiyi-1d(i-1)ioi oi-1 Fig. 2.2 Kinematic relationship between two adjacent rigid bodies 1-5 Differentiation of Eq. 2-4, using Eq. 2-3a, yields 1)i (i'1)i (i 1) (i'i'1) i(i i'1) (i'1)i (i 1) (i'1) (i'1)i (i 1) (i'1) (i 1) (i'i i1)i (i) (~~~ + + =q d As A d As A r A r Aq && & (2-6) where symbols with tildes denote skew symmetric matrices comprised of their vector elements that implement the vector product operation (Ref. 1) and denotes the relative coordinate vector. Substituting of Eq. 2-5 and multiplying both sides of Eq. 2-6 by yields 1)i (iq'iTiA 1)i (i 1)i (i1)i (iT1) i(i 1)i (i 1)i (i1)i (iT1) (i1)i (iT1) - i(i 1)i (i 1)i (i 1)i (i1)i (iT1) (i1)i (iTi)~) ( ()~~~(1)i (i + + + = q H A s A d AA s A d s Ar A rq && & (2-7) where i i i~ = A A& is used. Combining Eqs. 2-5 and 2-7 yields the recursive velocity equation for a pair of contiguous bodies. 1)i (i 1)i2 (i 1) (i 1)i1 (i i + = q B Y B Y & (2-8) where ((

+ ((

= I 0A s A d s IA 00 AB)~~~( 1)i (iT1) i(i 1)i (i 1)i (i 1)i (i1)i (iT1)i (iT1)i1 (i (((

+ ((

= 1)i (i1)i (i1)i (iT1) i(i 1)i (i 1)i (i1)i (iT1)i (iT1)i2 (i~) (1)i (iHH A s A dA 00 ABq (2-9) It is important to note that matrices and are functions of only relative coordinates of the joint between bodies 1)i1 (iB1)i2 (iB(i 1) and . As a consequence, further differentiation of the matrices and in Eq. i1)i2 1)i1 (iB(iB RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION 2-9 with respect to other than yields zero. This property plays a key role in simplifying recursive formulas in Section 7. 1)i (iq1)i1 (i 2Y1)m1 Y1) - (mSimilarly, the recursive virtual displacement relationship is obtained as follows. (2-10) 1)i (i 1)i2 (i 1) (i i + = q B Z B Z 1.3. GENERALIZATION OF THE VELOCITY RECURSIVE FORMULA 1n-1n0 Fig. 3.1 A serial chain mechanism Before proceeding to generalize the recursive velocity formula, the computational equivalence between the recursive method and the velocity transformation method is demonstrated using the mechanical system shown in Fig. 3.1. The Cartesian velocity is obtained by replacing by in Eq. 2-8. mi m 1)m (m 1)m2 (m 1) (m (m m + = q B B Y & (3-1) Substitutions of Eq. 2.8 for , , . . . , and yield Y2) - (mY0Y 1-7 1)m - (m 1)m2 - (m1 - m1 j1)j - (j 1)j2 - (jj - m1 k1)1 - m m)(-k k (m1 k0 1)1 - m m)(-k k ( mq Bq B BY B&&+ )`||.|

\|+= = = + + = + + Y (3-2) Thus, the Cartesian velocity for all bodies is obtained as Y q B Y & = (3-3) where is the collection of coefficients of and B1)i (iq& | |T1 ncT T2T1T0 =nY , , Y , Y , Y Y K (3-4) | |T1 nrT) 1 (T12T01T0 =n nq , , q , q , Y q & K & & & (3-5) where and nc nr denote the numbers of the Cartesian and relative coordinates, respectively. The Cartesian velocity , with a given , can be evaluated either by using Eq. 3-3 or by using Eq. 2-8 with recursive numerical substitution of . Since both formulas give an identical result, and recursive numerical substitution is proven to be more efficient in Ref. 4, matrix multiplication with a given will be evaluated by using Eq. 2-8. ncR YnrR q&iYq B&q&Since in Eq. 3-3 is an arbitrary vector in , Eqs. 2-8 and 3-3, which are computationally equivalent, are actually valid for any vector such that q&nrRnrR x x B X & = (3-6) and 1)i - (i 1)i2 - (i 1) - (i 1)i1 - (i ix B X B X + = (3-7) where is the resulting vector of multiplication of and . As a ncR X B x RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION result, transformation of into is calculated by recursively applying Eq. 3.7 to achieve computational efficiency. nrR xW ncR BxGncR QQ Z* T Q q =+*) ! i(iQ( { + +1 i 1)2Q(Tq ===1 - n0 i = +1 - n0 iTi(iqT=0 1.4. GENERALIZATION OF THE FORCE RECURSIVE FORMULA It is often necessary to transform a vector in into a new vector in . Such a transformation can be found in generalized force computation in the joint space with a known force in the Cartesian space. The virtual work done by a Cartesian force is ncRG B gT=nrR = (4-1) where must be kinematically admissible for all joints in Fig. 3.1. Substitution of Z q B Z = into Eq. 4-1 yields T Q B W (4-2) where . Equation 4-2 can be written in a summation form as Q B QT * +T1) i(i q W (4-3) On the other hand, the symbolic substitution of the recursive virtual displacement relationship Eq. 2-10 into Eq. 4-1, along the chain in Fig. 3.1 starting from the body n toward inboard bodies, yields )})+ +=1 iTi(i 1) S B W (4-4) where 2 i 2 i2)1 1)(i (i1 i0+ ++ ++ + S Q B SS (4-5) 1-9 Equating the right sides of Eqs. 4-3 and 4-4, the following recursive formula for is obtained: * Q ( ) 0 ...., 1, - n i ,1 i 1 i)2 1 i(iT1) i(i*= + + ++ + S Q B Q (4-6) where is defined in Eq. 4-5. 1 i+SSince is an arbitrary vector in , Eqs. 4-5 and 4-6 are valid for any vector in . As a result, the matrix multiplication of is evaluated to achieve computational efficiency by QGncRncR G BT ( )( ) 0 ...., 1, i1 i 1 i)1 1 i(iTin1 i 1 iT1)2 i(i 1) i(i= + = + =+ +++ + + +S Q B S0 SS G B g (4-7) where is the result of . g G BT 1.5. GRAPH REPRESENTATIONS OF MECHANICAL SYSTEMS In the previous section, a serial chain mechanism is considered to derive recursive formulas for and B where is a vector in and G in . In general, a mechanical system may have various topological structures. To cope with the various topological structures, an automatic preprocessing is required for a general purposed program, which employs a relative coordinate formulation. The preprocessing identifies the topological structure of a constrained mechanical system to achieve computational efficiency. A graph theory was used to represent bodies and joints for mechanical systems in Refs. 1 and 4. A node and an edge in a graph represented a body and a joint, respectively. The preprocessing based on the graph theory yielded the path and distance matrices that are provided to automatically decide execution sequences Bx GTxnrRncR RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION for a general purposed program. As an example, a governor mechanism and its graph representation are shown in Figs. 5.1 and 5.2. 4328 7651U1R2 R3U2S1 S2T2R1T1: Cut joint Fig. 5.1 Governor mechanism 76453821R1T1R3U2R2U1T2Cut JointCut Joint Fig. 5.2 Graph representation of the governor mechanism 1.6. EQUATIONS OF MOTION AND DAE SOLUTION METHOD The variational form of the Newton-Euler equations of motion for a constrained mechanism is 1-11 0 ) Q Y M Z T= +&( (6-1) where Z must be kinematically admissible for all joints except cut joints [1]. In the equation, and , respectively, denote the cut joint constraint and the corresponding Lagrange multiplier. The mass matrix and the force vector are defined as MQ (nbd 2 1, , , diag M M M M L = ) (6-2) ((

=iiiJ 00 I mM (6-3) | |TnbdT3T2T1, , , , Q Q Q Q Q L = (6-4) ~((

= J nr m fQ~i& (6-5) where denotes the number of bodies, denotes the identity matrix, denotes the moment of inertia, denotes the external force, and denotes the external torque. Substituting the virtual displacement relationship into Eq. 6-1 yields nbd I Jf n { } 0 ) Q Y M B q T= +&(T (6-6) Since q is arbitrary, the following equations of motion are obtained: 0 ) Q Y M B F T= + = &( (6-7) The equations of motion, the constraint equations, q v = & , and constitute the following differential algebraic equations[8]: a v = & RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION 0a vv qa v q v q q ) a , v q ( F=(((((((((

) ( ) ( ) (&&& &&t , , ,t , ,t ,t , , , (6-8) Application of 'tangent space method' in Ref. 7 to Eq. 6-8 yields the following nonlinear system that must be solved at each time step: 0 a v U v q Ua v q v q q ) a , v q ( Fp H =(((((((((

+ + + + ) ( ) ( ) (=) () (t , , ,t , ,t ,t , , ,) (2 n 0 nT01 n 0 nT0n n nn n nn nn n n n nnn& && (6-9) where | |T TnTnTnTn n , a , v , q p =0U, , , and are determined by the coefficients of the BDF, and is an 01nr2ncut) - (nr such that the augmented square matrix is nonsingular. (((

qUT0Applying the Newton's method to solve the nonlinear system in Eq. 6-9 yields H p Hp = (6-10) 1,2,3,... i ,in1 in = + =+p p p (6-11) where 1-13 (((((((((

=0 U U 00 0 U U0 0 0 0 0 0 F F F FHT0a v qv qqq q q qpT0 0T0 0T0 & & & & & && & (6-12) Since and are highly nonlinear functions of , , , and F q v a , care must be taken in deriving the non-zero expressions in , so that they can be efficiently evaluated. pH 1.7. GENERALIZED RECURSIVE FORMULAS Inspection of the residual and Jacobian matrix shows that types of necessary recursive formulas are classified into Bx , , , , HpHG BTx B& ( )qBx( )qG BT, ( )qx B&, and ( )vx B&, where into G are arbitrary constant vectors, and are relative coordinates. Formulas and were derived in Sections 3 and 4, and the formulas for the rest will be derived in this section. All recursive formulas are tabulated in Appendix A. Note that the recursive formulas are quite simple. This simplicity is achieved by exploiting the relative kinematics in the local reference frame instead of the global reference frame. nrR xncRBxq G BTTo derive the formulas systematically, bodies in a graph are divided into four disjoint sets (associated with a generalized coordinate ) as follows: kq( )kq q I having joint the of body outboard body outborad {k =} coordinate d generalize its as ( ) ( ) { }k k of bodies outboard all q I q II = ( ) ( ))`=body inboard and base the including , of body inboard the and body base e between th bodies allkkq Iq III RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION ( ) ( ) ( ) ( ) { }k k k k of set ary complement the q III q II q I q IV U U = For example, the body sets associated with q (relative coordinate between bodies 2 and 4) for the graph shown in Fig. 5.2 are obtained as follows: 24 ( ) { 4 Body 24 = q I }}}} ( ) { 7 and 6 Bodies24 = q II ( ) { 2 and 1 Bodies24 = q III ( ) { 8 and 5 3, Bodies24 = q IV 1.7.1 RECURSIVE FORMULA FOR x B X & & = Recursive formula for is easily obtained by differentiating Eq. 3-7. ncR x B& 1)i (i 1)i2 (i 1 i 1)i1 (i 1 i 1)i1 (i i + + = x B X B X B X & & & & (7-1) This recursive formula can be applied to compute the Cartesian acceleration with known relative velocity and acceleration. Y& 1.7.2 RECURSIVE FORMULA FOR RM BOLD q qBx X ) ( = To obtain the recursive formula for , Eq. 3-7 is partially differentiated with respect to . qBx) (nr ..., 1, k ,k = q 1)i (i 1)2 (i 1 - i 1)i1 - (i 1 i 1)i1 (i ik k k) ( ) ( ) ( ) ( + + = x B X B X B Xq q q qk (7-2) Since matrices and depend only on the relative coordinates for joint , their partial derivatives with respect to generalized coordinates other than are zero. In other words, the partial derivatives are zero if 1)i1 (iB1)i11)i2 (iB1)i - (iq(i kq 1-15 does not belong to set . Therefore if body i is an element of set , Eq. 7-2 becomes ( )kq I II( )kq(q III( )kqik) = Xq24TG) (B k k) ( ) (1 i 1)i1 (i i q qX B X = (7-3) If body i belongs to set ) ( )k kq IV U , is not affected by . As a result, Eq. 7-3 is further simplified as follows iXkq 0 Xq =k) (i (7-4) If body i is an element of set , body is naturally its inboard body and it belongs to set . Using Eq. 7-4, Eq. 7-2 becomes (kq I ) 1) - (iIII 1)i (i 1)2 (i 1 i 1)i1 (ik k) ( ) ( ( + x B X Bq q (7-5) This recursive formula can be applied to compute the partial derivative of the Cartesian velocity with respect to relative coordinates Y . For example, if in Fig. 5.2, is shown in Fig. 7.1. q24 kq q =qY 1.7.3 RECURSIVE FORMULA FOR qTqG) (B g = Recursive formula for is obtained by using the recursive formula in Eq. 4-7. By replacing i by , Eq. 4-7 can be rewritten as q- (i 1) ) () (i iT1)i1 - (i 1 - ii iT1)i2 - (i 1)i - (iS G B SS G B g+ = + = (7-6) Taking partial derivative of Eq. 7-6 with respect to yields kq RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION (Y1)q24 = 0(B671)q24 = 0,(B672)q24 = 0(B461)q24 = 0,(B462)q24 = 0(B241)q24 ,(B242)q24 (B121)q24 = 0,(B122)q24 = 0(B231)q24 = 0,(B232)q24 = 0(B351)q24 = 0,(B352)q24 = 0(B281)q24 = 0,(B282)q24 = 0(Y2)q24 = 0(Y4)q24 =(B241)q24Y2+(B242)q24q24(Y3)q24 = 0(Y8)q24 = 0(Y5)q24 = 0 .(Y6)q24 = B461 (Y4)q24 (Y7)q24 = B671 (Y6)q24 Fig. 7.1 Computation Sequence for 24qY k k kk k k) ( ) ( ) ( ) ( ) () ( ) ( ) ( ) ( ) (i iT1)i1 (i i iT1)i1 (i 1 ii iT1)i2 (i i iT1)i2 (i 1)i (iq q qq q qS G B S G B SS G B S G B g+ + + = + + + = (7-7) Since is a constant vector, . If .ncR G 0 Gq =k ( ) ( ) (k k kq IV q III q II U U ) i , and are not functions of . Therefore their partial derivatives with respect to are zero. As a result, Eq. 7-7 can be simplified to 1)i1 (iB1)i2 kq(iBkq k kk k) ( ) ( ) () ( ) ( ) (iT1)i1 (i 1 iiT1)i2 (i 1)i (iq qq qS B SS B g == (7-8) Since for the tree end bodies, by the second equation 0 Sq =k) (i0 Sq =k) (1 - i 1-17 of Eq. 7-8 for ( ) ( )k kq IV q II U i . Thus, for ( ) ( )k kq IV q II U i), Eq. 7-8 becomes gq k) (1)i (i1) (i + 0 Sq =k) (i( ) (( ) (T1)i1 (i 1 iT(i 1)i (ikkB SB gqq ==24 kq == 0= 04635(g35)q24 = 0(S3)q24 = 0(g23(S2)q24 = 0)q24 = 0(g12)q24 = (B122)( S(S12)q24 =(B121)(S2) q242) q242424 qq g G=0 = (7-9) If , body (ki q I belongs to set ( )kq II , and . Thus, Eq. 7-7 becomes ) ( )) ( )ii 1)i2kkSSqq (7-10) For example, if in Fig. 5.2, is shown in Fig. 7.2. q G B q24T 1(g67)q24 (S6)q24 28 (g28)q24 = 0(S2)q24 = 0(g24)q24 = (B242)q24 S4(S2)q24 =(B241)q24 S4(g46)q24 = 0(S4)q24 = 07Fig. 7.2 Computation Sequence for TB RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION 1.7.4 RECURSIVE FORMULAS FOR AND q qx) B ( X & & =v vx B X ) (& & = To obtain the recursive formula for and ( , Eq. 7-1 is partially differentiated with respect to and for qx) B (&kvx) B&nr ...,kq v 1, k = . 1)i (i 1)i2 (i 1 i 1)i1 (i 1 i 1)i1 (i1 i 1)i1 (i 1 i 1)i1 (i i) ( ) ( ) () ( ) ( ) ( + + + + =x B X B X BX B X B Xq q qq q qk k kk k k& & && & & (7-11) 1)i (i 1)i2 (i 1 i 1)i2 (i1 i 1)i1 (i 1 i 1)i1 (i i) ( ) () ( ) ( ) ( + + + =x B X BX B X B Xv vv v vk kk k k& && & & (7-12) The recursive formulas for and are obtained as in Appendix A by following the similar steps taken in the previous sections. qx) B (&vx) B (& 1.8. APPLICATION OF THE GENERALIZED RECURSIVE FORMULAS A library of the generalized recursive formulas is developed in Section 7. This section shows how the library can be utilized to compute the terms in and in Eqs. 6.9 and 6.12. Inspection of and reveals that the residual and partial derivatives of F , , , , , and need to be computed. Only and are presented in this section and the rest are omitted for simplicity of the presentation. HpHFHaFpH&q vFqq q& &FqF 1.8.1 COMPUTATION OF THE RESIDUAL F The generalized force , and the Cartesian acceleration need to be computed to obtain shown in Eq. 6-7. The term is obtained by applying the recursive formula in Eq. 7.1. The recursive formula with in Eq 4.7 can be applied to evaluate in since is a vector in Q ZTY&F)ncR .Y&G BTnrR (TQ Y M GZ + = &GF 1-19 1.8.2 COMPUTATION OF THE JACOBIAN qFIn Eq. 6-7, differentiation of matrix with respect to vector results in a three dimensional array. To avoid the complexity, Eq. 6-7 is differentiated with respect to a typical generalized coordinate . Thus, B qkq nr ....., 2, 1, k , ) () (kk kT TT T= + + + =q ZZ q qQ Y M BQ Y M B F&& (8-1) Since the term can be easily expressed in terms of the Cartesian coordinates, is obtained by applying the chain rule, as ) (TQ Z k)Tq ZQ ( kT T) ( ) (kB Q Q Z Z q Z = (8-2) where BqZ= is used and denotes the kth column of the matrix . The resulting equation for becomes kB BkqF nr ....., 2, 1, k ), ) ( () (kT TT Tkk k= + + + =B Q Y M BQ Y M B FZ Z qZ q q&& (8-3) The first term in Eq. 8-3 can be obtained by applying the recursive formula for , with , as explained in section 7.3. Collection of , for all k, constitutes ( , which is equivalent to . Matrix consists of columns which are vectors in . Therefore, the application of , where is each column of matrix , yields the numerical result of . Finally, the second term in Eq. 8-3 is also obtained by applying , where . G B qkTT( Z T T((Z B( M G=) (TQ Y M GZ + = &kTT) )ZT(Z T)ZQ ) )kTB Q Z Z ) B QZQ ncRT(Z(kYq +&B Q Z Z)TT)ZG BTQ ncT( BGTZT)ZQ G BT RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION 1.9. NUMERICAL EXAMPLES 1.9.1 A GOVERNOR MECHANISM The mechanism shown in Fig. 9.1 consists of seven bodies, a spring-damper, five revolute joints, and a translational joint. The material properties and spring and damping constants of the system are shown in Table 9-1. The mechanism has redundant constraints that are removed by the Gaussian elimination with full pivoting. Consequently, it has only 2 degrees of freedom. Dynamic analysis is carried out for 2 seconds with error tolerance of for the system. The Z acceleration of body 4 is drawn in Fig. 9.2. The result obtained by the other commercial program and that obtained by the proposed method are almost identical. The average step size, the numbers of residual function evaluations, and CPU time on SGI R3000 are shown in Table 9-2. The CPU time spent by the other commercial program is about 6 times larger than that by the proposed method. Note that the number of function evaluations of the proposed method is smaller than that of the other commercial program. 510 3 432561R4R2R3R5S1 S2R1T17YXZ0.160.50.20.10945o Fig. 9.1 A governor mechanism 1-21 Table 9-1 Inertia properties of the governor mechanism and spring and damping constants Mass xI yIzIxyIyzI zxI Body 1 (Ground) not necessary Body 2 200.0 25.0 50.0 25.0 0.0 0.0 0.0 Body 3 1.0 0.1 0.1 0.1 0.1 0.1 0.1 Body 4 1.0 0.1 0.1 0.1 0.1 0.1 0.1 Body 5 1.0 0.15 0.125 0.15 0.0 0.0 0.0 Body 6 0.1 0.1 0.1 0.1 0.0 0.0 0.0 Body 7 0.1 0.1 0.1 0.1 0.0 0.0 0.0 Spring constant 1000 Damping constant 30 Table 9-2 Integration output information Program TOL Average step size No. fevals CPU time (sec) Other 510 3 210 1 . 1 748 41 Proposed 510 3 210 2 . 1 441 7 PROPOSED OTHER Fig. 9.2 Z acceleration of Body 4 RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION 1.9.2 A MULTI-WHEELED VEHICLE A vehicle example shown in Fig. 9.3 is chosen to show the practicality of the proposed method. The vehicle runs on a bump whose radius is 0.3048(m). The system consists of a chassis and twelve road wheels and arms. The material properties and spring and damping constants are shown in Table 9-3. The road wheel and arm are considered as a single body. As a result, the system has 18 degrees of freedom. 11.1 m/sec0.3048m Fig. 9.3 A multi-wheeled vehicle Figure 9.4 shows the vertical acceleration of the chassis. It is shown that the proposed method and the other commercial program yield almost identical results. The average stepsize, number of residual function evaluations, and CPU time on SGI R3000 are shown in Table 9-4. It can be shown that the proposed method performs much smaller number of residual function evaluations with larger stepsizes, and the CPU time by the proposed method is much shorter than that by the other commercial program. Since there is no closed chain in the system, the governing equations of motion are formulated as an ODE problem by the proposed method. On the other hand, the equations of motion by the other commercial program are formulated as an DAE problem. The DAE problem is generally more difficult to solve than the ODE problem. This general argument is supported by the numbers of function evaluation and average stepsize. 1-23 Table 9-3 Inertial properties of the vehicle mechanism and spring and damping constants MassxI yI zI xyI yzI zxI Body 1 (Ground) not necessary Body 2 40773. 231800 60840 251700 - 234. -Body 3 ~ Body 14 340.27 32.86 20.76 26.85 0.0 0.0 0.0 Spring constant 200000 Damping constant 40000 Table 9-4 Integration output information Program TOL. Average step size No. fevals CPU time (sec) Other 410 310 4 1359 330 Proposed 410 310 6 . 6 1167 69 OTHER PROPOSED Fig. 9.4 Vertical acceleration of the chassis RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION 1.10. CONCLUSIONS The recursive formulas are generalized in this research. The velocity transformation method is employed to transform the equations of motion from the Cartesian to the joint spaces. Computational structure of the equations of motion is examined to classify all necessary computational operations into several categories. The generalized recursive formula for each category is then applied whenever such a category of computation is encountered. Since the velocity transformation method yields the equations of motion in a compact form and computational efficiency is achieved by the generalized recursive formulas, the proposed method is not only easy to implement but also efficient. A dynamic analysis algorithm using the backward difference formula (BDF) and the relative generalized coordinate is implemented using the library of generalized recursive formulas developed in this research. Numerical studies showed that obtained solutions were numerically stable and computation time was reduced by an order of magnitude compared to a well-known commercial program. 1-25 REFERENCES 1. J. Wittenburg, Dynamics of Systems of Rigid Bodies, B. G. Teubner, Stuttgart, 1977. 2. Hooker, W., and Margulies, G., The Dynamical Attitude Equtation for an n-body Satellite, Journal of the Astrnautical Science, Vol. 12, pp. 123-128, 1965. 3. R. Featherstone, The Calculation of Robot Dynamics Using Articulated-Body Inertias, Int. J. Roboics Res., Vol 2 : 13-30, 1983. 4. D. S. Bae and Edward J. Haug, A Recursive Formulation for Constrained Mechanical System Dynamics: Part II. Closed Loop Systems, Mech. Struct. and Machines, Vol. 15, No. 4, pp. 481-506 5. Potra, F. A. and Petzold, L. R., ODAE Methods for the Numerical Solution of Euler-Lagrange Equations. Applied Nume. Math., Vol. 10, pp. 397-413, 1992 6. Potra, F. A. and Rheinboldt, W. C., 1989, On the Numerical Solution of Euler-Lagrange Equations, NATO Advanced Research Workshop on Real-Time Integration Methods for Mechanical System Simulation, Snowbird, Utah, U. S. A.. 7. Jeng Yen, Edward J. Haug, and Florian A. Potra, 1990, Numerical Method for Constrained Equations of Motion in Mechanical Systems Dynamics, Technical Report R-92, Center for Simulation and Design Optimization, Department of Mechanical Engineering, and Department of Mathematics, The University of Iowa, Iowa City, Iowa. 8. Ming-Gong Lee and Edward J. Haug, 1992, Stability and Convergence for Difference Approximations of Differential-Algebraic Equations of Mechanical System Dynamics, Technical Report R-157, Center for Simulation and Design Optimization, Department of Mechanical Engineering, and Department of Mathematics, The University of Iowa, Iowa City, Iowa. 9. Lin, T. C. and Yae, K. H., 1990, Recursive Linearization of Multibody Dynamics and Application to Control Design, Technical Report R-75, Center for Simulation and Design Optimization, Department of Mechanical Engineering, and Department of Mathematics, The University of Iowa, Iowa City, Iowa. RecurDyn/SOLVER THEORETICAL MANUALGENERALIZED RECURSIVE FORMULATION APPENDIX A : RECURSIVE FORMULAS Recursive formulas ) ( ikq I ) ( ikq II q qBx X ) ( = 1)i (i 1)2 (i1 i 1)i1 (i ikk k) () ( ) ( +=x BX B Xqq q k k1 i 1)i1 (i i q q) (X B ) (X = qTqG) (B g = iTi i iiTi i i ikk( S B SS B gq qq q) ( )) ( ) (1 ) 1 ( 12 ) 1 ( ) 1 (kk == 0 S0 gqq==kk) () (1 i1)i (i q qx) B ( X & & = 1)i (i 1)i2 (i1 i 1)i1 (i1 i 1)i1 (i ikkk k) () () ( ) ( ++=x BX BX B Xqqq q&&& & kk k) () ( ) (1 i 1)i1 (i1 i 1)i1 (i iqq qX BX B X +=&& & v vx B X ) (& & = 1)i (i 1)i2 (i1 i 1)i1 (i ikk k) () ( ) ( +=x BX B Xvv v&& & kk k) () ( ) (1 i 1)i2 (i1 i 1)i1 (i ivv vX BX B X +=&& & Recursive formulas ) ( ikq III ) ( ikq IV q qBx X ) ( = 0 Xq =k) (i 0 Xq =k) (i q qG B g ) (T= k kk k) ( ) () ( ) (iT1)i1 (i 1 iiT1)i2 (i 1)i (iq qq qS B SS B g == 0 S0 gqq==kk) () (1 i1)i (i q qx B X ) (& & = 0 Xq =k) (i& 0 Xq =k) (i& v vx B X ) (& & = 0 Xv =k) (i& 0 Xv =k) (i& Recursive formulas ) ( ikq I or i or or ) (kq II ) ( ikq III ) ( ikq IV Bx X = 1)i (i 1)i2 (i 1 i 1)i1 (i i + = x B X B X G B gT= ) (0) (1 i 1 iT1 ) 1 i ( i in1 i 1 iT2 ) 1 i ( i ) 1 i ( i+ + ++ + + ++ == + =S G B SSS G B g x B X & & = i ) 1 i ( 2 i ) 1 i ( 1 i 1 i ) 1 i ( 1 i 1 i ) 1 i ( i + + = x B X B X B X & & & & 1-27 RecurDyn/SOLVER THEORETICAL MANUAL GENERALIZED RECURSIVE FORMULATION 2 DECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION 2.1. INTRODUCTION The dynamic behavior of a constrained mechanical system is often represented by differential algebraic equations (DAEs)[1]. Solutions of DAEs are generally more difficult to obtain than those of ordinary differential equations (ODEs)[2]. To solve DAEs, a direct discretization method was proposed by Gear[3]. Since the solution obtained by Gear does not satisfy the velocity level constraints, consistent initial conditions cannot be obtained. It was found that the inconsistency often resulted in a poor local error estimation[4]. A series of stabilization methods[5-7] which employ either Lagrange multipliers or constraint violation penalty terms were followed. Recently several solution methods[8], projecting the differential equations on the inflated constraint manifolds, have appeared. Two kinds of solution process are available. In the first solution process, the numerical integration is carried out first and the integrated variables are corrected so that the position level constraints, the velocity level constraints, and the acceleration level constraints are satisfied. Since the correction is made sequentially level-by-level, the size of system equations to be solved remains small. However, the integration stepsize can be excessively small for highly nonlinear or stiff problems due to a narrow stability region of the explicit method. In order to overcome this difficulty, the second solution process is developed. In the second solution process, the numerical integration formula, kinematic constraints and their derivatives, and equations of motion are solved simultaneously. Therefore, the size of the system equations to be solved becomes larger although the problem of excessive small step size is resolved. In addition to the problem of large size of the matrix equation, the condition of the matrix becomes poor as the stepsize gets smaller for discontinuous systems. The poor condition of the matrix often RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION results in large error in the solution of the matrix equation. In this paper, a decoupling solution method for the implicit numerical integration method is proposed. This method is free from the problems of the poor matrix condition and the excessively small step size as well as the large matrix size. In section 2, overdetermined DAEs for constrained mechanical systems are given. A decoupling solution method is given in section 3. In section 4, the numerical algorithm is provided. The numerical examples are given in section 5 to demonstrate the efficiency of the proposed method. Conclusions are drawn in section 6. 2.2. IMPLICIT NUMERICAL INTEGRATION FOR DIFFERENTIAL ALGEBRAIC EQUATIONS The equations of motion for a constrained mechanical system can be implicitly described as 0 q v = (2.1.a) 0 ) a, v, F(q, = (2.1.b) 0 (q) = (2.1.c) where is the generalized coordinate vector in Euclidean space qnR , and is the Lagrange multiplier vector for constraints in mR , represents the position level constraint vector in mR , and its Jacobian is expressed that is assumed to have full row-rank. Successive differentiations of Eq. 2.1.c yield velocity and acceleration level constraints, nq mR 0 v v) (q,q = = (2.2.a) 0 a a) v, (q, = =q & (2.2.b) Equations 2.1 and 2.2 comprise a system of overdetermined differential algebraic 2-3 equations (ODAE). An algorithm based on backward differentiation formula (BDF) to solve the ODAE is given in Ref. 1 as follows: 0 q v U v a U(q) v a ) a, v, F(q,R UR UF(x)H(x)T2T1qq2T21T1=((((((((((((

||.|

\| ||.|

\| =((((((((((((

||.|

\|||.|

\|=201000bhbhbhbh&& & (2.3) where = =k1 i1 n i01bb1v , = =k1 i1 n i02bb1q [ x =iUTq, k is the order of integration and are the BDF coefficients. Here, and the columns of constitute bases for the parameter space of the position and velocity level constraints. are chosen so that has an inverse. Therefore, the parameter space spanned by the columns of and the subspace spanned by the columns of constitute the entire space ibiU] q , v , a ,T T T T

) 2 , 1 i () m n ( n= R(((TqUiiUnR . The number of equations and the number of unknowns in Eq. 2.3 are the same, so Eq. 2.3 can be solved. Newton's numerical method can be applied to obtain the solution . x i i iH x Hx = (2.4.a) i i 1 ix x x + =+ (2.4.b) LU-decomposition of the matrix not only increases the computation time ixH RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION but also produces an ill-conditioned matrix as h approaches zero [4]. In order to eliminate these problems, Eq. 2.4.a will be divided into several pieces to obtain , , and q v a separately in the next section. h aFa mR1 v 2.3. A DECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION Equation 2.4.a can be rewritten in detail as follows: 0 x F F a F v F q F a v q = + + + + ) ( (3.1.a) 0 x q v a q v q = + + + ) (& & & & & & (3.1.b) 0 x q q = + ) ( (3.1.c) 0 x q v q q = + + ) (& & (3.1.d) 0 x R v a U = + )) ( (1T1h h (3.1.e) 0 x R q v U = + )) ( (2 2h hT (3.1.f) where 0bh1U. Equation 3.1.e can be rewritten in an equivalent inflated form by choosing such that . as follows [7]: 0Tq1aT1 = F U 0 F U x R v = + + 111) (Tq aTih h h (3.2) where is a mass matrix and is generally nonsingular. The can be singular if a parametric formulation is employed. If is singular, Eqs. 3.1 must be solved simultaneously to obtain aFaFq , v , a and . The vector is a new unknown variable. The a is thus obtained from Eq. 3.2 in terms of as 1T 1a 1) (h1 F x R v aq = (3.3) 2-5 Substituting Eq. 3.3 into Eq. 3.1.a yields ) ( ) ( ) (h1x R F x F vFF q Fa 1Tqav q + = + |.|

\|+ + (3.4) Equation 3.1.f can be rewritten in an equivalent inflated form by choosing such that 2U0 FF UTqav = |.|

\|+ 1T2h as follows: 0 FF x R q vTqav 2 = |.|

\|+ + + 21) (hh h h (3.5) where h+avFF is assumed to be a nonsingular matrix and is a new unknown variable. The solution process for the case of a singular matrix will be explained later in this section. Equation 3.5 can be solved for in terms of as follows: m2R v q 212h) (h1 FF x R q vTqav|.|

\|+ = (3.6) Substituting Eq. 3.6 into Eq. 3.4 and multiplying both sides of Eq. 3.4 by yields 2h32h R q KTq*= + (3.7) where a v q*F F F K + + h h2 (3.8.a) 2 1 (3.8.b) ) ( ) h ( h ) ( h ) ( h2 12 23x R F F x R F x F Ra v a + + + (3.8.c) RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION Equations 3.7 and 3.1.d are combined to obtain ((

=((

(((

) ( h 032x Rq KqTq* (3.9) Equation 3.9 is then solved for and . Note that is scaled by to make the coefficient matrix of Eq. 3.9 ill-conditioned, even as approaches to zero. q 2hhMultiplying both sides of Eq. 3.5 by h+avFF yields ) (h h1h2 2x R qFF vFFavTqav |.|

\|+= + |.|

\|+ (3.10) Equations 3.10 and 3.1.c are combined to obtain ((((

|.|

\|+ =((

(((

+q x x R qFFv FFqavqTqav) () (h h10h22 (3.11) where has been obtained from Eq. 3.9. Equation 3.11 is solved for the and . Multiplying both sides of Eq. 3.3 by yields q 2v aF |.|

\| = + v x R F a Fa ah1) (1 1Tq (3.12) Equations 3.12 and 3.1.b are combined to obtain 2-7 ((((

|.|

\| =((

(((q v x v x R Fa Fq vaqTq a& & & & & &) (h1) (011

(3.13) Equation 3.13 is solved for a and . Once , and are obtained, the is evaluated from Eq. 3.8.b, as follows: 1 12 2 1 + + = (3.14) Since is a mass matrix and is a tangent damping matrix, is generally not ill conditioned. If an ill-conditioned case is encountered, Eqs. 3.1 must be solved simultaneously to obtain aFvFv aF F h +q , v , a and . However, the and aFvF haF + are rarely singular, so q , v , a and are obtained by using Eqs. 3.9, 3.11, 3.13, and 3.14 for most of practical problems. 2.4. NUMERICAL ALGORITHM The DASSAL subroutine [4] is employed to integrate the system variables. Computational flow for the proposed DAE solution method is given in Fig. 1.(Page 2-7) 2.5. NUMERICAL EXAMPLES 2.5.1 QUICK-RETURN MECHANISM The quick-return mechanism as shown in Fig. 5.1 is mounted on a body translating with respect to the ground. The system consists of 6 bodies, 2 translational joints, and 5 revolute joints. The system has two degrees of freedom if the redundant constraints are eliminated. Dynamic analyses were performed for 1 sec with error tolerances of 10-4 and 10-6 by using the program developed in this paper and the other commercial program RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION Read initial conditionsCompute initial Accelerations and Lagrange multipliers from Eqs. 2.1.b and 2.2.bt = t + hPredict q v a , , , andt > tout ?YNEndYFFva+h'NCompute in Eq. 3.9 qandCompute in Eq. 3.11v and2Compute in Eqs. 3.1 q, v, a, andUpdate q v a , , , andConvergence?NCompute in Eq. 3.13a and1Compute in Eq. 3.14Faor is singular ? Y Fig. 1 Flowchart for the proposed DAE solution method 2-9 Front view Side viewBody1 Body2Body3Body5Body6Body4 Fig. 5.1 A quick-return mechanism , which employs the implicit numerical integration with the BDF. The results are shown in Fig. 5.2. and the integration information is shown in Table 5.1. OTHER PROPOSED Fig. 5.2 Results of the quick-return mechanism RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION Table 5.1 Integration information for the quick return mechanism Method Error ToleranceNo. Steps No. Function EvaluationNo. Jacobian EvaluationNo. Newton IterationFailureNo. Integration Failure CPU Time Proposed 1.0d-4 293 342 180 15 0 16 sec Other 1.0d-4 115 554 NA NA NA 34 sec Proposed 1.0d-6 315 722 336 22 0 22 sec Other 1.0d-6 Failed to integrate. (NA means Not Available) Note that the other commercial program failed to integrate while the proposed method did not as the error tolerance became small (10-6). The integration failure was caused by the ill-conditioned Jacobian matrix 2.5.2 AIR COMPRESSOR This system was modeled as four bodies, two revolute joints, two translational joints, and 2 ball joints as shown in Fig. 5.3. The system has 1 degree of freedom if the redundant constraints are eliminated. Dynamic analyses were carried out for 1.0 sec with initial angular velocity. The proposed method and the other commercial program yielded identical results, as shown in Fig. 5.4. The system is conservative and the total energy should be constant. Figure 5.5 shows the total energy change during the integration. It is shown that the total energy obtained from the present program is numerically more stable than that obtained from the other commercial program. Thus, the other commercial program failed to integrate (while the proposed method did not) as the error tolerance became small. The integration information is also given in Table 5.2. 5 0 r a d / s e c Fig. 5.3 An air compressor mechanism 2-11 Table 5.2 Integration information for the air compressor mechanism Method Error ToleranceNo. Steps No. Function EvaluationNo. Jacobian EvaluationNo. Newton IterationFailureNo. Integration Failure CPU Time Proposed 1.0d-4 349 707 351 0 0 16 sec Other 1.0d-4 295 1185 NA NA NA 31 sec Proposed 1.0d-6 529 1067 531 0 0 20 sec Other 1.0d-6 Failed to integrate. OTHER PROPOSED Fig. 5.4 Results for the air compressor RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION PROPOSEDOTHERFig. 5.5 Total energy comparison for the air compressor 2.6. CONCLUSIONS A decoupling solution method for the implicit numerical integration is proposed in this paper. The size of the Jacobian matrix is significantly reduced by decoupling the iteration equations. The ill-conditioning problem of the implicit numerical integration is resolved in this method. Numerical study showed that the proposed method yields numerically more stable solution than the commercial program with smaller number of function evaluation. 2-13 REFERENCES 1. J. Yen, Constrained Equations of Motion in Multibody Dynamics as ODE's on Manifolds, SIAM J. Numer. Anal., vol. 30 , pp. 553-568, (1993). 2. P. L. stedt and L. R.. Petzold, Numerical Solution of Nonlinear Differential Equations with Algebraic Constraints I: Convergence Results for Backward Differentiation Formulas, Math. Comp., vol. 46, pp. 491-516, (1986). 3. C. W. Gear, The Simultaneous Numerical Solution of Differential Algebraic Equations, IEEE Trans. Circuit Theory, vol. 18, pp. 89-95, (1971). 4. K. E. Brenan, S. L. Campbell and L. R. Petzold, Numerical Solution of Initial-Value Problems in Differential-Algebraic Equations, SIAM Press, (1995). 5. J. Baumgarte, Stabilization of Constraints and Integrals of Motion in Dynamical Systems, Comput. Methods Appl. Mech. Engrg., vol. 1, pp. 1-16, (1972). 6. Javier Garcia de Jalon and Eduardo Bayo, Kinematic and Dynamic Simulation of Multibody Systems, Springer-Verlag, (1993). 7. F. A. Potra, Implementation of Linear Multistep Methods for Solving Constrained Equations of Motion, SIAM J. Numer. Anal., vol. 30, pp. 74-789, (1993). 8. Ming-Gong Lee and Edward J. Haug, Stability and Convergence for Difference Approximations of Differential-Algebraic Equations of Mechanical System Dynamics, Technical Report R-157, August, (1992). RecurDyn/SOLVER THEORETICAL MANUALDECOUPLING SOLUTION METHOD FOR IMPLICIT NUMERICAL INTEGRATION 3 FLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT 3.1. INTRODUCTION A rigid body in space is described by the position and orientation generalized coordinates with respect to the inertial reference frame. Contrast to implementation of a rigid body dynamic analysis program, it is generally complicated to implement a flexible body dynamic formulation and to expand it for a general purpose program, regardless of whatever formulation has been chosen. This is because the flexible body dynamic formulations handle additional generalized coordinates to these of the rigid body dynamics. One of the most tedious works involved with the implementation of the flexible body dynamics is to build a set of joint and force modules. Whenever a new force or joint module is developed for the rigid body dynamics, the corresponding module for the flexible body dynamics has to be formulated and programmed again. In order to avoid such a repetitive process, this investigation proposes a concept of virtual body and joint. Shabana [1] presented a coordinate reduction method for multibody systems with flexible components. The local deformation of a flexible component was expressed in terms of the nodal coordinates and was then spanned by a set of mode shapes obtained from a mode analysis. Yoo and Haug [2] spanned the deformation by a set of static correction modes obtained by applying a unit force or unit displacement at a node where a large magnitude of force is expected during the dynamic analysis. Mani [3] used Ritz vectors in spanning the local deformation and the Ritz vectors were generated by spatially distributing the inertial and joint constraint forces on a flexible body. Gartia de Jalon et al [4] presented a fully Cartesian coordinate formulation for rigid multibody dynamics. This formalism was extended to the flexible body dynamics by Vukasovic et al [5]. Nonlinearity associated with an orientational transformation matrix was RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT relieved by defining all necessary vectors for the equations of motion and constraints as the generalized coordinates. Several formulations have been recently developed for flexible body systems that undergo large deformation. Simo [6] had formulated the equations of motion for a flexible beam, based on the inertial reference frame. Since displacement of a point on the beam was directly measured from the inertial reference frame, the inertia terms become linear and uncoupled, while the strain energy related terms become nonlinear. Yoo and Ryan [7] proposed a mixed formulation of inertial and floating reference frames for a rotating beam. Axial deformation was measured from a deformed state of the rotating beam, while other deformations were measured from an undeformed state. Shabana [8,9] presented a non-incremental absolute coordinate formulation in which the global location coordinates and slopes were defined as the generalized coordinates. Since the finite rotation coordinates were not used as the generalized coordinates, the difficulties associated with the finite rotation were resolved. Contrast to implementation of a rigid body dynamic analysis program, it is generally complicated to implement a flexible body dynamic formulation and to expand it for a general purpose program, regardless of whatever formulation has been chosen. This is because the flexible body dynamic formulations handle additional generalized coordinates to these of the rigid body dynamics. One of the most tedious works involved with the implementation of the flexible body dynamics is to build a set of joint and force modules. Whenever a new force or joint module is developed for the rigid body dynamics, the corresponding module for the flexible body dynamics has to be formulated and programmed again. In order to avoid such a repetitive process, this investigation proposes a concept of virtual body and joint. The kinematics of virtual body and joint is presented in Section 2. The equations of motion for a flexible body system are presented in Section 3. Computer implementation and its impact on a sparse oriented algorithm are explained in Section 4. Two flexible body systems are dynamically analyzed by using the proposed method to show its validity in section 5. Conclusions are drawn in Section 6. 3-3 3.2. KINEMATICS OF TWO CONTIGUOUS FLEXIBLE BODIES 3.2.1 COORDINATE SYSTEMS AND VIRTUAL BODIES Figure 1 Two adjacent flexible bodies RecurDyn/SOLVER THEORETICAL MANUALTwo flexible bodies connected by a joint and their reference frames are shown in Fig. 1. The frame is the body reference frame of flexible body and the frame is the inertial reference frame. Suppose there exists a joint between the and frames, and a force applied at the origin of the frame. Kinematic admissibility conditions among the reference frames can be divided into two categories. One is the admissibility conditions between the two joint frames and the other is the admissibility conditions among the frames within a flexible body. These two types of conditions have been mixed in formulating the kinematic joint constraints and generalized forces in the previous works. As a result, every joint and force modules in a flexible multibody code, such as ADAMS [10] and DAMS [11], has been developed separately for rigid and flexible bodies. This would take long time for computer implementation and prone to coding errors. Especially, flexible body programming requires much more effort than rigid body programming does due to complexity associated with flexibility generalized i i iZ Y X , ,i iY X1 1, ,i i iZ Y X2 2 2, ,iZ Y X , ,iZ1j j jZ Y X1 1 1, ,FLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT coordinates. In order to minimize the programming effort, a concept of the virtual body is introduced in this section. At every joint and force reference frames, a virtual rigid body, whose mass and moment of inertia are zero, is introduced. Figure 2 Two adjacent flexible bodies and three virtual bodies As an example, three rigid virtual bodies are introduced for two adjacent deformable bodies as shown in Fig. 2. This makes the flexible body has no joint or applied force and is subjected to only the kinematic admissibility conditions among its body frame and the virtual body frames. Therefore, the joint and force modules are developed only for rigid bodies and one flexible body joint is to be added in the joint module. The kinematic admissibility conditions for the flexible body joint are formulated in the following subsections. 3.2.2 JOINT CONSTRAINTS BETWEEN TWO RIGID BODIES A joint has been represented by imposing condition of parallelism or orthogonality on vectors attached to two adjacent rigid bodies. A library of such condition for rigid bodies has been well developed and becomes the primitives in building various joints [10, 11]. The conditions are formulated by using 3-5 geometric vectors that are defined within or between two joint reference frames. A joint reference frame does not generally coincide with the body reference frame. The body reference frame for a virtual body also serves as a joint reference frame in the proposed method. Therefore, the kinematic admissibility conditions for a joint connecting a virtual body is simplified and the number of non-zero entries of the constraint Jacobian is reduced. 3.2.3 FLEXIBLE BODY JOINT CONSTRAINT BETWEEN A FLEXIBLE BODY AND A RIGID VIRTUAL BODY Figure 3 Flexible body joint constraint between a flexible and a virtual body Origin of the body reference frame for the virtual body in Fig. 3 can be expressed as follows: (ifi i ii i i iu u A Ru A R r+ + = + =+01) (1) where i0u and ifu are the undeformed location vector and deformation vector of a point on the body with respect to a body reference frame and is the orientation matrix of body reference frame. The deformation vector iAifu at the RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT nodal position can be spanned by linear combination of a set of mode shapes [12] as ifiRifp u = (2) where is a modal matrix whose columns consist of the translational mode shapes and is a modal coordinate vector. iRifpOrientation of the virtual body is obtained as follows: 1 + i 1 , 1 + +=i i ifi iA A A A (3) where is the relative orientation matrix induced by the rotational deformation and is the orientation matrix between the reference frames of the flexible body and virtual body ifA1 , + i iAi 1 + iif in an undeformed state. If the Bryant angle (1-2-3) [13] is employed, the is expressed as follows: A ((((

+ + =iyixiziyixizixiziyixizixiyixiziyixizixiziyixizixiyiziyiziyif cos cos sin sin cos sin sin cos sin cos sin sincos sin sin sin sin cos cos cos sin sin sin cossin sin cos cos cosA (4) If is infinitesimal, the matrix can be approximated as |Tiziyixi = |ifA ((((

111ixiyixiziyizif A (5) The rotational deformation vector can be represented by linear combination of rotational mode shapes of body as ii ifi ip = (6) where is a modal matrix whose columns are composed of rotational mode i 3-7 shapes and is the vector of modal coordinate. Ciq |

=000ifpFinally, kinematic constraints between two body frames of the flexible and virtual bodies can be obtained from Eqs. (1) and (3) as follows: ( ) 0 u u A R r C = + = + ifi i i i iR 01 (7) 0h A A f h A A fh A A g h A A gg A A f g A A f=(((((

=+ ++ ++ +1 , 11 , 11 , 1i i ifT iTi Ti i ifT iTi Ti i ifT iTi T (8) where | |((((

=1 0 00 1 00 0 1h g f (9) Orthogonality conditions would have been used in deriving the orientational constraints. However, the in Eq. (8) is employed in this research for simple implementation. Eqs. (7) and (8) yields algebraic constraint equations that describe the flexible joint between flexible body and virtual body . Taking variation of Eqs. (7) and (8) yields iCi 1 + i ( ) ( )( )0 qCCq Cqqq =(((

= iiR iflexi (10) where | |TTiTiTifTiTi i 1 1 + += r p R (11) and the constraint Jacobian matrix ( )flexiqC is obtained as ( ) |( )(((( = +++111ihT i fhT ihTihT i fhT ihTigT i fgT igTiiRi i iRB f 0 B f B fB g 0 B g B gB f 0 B f B fC0 I A B I Cqq (12) RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT where h g kskewskewskewskewiTi iki i fki iTi iki i i, ,) () () () (1 11 ,1=)`====+ +++k A A Bk A BA k A A Bu A B (13) and the vectors ) (iskew u , , , and are the skew symmetric matrices of vectors, ) (1k A + iskew ) (1 ,k A + i iskew ) (k skewiu , , , and , respectively. In order to obtain the acceleration level constraint, one can differentiate Eqs. (7) and (8) twice with respect to time to yield k A1 + iA1 , + i ik k ( ) ( ) ( ) ( )( ) ( )((((((

+ + + + + + + + + == =4 3 2 14 3 2 14 3 2 1222) ( 2 ) (hThThThThThThThTgTgTgTgTifiRi i iflexici iflexi iflexiskew skewH f H f H f H fH g H g H g H gH f H f H f H f p A u AQ q q C q Cqq q&& & & & (14) where the is the angular velocity with respect to the body reference frame and the generalized velocity vector is q& | |TTiTiTifTiTi i 1 1 + += r p R q & &&& (15) and ( ) ( )h g kskewskew skewskew skew skewskew skewifi i i ififiki i iTiki iTi ikiTi i ik, ,) () ( ) () ( ) ( ) () ( ) (1 , 41 1 1 31 1 21 1=)` ====++ + ++ ++p k A A p Hk A A H k A A Hk A A H& & (16) 3-9 3.3. EQUATIONS OF MOTION Even though the proposed method is applicable to a general system consisting of many flexible bodies, a slider crank mechanism with one flexible body in Fig. 4(a) is used to clearly show the impact of the proposed method on the equations of motion. An equivalent virtual system, modeled by using the rigid virtual bodies proposed in this investigation, is shown in Fig. 4(b). The augmented equations of motion for the system is obtained by using the general form of equations of motion as [11] ((

+ +=((

(((

cs v eTQQ Q Qq0 CC Mqq & & (16) where is the mass matrix of the system. The vector consists of translational acceleration for rigid and flexible bodies, angular acceleration, and modal acceleration for the flexible body. M q& & FLEXIBLE BODY FLEXIBLE BODYRIGID BODY RIGID BODYCRANKCRANKSLIDER SLIDERCOUPLERCOUPLER123YZXP1 P1 (a) Two rigid bodies and one flexible body RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT FLEXIBLE BODY FLEXIBLE BODYRIGID BODY RIGID BODYVIRTUAL BODY VIRTUAL BODYCRANKCRANKCOUPLERCOUPLERSLIDER SLIDERVIRTUAL BODY VIRTUAL BODY 12453 (b) Two rigid bodies, one flexible body and two virtual bodies Figure 4 Slider crank mechanism with one flexible body The is the vector of Lagrange multipliers and , , , and are the strain energy terms, velocity induced forces, externally applied forces, and the vector absorbs terns that are quadratic in the velocities, defined clearly by Shabana [11]. sQvQeQcQcQ 3.3.1 COEFFICIENT MATRIX OF CONVENTIONAL AUGMENTED FORMULATION The mass matrix for the system in Fig. 4(b) is ((((

=321rrfM 0M0 MM (17) where the mass matrices for virtual bodies, and are the mass matrix for flexible body and for a rigid body, as fMrM 3-11 ) 3 , 2 ( ,6 6) 6 ( ) 6 (1=((

=((((

=+ +ksymmetrickkrr krnf nfff f frrrrf m 00 mm m mm mmMM (18) where is the number of modal coordinates. The constraint Jacobian matrix of the slider crank mechanism with flexible crank is nfC) (qC ( )( )( )( ) ((((((

=int30int23,12,01) (jojoc flexc flexcqqqqqCCCCC (19) where, ( )c flex,qC is the constraint Jacobian matrix of the flexible joint obtained by the conventional method[11]. 3.3.2 COEFFICIENT MATRIX OF PROPOSED AUGMENTED FORMULATION The mass matrix for the system in Figure 4b is (((((((

=54321rrvfvMM 0M0 MMM (20) where the mass matrix for virtual body, , the mass matrix for flexible body, vM RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT fM , and the mass matrix for rigid body, are rMsymmetricm,6 6(((((((((intintint,,intpp | | 3 , 1 ,6 6 = = kv0 M ) 6 ( ) 6 (2nf nfff f frrrrf+ +((((

=m mm mmM (21) ) 5 , 4 ( =((

= kkkrr krm 00 mM The proposed constraint Jacobian matrix ( )pqC of the slider crank mechanism with flexible crank is ( )( )( )( )( )( )( )

=504534231201jojojoflexflexjopqqqqqqqCCCCCCC (22) where ( )p flex,qC is the constraint Jacobian matrix of the flexible body joint obtained by the proposed method. As shown in Eq. (22), the constraint Jacobian matrix can be clearly divided into flexible and rigid body joint modules by introducing rigid virtual bodies. 3.3.3 NON-SINGULARITY OF AUGMENTED MASS MATRIX If the constraint Jacobian matrix C has a full row rank, the coefficient matrix of Eq. (16) is non-singular, which can be proved by showing that the following equations have only trivial solutions under the same assumption. q 3-13 ( ) 0 y C yq = +3 1NTNM (23) ( ) 0 y Cq =3VT (24) ( ) ( ) 0 y C y Cq q = +2 1V N (25) where , NM ( )NqC , and ( )VqC are the mass matrix of non-virtual body, the Jacobian of Eqs. (23) and (24) after pre-multiplying by Eq. (23) and by Eq. (24) yields T1yT2y( ) ( ) ( ) 0 y M y y C y C y y M yq q = = + +1 1 2 1 3 1 1 NTV NTNT (26) where Eq. (25) is used. As a result, . Eqs. (23) and (24) reduces to 0 y =1 0 y Cq =3T (27) Since the has full row rank, must be zero. Substituting into Eq. (25) yields qC3y 0 y =1( ) 0 y Cq =2V (28) Since rank of ( )VqCy =3 is the same as the size of , must be zero. Since , , are only solutions of Eqs. (23), (24), and (25), their coefficient matrix is non-singular. 2y2y0 y =10 y =20 3.4. COMPUTER IMPLEMENTATION AND DISCUSSIONS In previous sections the flexible equations of motion and kinematic constraints using virtual body techniques are presented. In this section, the computer implementation methods for the equations developed in section 2 and 3 are illustrated. 3.4.1 NUMERICAL ALGORITHM RecurDyn/SOLVER THEORETICAL MANUALA general purpose program for the dynamic analysis of mechanical systems FLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT can be implemented in many different ways, depending on the DAE solution method employed. The generalized coordinate partitioning method [12] is employed in this investigation and the proposed program structure is shown in Fig. 5. Note that there exist joint and force modules only for rigid bodies, and one flexible body joint is added in the joint library. Those modules can handle any system consisting of rigid bodies as well as flexible bodies. POSITION ANALYSISVELOCITY ANALYSISACCELERATION ANALYSISFORCE ANALYSIS JOINT MODULES FOR RIGID BODYFLEXIBLE BODY JOINTJOINT MODULESGENERATE JOINT EQUATIONSFORCE MODULES FOR RIGID BODYT = T_ENDNOYESENDSTARTT = T + STEPSIZEMAIN PROGRAM MAIN PROGRAM MODULE LIBRARY MODULE LIBRARY Figure 5 A program structure for proposed flexible multibody dynamics 3.4.2 COMPARISON OF DIFFERENT IMPLEMENTATION METHODS The joint and force modules must be expanded whenever a user group of the flexible body dynamics code demands a special type of joint or force element. Since the proposed implementation method for a flexible body dynamics code reuses all joints and force modules for the rigid body, only necessary modules to be added to a rigid body dynamics code are the flexible body joint and the equations of motion for a flexible body. As a result, the proposed method is not only easy to implement but also to maintain, because the proposed method eliminates the additional programming effort for the flexible body modules when an expansion of the joint or force library is required. However, there are some computational overheads, because extra bodies and joints must be introduced to a flexible body system if the proposed method is employed. It is very difficult to analyze the computational overheads for general 3-15 rigid and flexible multibody systems, because various models and flexible body dynamics theories may end up with various situations. In order to simplify the presentation, the slider crank mechanism in section 3 is reconsidered in this section. Numerical experiments with the Cartesian coordinate formulation [12] showed that more than 70% of the total computation time is consumed in the Gaussian elimination of matrices arising from various equations. Direct Gaussian elimination of Eq. (16) would require a number of arithmetic operations proportional to approximately cube of the matrix size. However, the number of arithmetic operations for a sparse solver such as the Harwell Library [14] is increased only linearly to the number of non-zero entries if the structure of the non-zero entries is exploited. A sparse solver reduces the number of operations by minimizing the number of fill-ins and performing the Gaussian elimination only on the non-zero entries and fill-ins. Therefore, it is important to add the new non-zero entries so that overall non-zero structure of the resulting matrix is not disturbed and is well suited for minimization of the fill-ins. The structures of the non-zeros are shown in Eqs. (20) and (21), respectively. No non-zero entry in the mass matrix of the proposed method is added, because the mass and moment of inertia of the virtual body are zero. Total numbers of non-zero entries of Eq. (16) are shown in Table 1. Note that redundant constraints are eliminated and coincidence of the virtual body and joint reference frames is utilized in reducing the number of non-zeros. Since the new non-zero entries in Eq. (16) are scattered around the existing ones, the overall structure of the non-zeros is not disturbed and a similar reordering sequence in sparse Gaussian elimination to the original reordering sequence in a sparse linear solver can be used. As a result, expected computation time increment with the proposed method would be about 50% for the slider crank mechanism, when a sparse solver is employed. Table 1 Number of non-zero entries for the slider-crank mechanism Implementation Methods No. of non-zero entries Conventional 122+10nmode Propose 188+12nmode * nmode: the number of mode shapes RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT The number of non-zeros for a most frequently used joints such as, revolute joint, spherical joint and translational joint, are also given in Table 2. It can be easily shown that the percent ratio of the computation time would become smaller if the number of flexible bodies in a system is small, which is true in many cases. However, the computation time may be increased significantly for a flexible body system which has many joints and force elements, because the number of virtual bodies in such a system is large. Table 2 Number of non-zero entries for the slider-crank mechanism Joint Increment of non-zero entries Revolute joint (33 + nomde) nvirtualr Spherical joint (33 + 3nomde)nvirtuals Translational joint (33 + nomde) nvirtualt * nvirtualr : the number of virtual bodies which are connected with revolute joint * nvirtuals : the number of virtual bodies which are connected with spherical joint * nvirtualt : the number of virtual bodies which are connected with translational joint Another way of implementing the virtual body concept is to mix the proposed implementation method with the conventional one. The conventional method may be used to implement the frequently used joint and force modules such as the revolute and translational joints and an applied force at a point. Meanwhile, the proposed method may be used to implement the less frequently used joint and force modules such as an universal joint or a planar joint. This implementation method will improve both the computational overhead as well as the coding convenience. This mixed formulation can be very effective if a set of basic joint and force modules have already been developed and more modules for the flexible bodies need to be added. 3-17 3.5. NUMERICAL RESULTS Dynamic analysis of a flexible slider crank mechanism and a flexible pendulum mechanism is presented in order to validate the results from the proposed method. The examples are solved by using both the proposed method and the nonlinear approach developed by Simo [6]. 3.5.1 FLEXIBLE SLIDER CRANK MECHANISM The system consists of two rigid bodies and one flexible body, as shown in Fig. 4. Length, cross sectional area, and area moment of inertia of the elastic crank are 0.4 m, 0.0018m2, and 1.215 10-4m4, respectively. The crank is modeled by using 10 two-dimensional elastic beam elements of equal lengths. The material mass density of the beam is 5540.0 kg/m3 and its Young's modulus is 1.0109 N/m2. Vibration analysis of the crank is carried out with fixed-free boundary condition and the resulting mode shapes are shown in Fig. 6. -1.0-0.8-0.6-0.4-0.20.00.20.40.60.81.01.20.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40X(M)MAGNITUDE.1st mode2nd mode3rd mode4th mode Figure 6 Mode shapes of the crank Four mode shapes are selected to span the deformation of the crank. As a result, RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT the system has 5 degrees of freedom. Dynamic analysis using the generalized coordinate partitioning method is performed for 5 sec under the constant acceleration condition of the joint between the ground and the body 1. The acceleration, displacement, and relative deformation of the pin joint connecting the crank and the coupler both from the proposed method and the nonlinear approach [6] are shown in Figs. 7, 8, and 9, respectively. Note that since the results from both models are almost identical as shown in these figures, the proposed implementation methods using rigid virtual body can be validated. -30-20-1001020300.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0TIME (SEC)Y (M/SEC^2)..NONLINEARPROPOSED Figure 7 Y Acceleration of P1 3-19 -0.5-0.4-0.3-0.2-0.10.00.10.20.30.40.50.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0TIME (SEC)Y (M)NONLINEARPROPOSED Figure 8 Y Displacement of P1 -0.015-0.010-0.0050.0000.0050.0100.0150.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0TIME (SEC)Y (M)NONLINEARPROPOSED Figure 9 Deformation of P1 RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT 3.5.2 FLEXIBLE PENDULUM MECHANISM BEAM BEAM(FLEXIBLE BODY) (FLEXIBLE BODY)RIGID BODY RIGID BODYREVOLUTE REVOLUTE JOINT JOINTGRAVITY GRAVITYXY Figure 10 Simple flexible pendulum model The pendulum body shown in Fig. 10 is modeled with 10 beam elements having a length of 0.4m, a cross sectional area of 0.0018m2, and a mass of 3.9888kg. Dynamic analysis is performed for 1 sec under the free falling condition. Mode shapes of the pendulum are obtained by ANSYS[15] with the simply supported-free(pin-free) boundary condition. Mode Shapes of the pendulum are shown in Fig. 11. The acceleration and relative transverse deformation of the tip point both from the proposed method and the nonlinear approach [6] are shown in Figs. 12, and 13, respectively. It is clear from these results that the proposed method and nonlinear approach are in good agreement, accordingly. -1.2-0.8-0.40.00.40.81.20 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4X(M)MAG1st mode2nd mode3rd mode4th mode 3-21 Figure 11 Mode Shapes of the pendulum -30-20-100102030400.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0TIME (SEC)Y (M/SEC^2)..NONLINEARPROPOSED Figure 12 Y Acceleration of beam tip -0.0015-0.0010-0.00050.00000.00050.00100.00150.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0TIME (SEC)Y (M)NONLINEARPROPOSED Figure 13 Deformation of beam tip RecurDyn/SOLVER THEORETICAL MANUALFLEXIBLE MULTIBODY DYNAMICS USING A VIRTUAL BODY AND JOINT 3.6. SUMMARY AND CONCLUSIONS An implementation method is proposed for general purpose rigid and flexible multibody dynamics with the Cartesian coordinate formulation. A concept of the virtual body and joint is introduced to make a flexible body free from all kinematic admissibility conditions except these from the virtual-flexible body joint. This eliminates extra programming efforts for the flexible body whenever a joint or force module is added to a general purpose dynamic analysis program. The computational overhead of the proposed method is turned out to be moderate if a sparse solver is employed, while implementation convenience is dramatically improved. A flexible slider crank mechanism and a simple pendulum are analyzed and the results are validated against these from a nonlinear approach. 3-23 REFERENCES 1. A. A. Shabana, "Substructure Synthesis Methods for Dynamic Analysis of Multibody Systems", Computers & Structures, Vol. 20. No. 4, pp 737-744, 1985 2. W. S. Yoo, and E. J. Haug, "Dynamics of Flexible Mechanical Systems Using Vibration and Static Correction Modes", Journal of Mechanisms, and Transmissions, and Automation in Design, 1985 3. H. T. Wu, and N. K. Mani, "Modeling of Flexible Bodies for Multibody Dynamic Systems Using Ritz Vectors", Journal of Mechanical Design, Vol. 116, pp. 437-444, 1994. 4. J. Garcia de Jalon, J. Unda, and A. Avello, "Natural Coordinates for the Computer Analysis of Three-Dimensional Multibody Systems", Computer Methods in Applied Mechanics and Engineering, Vol. 56, pp. 309-327, 1985. 5. N. Vukasovic, J. T. Celigueta, J. Garcia de Jalon, and E. Bayo, "Flexible Multibody Dynamics Based on a Fully cartesian System of Support Coordinates", Journal of Mechanical Design, Vol. 115, pp. 294-299, 19