Implementation of The Hilber-Hughes-Taylor Method in The Context of Index 3 Differential-Algebraic Equations of Multibody Dynamics
Implementation of The Hilber-Hughes-Taylor Method in The Context of Index 3 Differential-Algebraic Equations of Multibody Dynamics
Hilber-Hughes-Taylor Method
Dan Negrut1
Department of Mechanical Engineering,
in the Context of Index 3
The University of Wisconsin,
Madison, WI 53706
e-mail: [email protected]
Differential-Algebraic Equations
of Multibody Dynamics
Rajiv Rampalli
e-mail: [email protected] „DETC2005-85096…
Gisli Ottarsson The paper presents theoretical and implementation aspects related to a numerical inte-
e-mail: [email protected]
grator used for the simulation of large mechanical systems with flexible bodies and
contact/impact. The proposed algorithm is based on the Hilber-Hughes-Taylor (HHT)
Anthony Sajdak implicit method and is tailored to answer the challenges posed by the numerical solution
e-mail: [email protected]
of index 3 differential-algebraic equations that govern the time evolution of a multibody
MSC.Software,
system. One of the salient attributes of the algorithm is the good conditioning of the
Ann Arbor, MI 48105
Jacobian matrix associated with the implicit integrator. Error estimation, integration
step-size control, and nonlinear system stopping criteria are discussed in detail. Simula-
tions using the proposed algorithm of an engine model, a model with contacts, and a
model with flexible bodies indicate a 2 to 3 speedup factor when compared against
benchmark MSC.ADAMS runs. The proposed HHT-based algorithm has been released in
the 2005 version of the MSC.ADAMS/Solver. 关DOI: 10.1115/1.2389231兴
Vn+1 − v共qn+1,q̇n+1,q̈n+1,Xn+1,n+1,Vn+1,Fn+1,tn+1兲 = 0
The Proposed Algorithm
共11d兲
In addition to the Newmark formulas of Eq. 共2兲 an integration
formula is required for the solution of the first-order ODE in Eq.
共8a兲. The general formula considered is Fn+1 − f共qn+1,q̇n+1,q̈n+1,Xn+1,Ẋn+1,n+1,Vn+1,Fn+1,tn+1兲 = 0
共11e兲
Xn+1 = Xn + hẊn + h共Ẋn+1 − Ẋn兲 共9a兲
Everywhere in Eq. 共11兲, in an index 3 DAE direct approach, the
in which case Newmark integration formulas of Eq. 共2兲 are used to express q
Xn+1 and q̇ as a function of q̈, while Eq. 共9a兲 is used to discretize the
= hInd 共9b兲 set of ordinary differential equations 共express X as a function of
Ẋn+1
Ẋ兲. A Newton-type algorithm 关30兴 is used to solve the resulting
where throughout this paper Is stands for the identity matrix of system of nonlinear equations for the set of unknowns 共in this
dimension s. The discussion about the choice of the parameter is
order兲 q̈, , Ẋ, V, and F. Note that the generalized force Q of Eq.
deferred to a later section.
For the multibody dynamics problem stated, the unknowns of 共7d兲 is obtained by projecting the force states F along the gener-
interest are the generalized positions, velocities, and accelerations alized coordinates q; that is, Q共q , F兲 = ⌸F, where the projection
q, q̇, and q̈, respectively, the Lagrange multipliers , the applied- operator ⌸ = ⌸共q兲 depends on the choice of generalized coordi-
force states F, the user-defined variables 共aliases兲 V, and the states nates. The iterative algorithm requires at each iteration 共k兲 the
associated with the user-defined ordinary differential equations, solutions of the linear system
冤 冥
that is, X and Ẋ. The index 3 DAE multibody dynamics problem M̂ ⌽qT 0 0 −⌸
that must be solved to compute these quantities is neither linear
nor ordinary differential, and the HHT method is thus applied for ⌽q 0 0 0 0
a different class of problems from that originally designed for. 共dq̈ + ␥hdq̇ + h2dq兲 d dX˙ + hdX dV dF
Rather than approaching the solution within an index 2 framework
关19兴 or using a stabilization approach 关20,21兴, the proposed algo- − 共vq̈ + ␥hvq̇ + h2vq兲 − v − hvX I − vV − vF
rithm uses the implicit Newmark formulas to discretize the equa- − 共fq̈ + ␥hfq̇ + h fq兲2
− f − fX˙ − hfX − fV I − fF
tions of motion and requires that the position-level kinematic con-
straint equations be satisfied at the end of each time step. This is a
冤冥冤冥
共k兲
direct index 3 approach, and it requires at each integration time ⌬q̈ − e1 共k兲
step the solution of a nonlinear system of equations. The theoret- ⌬ − e2
ical foundation of this algorithm is provided by the stability and
convergence results and observations in 关27,28,26,5兴. However, ⫻ ⌬Ẋ = − e3 共12兲
we are not aware of a global convergence proof for the HHT ⌬V − e4
method when used in conjunction with the fully nonlinear index 3
problem of multibody dynamics. Current work is underway for a ⌬F − e5
rigorous global convergence proof for a stabilized index 2 formu- where ei are the residuals in satisfying the set of discretized equa-
lation 关29兴. The global convergence for the direct HHT-based in- tions of motion, constraint equations, discretized first-order differ-
dex 3 formulation remains very much an open question, but the ential equations, variable definition equations, and applied force
results obtained with the proposed algorithm provide an early definition equations, respectively, and, unless otherwise specified,
validation of the good properties associated with the HHT all the quantities in e1 – e5 are evaluated at time tn+1:
method.
At the cornerstone of the proposed algorithm lies the simple 1 ␣
e1 = 共Mq̈兲n+1 + 共⌽qT − Q兲n+1 − 共⌽T − Q兲n
idea on which the HHT method is built: recycle the Newmark 1+␣ 1+␣ q
integration formulas, but slightly change the equations of motion
to account for the set of forces acting on the system at two con- 1
secutive integration points. The algorithm is modified to a small e2 = ⌽共q,t兲
extent to accommodate the set of differential and algebraic equa- h2
tions 共8a兲–共8c兲 that a general-purpose simulation package would
have to handle. Thus, in the spirit of the original HHT formula- e3 = d共Ẋ,X,q,q̇,q̈,,V,F,t兲 共13兲
tion, the discretization of the multibody dynamics equations of
motion yields e4 = V − v共q,q̇,q̈,X,,V,F,t兲
冋 册
ance. Based on a linearization of the equations of motion in Eq.
e1 1 1 共7d兲 along with an asymptotic expansion of the solution q, a strat-
M̂ = = M + h2 共Mq̈兲q + 共⌽qT兲q − 共II F兲q
q̈ 1 + ␣ 1+␣ egy for estimating the local integration error in positions is pre-
共14兲 sented. Following the same approach, namely, linearization and
asymptotic expansion, an estimate of the local integration error is
Note that the nonlinear equations associated with the position also provided for the state X associated with the ordinary differ-
kinematic constraints are scaled by 1 / h2 in order to improve the ential equations defined by Eq. 共8a兲.
conditioning of the coefficient matrix in Eq. 共12兲. This is a com-
promise reached after considering the following options: 共a兲 have Local Integration Error in Positions Coordinates. The approxi-
the level-zero positions, q, and differential states, X, be the un- mation of the local integration error is similar to the approach
proposed in 关34兴 for the Newmark method. The discussion is go-
knowns 共replacing q̈ and Ẋ兲, in which case some entries in the
ing to focus on Eq. 共4兲, because locally a linearization of Eq. 共7d兲
Jacobian matrix in Eq. 共12兲 end up divided by h2; 共b兲 have q̈ and leads to the previous form. Thus, Eq. 共4兲 is rewritten as
Ẋ be the unknowns, in which case the second row in the Jacobian
matrix comes multiplied by h2; and 共c兲 same as in 共b兲, except Mq̈n+1 + 共1 + ␣兲共Cq̇n+1 + Kqn+1兲 − ␣共Cq̇n + Kqn兲 = F共t̃n+1兲
that the set of positions kinematic constraint equations is scaled by
共15兲
1 / h2. Option 共a兲 is implemented by the default integrator used in
the MSC.ADAMS simulation package 关31兴 共here entries get di- with t̃n+1 defined as in Eq. 共5兲.
vided by a factor 0h rather than h2, as the second-order equa- For the purpose of computing the local integration error, the
tions of motion are reduced to an equivalent first-order system of usual assumption is that the configuration at time tn, 共qn , q̇n , q̈n兲,
differential equations that is then solved with a BDF-type integra- is perfectly consistent. That is, it satisfies the equations of motion,
tor 关32兴兲. On numerous occasions this has been observed to be the along with the time derivatives of the equations of motion:
cause of numerical problems once the step-size becomes very
small and consequently some entries in the Jacobian become ex- Mq̈n + Cq̇n + Kqn = Fn 共16a兲
tremely large. A bad Jacobian condition number ensues, and the
quality of the Newton corrections becomes poor. The option 共b兲
was not embraced because the problem at 共a兲 plagues this ap- តn + Cq̈n + Kq̇n = Ḟn
Mq 共16b兲
proach as well, though in a more subtle way. If h becomes very The Newmark integration formula of Eq. 共2兲 is rewritten in the
small, the second row of the Jacobian matrix is scaled by h2, equivalent form
which practically makes all the entries in this row very small and
thus leads to ill conditioning. Option 共c兲 proved a good solution h2
qn+1 = qn + hq̇n + q̈n + h2x 共17a兲
because typically the type of error that one sees in satisfying the 2
position kinematic constraint equations is very small. It is never
that these constraint equations are problematic in a simulation, but
q̇n+1 = q̇n + hq̈n + h␥x 共17b兲
rather some discontinuity in the model that causes the step-size h
to assume small values. But if h is small, when advancing the
simulation the position constraint violation stays very small, and q̈n+1 = q̈n + x 共17c兲
the norm of e2 always remains bounded. A formal proof of this where the unknown x represents the change in the value of accel-
result is provided in 关33兴, which also discusses the nonsingular
eration from time tn to tn+1. The goal is to compute an estimate of
character of the coefficient matrix in Eq. 共12兲 when h → 0, and the the error at the end of one integration step 共the local integration
convergence of the iterative Newton scheme. Thus, a salient fea- error兲
ture of the approach is that it eliminates the ill conditioning typi-
cally associated with the index 3 integration of the DAE of multi- ␦n+1
q
= qn+1 − q̃n+1 共18兲
body dynamics. Two factors are responsible for this: 共i兲 the
position kinematic constraint equations are appropriately scaled, where q̃n+1 is the exact solution of the initial value problem
and 共ii兲 the set of unknowns q̈ and are consistent in the sense
that they are qualitatively of the same kinematic level, that is, two Mq̈ + Cq̇ + Kq = F 共19兲
共as opposed to mixing q, which is level zero, with , which is that starts in the configuration 共qn , q̇n , q̈n兲 at t = tn.
level two兲. Using Taylor’s theorem, one obtains q̃n+1 as
With the corrections computed as the solution of the linear sys-
tem of Eq. 共12兲, the numerical approximation of the solution is h2 h3
improved at each iteration as q̈共k+1兲 = q̈共k兲 + ⌬q̈共k兲, 共k+1兲 = 共k兲 q̃n+1 = qn + hq̇n + q̈n + q តn + O共h4兲 共20兲
2 6
+ ⌬共k兲, Ẋ共k+1兲 = Ẋ共k兲 + ⌬Ẋ共k兲, V共k+1兲 = V共k兲 + ⌬V共k兲, F共k+1兲 = F共k兲
+ ⌬F共k兲. The following sections present in detail the answer to The local integration error ␦n+1
q
becomes available as soon as the
three key questions: 共a兲 When is the computed solution accurate acceleration correction x is available. In order to obtain an esti-
enough? 共b兲 How does one select the integration step-size h? 共c兲 mate for x, based on Eqs. 共15兲 and 共17兲
冋
When should one stop the Newton-type iterative process that
computes at each integration step the unknowns q̈, , Ẋ, V, and M共q̈n + x兲 + 共1 + ␣兲 C共q̇n + hq̈n + h␥x兲
冊册
F? Recall that once q̈ and Ẋ are available, Eqs. 共2a兲, 共2b兲, and
共9a兲 are used to evaluate q, q̇, and X, respectively.
冉
+ K qn + hq̇n +
h2
2
q̈n + h2x − ␣共Cq̇n + Kqn兲
Implementation Details for Proposed Algorithm
= Fn + 共1 + ␣兲Ḟnh + O共h2兲 共21兲
Estimating the Local Integration Error. Since an approxima-
tion of the global error at time tn+1 cannot be obtained in general, where Taylor’s theorem was used to expand F共tn + 共1 + ␣兲h兲. Using
the goal is to produce an approximation of the local integration Eqs. 共16a兲 and 共16b兲,
␦n+1
q
冉
⬇ −
1
6共1 + ␣兲
冊
h 2x 共26兲 The Accuracy Test. With the local truncation error in positions
q and differential states X obtained as indicated in Eqs. 共26兲 and
共34兲, the numerical integrator has to certify at time tn+1 the accu-
which provides an effective way of computing the local integra-
racy of the newly computed solution. Two tests performed to this
tion error, since the required quantities are available at the end of
end are used to accept or reject the integration step. The tests are
the corrector stage.
based on the value of the position and differential states composite
Local Integration Error in X States. A necessary condition for errors, eq and ed, respectively:
冑 兺冉 冊 冑 兺冉 冊
the differential equations of Eq. 共8a兲 to be locally well defined is p nd
that 关9兴 det共d / Ẋ兲 ⫽ 0 holds in a neighborhood of the current 1 ␦i,n+1
q 2
1 ␦i,n+1
d 2
eq = ed = 共35兲
system configuration. Assuming that the user-defined form for d p i=1 Y iq nd i=1 Y iX
satisfies this requirement, by using the implicit function theorem
where Y qi = max共1 , max j=1,. . .,n兩qi,j兩兲 and ␦i,n+1
q
, 1 艋 i 艋 p, is the ith
and Taylor’s theorem, Ẋ can be locally expressed explicitly as a
component of ␦n+1.
q
function of X and time t:
The composite error is compared with the user-prescribed error
Ẋ = AX + b共t兲 共27兲 ⑀. Introducing the notation
where A is a constant matrix that depends on the configuration of p⑀2
q ⬅ 共36a兲
the system at the time when the linearization is carried out, and b 关 − 1/6共1 + ␣兲兴2
is a function of time. One additional time derivative leads to
the error test eq 艋 ⑀ is equivalently expressed as
Ẍ = AẊ + ḃ共t兲 共28兲 q
储x储2q 艋 共36b兲
The integration formula used to integrate the differential equations h4
in Eq. 共8a兲 is equivalently expressed as
where 储 · 储q represents a weighted norm 关36兴 defined as 储x储q
Xn+1 = Xn + hẊn + hxd 共29兲 ⬅ 关兺i=1
p
共xi / Y qi 兲2兴1/2.
For the local integration error in the differential states, introduc-
where xd = Ẋn+1 − Ẋn. The goal is to produce an approximation of ing the notation
the local integration error when advancing the simulation from tn
nd · ⑀2
to tn+1. To this end, suppose that X̃n+1 is the exact solution at tn+1 d = 共37a兲
共 − 1/2兲2
starting from 共tn , Xn兲, while Xn+1 is the approximate solution as
computed by the proposed algorithm. By using Taylor’s theorem, the accuracy test ed 艋 ⑀ leads to the requirement
1
X̃n+1 = Xn + hẊn + 2 h2Ẍn + O共h3兲 共30兲 d
储xd储X2 艋 共37b兲
h2
Considering the definition of the local truncation error ␦n+1
d
where the corresponding weighted norm is defined as 储x储X
⬅ Xn+1 − X̃n+1, based on Eqs. 共29兲 and 共30兲,
⬅ 关兺i=1
nd
共xi / Y Xi 兲2兴1/2. Note that all the quantities that enter the ac-
␦n+1
d 1
= hxd − 2 h2Ẍn + O共h3兲 curacy tests in Eqs. 共36b兲 and 共37b兲 are available after the nonlin-
ear discretization system of Eq. 共11兲 is solved, and a decision is
Thus ␦n+1
d
is available as soon as xd becomes available. Note that made at that point whether the newly computed solution is ac-
xd should satisfy cepted or rejected.
Ẋn + xd = AXn + bn + A共hẊn + hxd兲 + hḃn + O共h2兲 共31兲 The Step-Size Selection. Step-size selection plays a central
role in the numerical integration algorithm. If eq Ⰶ ⑀ and ed Ⰶ ⑀,
Substituting for Ẋn from Eq. 共27兲 into Eq. 共31兲 and performing CPU time is wasted in computing a solution that unnecessarily
simple manipulations yields exceeds the user-demanded accuracy. At the other end of the spec-
trum, a step-size selection mechanism that is too aggressive leads
xd = hẌn + O共h2兲 共32兲 to a large number of integration steps at the end of which the user
accuracy requirements are not met. The effort to perform such an
Therefore,
integration step is wasted, as the integration step is discarded for a
␦n+1 = 共 − 2 兲h2Ẍn + O共h3兲 new attempt with a more conservative step-size h. To strike the
1
d
共33兲
right note, the integration step-size is always chosen such that the
which leads to error at the end of the next integration step is precisely equal to
⑀ = hnew
3
冋 兺冉 冊 册
1
p
ci
p i=1 Y i
2
1/2
Therefore, e / ⑀ = h3 / hnew
3
, from where
hnew = h⑀1/3 冋冑 冉
1
p
−
1
6共1 + ␣兲
冊
h2 · 储x储q 册 −1/3
By defining
储x储2q · h4
⍜q = 共38a兲
q
the position-based criterion for selecting the step-size becomes Fig. 1 Poly-V accessory belt.
sh
q
hnew = 共38b兲
⍜1/6
q
As recommended in 关16兴, a safety factor s = 0.9 was used to scale words, no room is left for errors in finding the numerical solution
the value of the new step-size. The superscript q was added to at the end of one integration step. Finding an approximate solution
indicate that this value of the new step-size is based on position translates into solving a different initial value problem, which can
considerations. be close to or far from the original problem based on how accurate
The approach for computing hnew d
follows step by step the the nonlinear system of Eq. 共11兲 is solved and the nature of the
q original initial value problem itself. In summary, based on these
position-based selection of hnew. Defining
冋兺 冉 冊 册
nd 1/2
two remarks, the corrector stopping criterion adopted here is that
2
− 1/2 Ẍi,n the relative difference between e and e共k兲 should stay smaller than
sd =
冑nd Yi a threshold value denoted by c. A typical value recommended in
i=1
the literature is c = 0.001 关16兴. The local integration error at the
it can be concluded that the error depends quadratically on the end of one time step is
冉 冊
step-size h, like ed = sdh2. Therefore, hnew should be selected such
that ⑀ = sdhnew
2
, which leads to hnew = h⑀1/2e−1/2. Hence, hnew 1 h2
eq =  − 储x储q
= h共d / h · 储xd储2X兲1/4. By defining
2 6共1 + ␣兲 冑p
linear system of Eq. 共12兲, two operations that are expensive and and an approximation for 储x − x共k兲储q is needed. Since for the
should be kept to a minimum. Newton-type algorithm employed the convergence is linear, there
Suppose that x is approximated by x共k兲, the value obtained after is a constant that for convergence must satisfy 0 艋 ⬍ 1 such
k corrector iterations. Therefore, according to Eqs. 共25兲 and 共35兲, that 关30兴
the composite error eq is actually computed based not on the value
x, but rather on x共k兲, which will lead to a value eq,共k兲. It is therefore 储⌬x共k+1兲储q 艋 储⌬x共k兲储q 共42兲
important to have a good approximation x共k兲 for x if the algorithm 共k兲
where ⌬x represents the correction at iteration k, x 共k+1兲
= x共k兲
is to produce a reliable measure of the local integration error 共a + ⌬x共k兲. Immediately,
similar argument holds for the differential error ed兲. Another rea-
son for having an accurate approximation is that the stability and
convergence results associated with a numerical integrator are de- 储x − x共k+1兲储q 艋 储⌬x共k兲储q 共43兲
1−
rived under the assumption that the numerical solution is com-
puted to the specifications of the integration formula; in other The value is going to be approximated by
储⌬x共k兲储q erations prediction is obtained by taking q̈n+1 = q̈n and Ẋn+1 = Ẋn,
⬇ k = 共44兲
储⌬x共k−1兲储q which is equivalent to setting x = 0 and xd = 0. A new strategy is
Based on Eq. 共41兲, proposed based on polynomial extrapolation, in which a polyno-
冉 冊
mial of order up to three is used to produce an initial guess for the
1 h2 unknowns. The approach used in 关4兴 is thus obtained by setting
兩eq − eq,共k兲兩 艋  − 储⌬x共k兲储q 共45兲
冑
6共1 + ␣兲 p 1− the degree of the interpolation polynomial to zero. The polyno-
mial extrapolation is based on Newton divided differences and
The condition of Eq. 共40兲 is then satisfied as soon as uses Horner’s scheme for evaluation of the interpolant at time tn+1
冉 冊
1−
2
储⌬x共k兲储2q 艋 c2
q
h4
共46兲
关36兴. The heuristics for choosing the degree of the interpolant
would be based on the size of the numerical derivatives of the
solution 共evaluated by divided differences兲, and on the “smooth-
Note that at the right of the inequality sign are quantities that ness” of the numerical solution as reflected in the number of re-
remain constant during the corrector iterative process, while at the jected integration steps.
left are quantities that change at each iteration. Likewise, note that
the stopping criterion of Eq. 共46兲 can be used only at the end of Summary of Key Formulas. Summarized below are the an-
the second iteration because only then can an approximation of swers to the questions 共a兲 What is the stopping criteria for the
the convergence rate be produced. In other words, the proposed nonlinear discretization algebraic system? 共b兲 How is the integra-
approach will not be able to stop the iterative process after the first tion error computed? and 共c兲 How is the step-size controlled?
iteration. This is not a matter of great concern, however, because Summary of Key Formulas for Handling of the Generalized
models as simple as a one-body pendulum are already nonlinear Coordinates. Notation.
and require more than one iteration.
Qualitatively, the same approach used for the positions-based p⑀2 储x储2qh4
q ⬅ ⍜q = 共48a兲
stopping criterion is used for the differential states. Without get- 关 − 1/6共1 + ␣兲兴2 q
ting into details, this will lead to the following stopping criterion:
Prediction. Performed based on divided differences 共Newton in-
冉 冊d 2
1 − d
d
储⌬xd共k兲储X2 艋 c2 2
h
共47兲
terpolation and Horner’s scheme for extrapolation at tn+1兲.
Correction. Linear convergence rate allows for computation of
共Eq. 共44兲兲. Stopping criterion:
The Prediction Stage. For the Newton-type algorithm used to
find the solution of Eq. 共13兲, a good starting point is essential both
for convergence and for reducing the effort in finding the approxi-
冉 冊
1−
2
储⌬x共k兲储2q 艋 c2
q
h4
共c = 0.001兲 共48b兲
mation of the solution at time tn+1. In 关4兴, the generalized accel- Accuracy check. Performed after corrector converged,
⍜q 艋 1 共48c兲 ried out until the conditions of Eqs. 共48b兲 and 共49b兲 are simulta-
Step-size selection. With a safety factor s = 0.9, neously satisfied. The new step size is chosen as hnew = min 共hnew
q
,
hnew兲. An integration step is not accepted unless both accuracy
d
sh
q
hnew = 共48d兲 conditions of Eqs. 共48c兲 and 共49c兲 are satisfied.
⍜1/6
q
冉 冊d 2
1 − d
d
储⌬xd共k兲储X2 艋 c2 2
h
共c = 0.001兲 共49b兲
MSC.ADAMS 关31兴 simulation package, are presented herein. The tensioner 共deviation pulley兲. The poly-V belt provides drive by
comparison primarily focuses on efficiency issues, although the adhesion and, compared with conventional belts of the same
accuracy of the results is touched upon. width, it augments the contact area, increasing power transfer. The
larger of the pulleys 共the lowest one in the picture兲 is the engine
A Poly-V Belt Model. The model in Fig. 1 is an accessory crankshaft pulley. Right above it is the water-pump pulley, and at
drive for a car engine with a poly-V belt 共V-ribbed belt兲 wrapped the left is the alternator pulley. There is a tensioner in between the
around three pulleys 共crank, water pump, and alternator兲 and one crankshaft and alternator pulleys; its pivot point is shown in the
figure as the little ring just outside the belt. The tensioner uses a
rotational spring element that includes damping and stiffness ef-
fects. The units used for this model are Newton, kilograms, mil-
liseconds, and millimeters.
One driving torque is on the crankshaft, and two resisting
torques act on the alternator and water pulleys. The belt is mod-
eled by using 100 segments connected by a set of 400 VFORCE
elements 关31兴. The length of the simulation was 200 ms, which
results in more than a full revolution of the belt. The GSTIFF
integrator was run with ERROR= 1 . E-4, while HHT was run with
ERROR= 1 . E-5 共this is the ⑀ variable of Eqs. 共48a兲 and 共49a兲兲.
Because of the different error control strategies employed by the
two integrators, it has been noticed that GSTIFF typically can be
run with a more lax ERROR for results that are qualitatively simi-
lar to HHT. The simulation time for GSTIFF was 1286 s, while
HHT completed the simulation in 485 s. The simulation was run
on a Windows 2000 machine, with Pentium III CPU, and 512 MB
RAM.
Figure 2 shows the X-component of the reaction force in the
revolute joint that connects the alternator with the rest of the sys-
Fig. 8 All-terrain vehicle „ATV… tem. The agreement of the results is very good: the peak differ-
GSTIFF HHT
Stress
difference
Stress Time Stress Time GSTIFF
No. Point 共lbf/ inch2兲 共s兲 No. Point 共lbf/ inch2兲 共s兲 versus HHT
ence between the two sets of results is less than 3%; see Fig. 3. tances, frequent place changes, and demanded 90% machine
Figure 4 shows the time variation of the angular velocity of the availabilities are standard requirements in the industry. The type
alternator. The plot displays good correlation between the results of simulation reported here is typical in the virtual prototyping
obtained with the GSTIFF and the HHT integrators. Figure 5 con- cycle when trying to meet these requirements and extend life
firms that the difference between the angular velocity computed cycles of the track and drive systems.
with GSTIFF and HHT integrators is less than 1%. This value is The model in Fig. 6 contains a set of 61 moving parts. It has
smaller than the 3% noticed for the difference in force in the one planar joint, 54 revolute joints, one translational joint, four
alternator joint. This is an expected trend all across the simulation fixed joints 共a joint that removes all six degrees of freedom兲, one
results, where the quality of the velocity level variables is better inline joint primitive, and one motion. This results in a model with
than the quality of the force/acceleration variables. Although not 61 degrees of freedom. The relatively large number of degrees of
shown here, the position-level variables for the two integrators are freedom indicates that the motion of this system is not controlled
practically identical, and in general they are qualitatively better as much through constraints 共joints兲 as through the geometry of
than the velocity-level results obtained with the two integrators. the components and 690 three-dimensional contact elements
A Track Model. The track presented in Fig. 6 is a detailed 共sprocket-track, roller-track, track-track, and track-ground con-
model of a subsystem of a low-mobility hydraulic mining exca- tacts兲. The HHT integrator resulted in a set of 4675 equations for
vator. Weight and extreme operating conditions cause high me- the dynamic analysis of this model.
chanical stresses on crawler tracks, especially in the case of big A 14 s simulation was run on a Windows XP Dell Precision
hydraulic excavators of 1000 tons and higher. Long haulage dis- M530 machine, with 2 GB ECC RAM and 2.8 GHz HyperThread
Xeon CPUs. A first set of results was obtained with the default
version of the ADAMS/Solver. The key integrator settings were as A Model With Flexible Bodies. The model in Fig. 8 is an
follows: GSTIFF integrator, stabilized index 2 共SI2兲 DAE formu- all-terrain vehicle 共ATV兲 with a flexible frame. Beneath the ATV
lation 关37兴, ERROR= 1E − 2, KMAX= 1 共to reflect the 3D contact- is a four-post shaker device, which is used to simulate a durability
induced discontinuous nature of the simulation兲, MAXIT= 10. The event represented by a simple-harmonic translational displace-
HHT integrator was run in the beta version of the 2005 release, ment constraint at each of the four posts 共pitch-type excitation, of
with the following key settings: ERROR= 1E − 5, MAXIT= 10, approximately 2 Hz兲.
DAE formulation was index 3 关27,28兴. Note the difference be- The frame component in Fig. 8 is an MSC.ADAMS flexible-
tween the ERROR settings in the two cases. This is explained by body modal representation 关38兴 that was created with the
the different ways in which the error is quantified by the two MSC.Patran finite element package; it contains 134 modes 共from
integrators. In this context, the SI2-GSTIFF integrator has a much 56.7 Hz to 13.1 kHz兲. The purpose of this simulation is to recover
stricter interpretation of the user-set ERROR. In has been noticed the von Mises stresses in the flexible body and identify critical
that in order to obtain qualitatively comparable results, the HHT stress locations in the frame.
ERROR setting should be two orders of magnitude more stringent The steering system has a motion constraint that applies a ro-
than that of the SI2-GSTIFF integrator. To be on the safe side, for tational displacement function, causing the front wheels to turn
this model the HHT integrator was run with an even tighter error left to right in a sinusoidal fashion. The tires of the vehicle interact
setting, ERROR= 1.E-5, which actually is the HHT default setting with the shaker by means of three-dimensional solid-to-solid con-
for this attribute. tact forces. A rider weight of 230 lbs has been approximated with
The speedup obtained when using the HHT integrator was more lumped masses and distributed between the steering column as-
than fivefold: it took 1713 s for the simulation to complete when sembly and frame as 30 and 200 lbs, respectively. Remaining
using the HHT integrator, while it took 8988 s for the GSTIFF parts in the model that are attached to the frame, such as the
integrator to finish the same simulation. The quality of the new engine, are modeled as lumped masses and are connected by using
results is very good. The accelerations are always the most likely fixed joints.
to show differences. Differences can only rarely be noticed in Altogether there are 28 moving parts, 43 joints, 5 motions, and
velocity results, while the quality of the position level results is 1 flexible body, leading to a total number of 532 equations for the
almost always very good in both integrators. For comparison, in HHT integrator and 927 equations for the Index-3 GSTIFF 共I3兲
Fig. 7 the acceleration and velocity results are displayed for track formulation. The MSC.ADAMS modeling units used for this ex-
no. 8. The results match overall very well everywhere with the periment were poundគforce, poundគmass, inch, and second.
exception of some spikes that are explained by the sensitivity of The duration of the simulation was 2.0 s, which allows the ATV to
the simulation with respect to the large number of contact forces move up and down several times. The GSTIFF integrator was run
present in the model. with ERROR= 1e − 4, while HHT was run with ERROR= 1e − 5.
Conclusions Acknowledgment
The HHT method used in structural dynamics and later intro- The authors thank Dipl.-Ing. Holger Haut of the University of
duced in the context of multibody dynamics simulation in 关26兴 Aachen, Germany, for providing images, results plots, and timing
serves as the starting point of an algorithm implemented and vali- results for the track subsystem simulation, and Andrei Schaffer of
dated in an industrial strength mechanical system simulation pack- MSC.Software for his suggestions. The authors thank an anony-
age. Strategies for corrector stopping criteria, error estimation, mous reviewer for pointing out additional reference material for
and step-size control were presented in detail. A set of real-life the concept of DAE index.
numerical experiments indicates that simulations are at least two
to three times faster when compared with the default BDF-based References
integrator used in ADAMS 关31,32兴. An explanation for the im- 关1兴 Hilber, H. M., Hughes, T. J. R., and Taylor, R. L., 1977, “Improved Numerical
proved performance is based on three key observations. 共1兲 The Dissipation for Time Integration Algorithms in Structural Dynamics,” Earth-
most time consuming part of simulation is the computation of the quake Eng. Struct. Dyn., 5, pp. 283–292.
Jacobian associated with the nonlinear discretization system. The 关2兴 Newmark, N. M., 1959, “A method of computation for structural dynamics,” J.
Engrg. Mech. Div., 85, pp. 67–94.
proposed algorithm contains heuristics to reduce as much as pos- 关3兴 Ascher, U. M., and Petzold, L. R., 1998, Computer Methods for Ordinary
sible the number of Jacobian evaluations. Unlike the BDF integra- Differential Equations and Differential-Algebraic Equations, SIAM, Philadel-
tor employed by GSTIFF, in which terms of the integration Jaco- phia, PA.
bian can become disproportionately large as a result of a scaling 关4兴 Hughes, T. J. R., 1987, Finite Element Method—Linear Static and Dynamic
Finite Element Analysis, Prentice-Hall, Englewood Cliffs, NJ.
by the inverse of the step-size, the proposed integrator employs a 关5兴 Cardona, A., and Geradin, M., 1994, “Numerical Integration of Second Order
different approach where certain values are multiplied 共never di- Differential-Algebraic Systems in Flexible Mechanics Dynamics,” in
vided兲 by the step-size prior to populating the Jacobian. As long as Computer-Aided Analysis of Rigid and Flexible Mechanical Systems, M. F. O.
the step-size does not significantly change over several consecu- S. Pereira and J. A. C. Ambrosio, eds., Kluwer Academic, Dordrecht.
关6兴 Shabana, A. A., 1994, Computational Dynamics, Wiley, New York.
tive time steps, this approach better supports the recycling of the 关7兴 Pars, L. A., 1965, A Treatise on Analytical Dynamics, Wiley, New York.
Jacobian. 共2兲 When compared with the BDF Jacobian, the HHT 关8兴 Haug, E. J. 1989, Computer-Aided Kinematics and Dynamics of Mechanical
Jacobian is numerically better conditioned, thereby leading to Systems, Prentice-Hall, Englewood Cliffs, NJ.
more reliable corrections in the Newton-type iterative approach 关9兴 Brenan, K. E., Campbell, S. L., and Petzold, L. R., 1989, Numerical Solution
of Initial-Value Problems in Differential-Algebraic Equations, North-Holland,
for large problems. Typically, this results in a smaller number of New York.
corrector iterations. This desirable attribute is further enhanced by 关10兴 Le Vey, G., 1994, “Differential Algebraic Equations—A New Look at the
the fact that since certain partial derivatives are scaled by the Index,” Technical report, Institut de Recherche en Informatique et Systemes
step-size h, or by h2 prior to populating the Jacobian, small errors Aleatoires.
关11兴 Kunkel, P., and Mehrmann, V., 2006, Differential Algebraic Equations. Analy-
in these partial derivatives are going to have a less negative effect sis and Numerical Solution, European Math. Soc. Textbooks in Mathematics,
on the overall quality of the Jacobian. 共3兲 On one hand, the BDF Zurich.
formulas of order higher than one contain regions of instability in 关12兴 Petzold, L. R., 1982, “Differential-Algebraic Equations are not ODE’s,” SIAM
the left plane. The higher the order, the smaller the region of 共Soc. Ind. Appl. Math.兲 J. Sci. Stat. Comput., 3共3兲, pp. 367–384.
关13兴 Bauchau, O. A., Bottasso, C. L., and Trainelli, L., 2003, “Robust Integration
stability. On the other hand, BDF intrinsically is designed to maxi- Schemes for Flexible Multibody Systems,” Comput. Methods Appl. Mech.
mize the integration order/step-size. Because of these two con- Eng., 192, pp. 395–420.
flicting attributes, particularly for models that are mechanically 关14兴 Eich-Sollner, E., and Fuhrer, C., 1998, Numerical Methods in Multibody Dy-
stiff 共models with stiff springs, flexible bodies, etc., that lead to namics, Teubner-Verlag, Stuttgart.
关15兴 Anderson, K. S., and Oghbaei, M., 2005, “A Dynamics Simulation of Multi-
systems with large eigenvalues close to the imaginary axis兲, an body Systems Using a New State-Time Methodology,” Multibody Syst. Dyn.,
order/step-size choice often lands the BDF integrator outside the 14共1兲, pp. 61–80.
stability region 关16兴. These integration time-steps typically end up 关16兴 Hairer, E., and Wanner, G., 1991, Solving Ordinary Differential Equations,
being rejected, and smaller step-sizes are required to advance the Vol. II of Computational Mathematics, Springer-Verlag, New York.
关17兴 Lubich, C., Nowak, U., Pohle, U., and Engstler, C., 1995, “MEXX—
simulation. This is a nonissue with the HHT method, which is a Numerical Software for the Integration of Constrained Mechanical Multibody
fixed low-order method with good stability properties in the whole Systems,” Mech. Struct. Mach., 23, pp. 473–495.
left plane. 关18兴 Potra, F. A., 1993, “Implementation of Linear Multistep Methods for Solving
It should be pointed out that there are situations when BDF- Constrained Equations of Motion,” SIAM 共Soc. Ind. Appl. Math.兲 J. Numer.
Anal., 30共3兲, pp. 774–789.
type formulas are going to work significantly faster. These are the 关19兴 Yen, J., Petzold, L., and Raha, S., 1996, “A Time Integration Algorithm for
cases where BDF can sustain a high integration order throughout Flexible Mechanism Dynamics: The DAE ␣-Method,” Technical report TR96-
the simulation. If the model simulated allows BDF to work at 024, Dept. of Comp. Sci., University of Minnesota.