Index Reduction For DAE Using Dummy Derivatives
Index Reduction For DAE Using Dummy Derivatives
net/publication/235324214
CITATIONS READS
330 3,850
2 authors, including:
Gustaf Söderlind
Lund University
106 PUBLICATIONS 2,435 CITATIONS
SEE PROFILE
All content following this page was uploaded by Gustaf Söderlind on 12 November 2015.
Abstract. A new index reduction algorithm for DAEs is developed. In the usual manner, parts
of the DAE are differentiated analytically and appended to the original system. For each additional
equation, a derivative is selected to be replaced by a new algebraic variable called a dummy derivative.
The resulting augmented system is at most index 1, but no longer overdetermined. The dummy
derivatives are not subject to discretization; their purpose is to annihilate part of the dynamics
in the DAE, leaving only what corresponds to the dynamics of a state-space form. No constraint
stabilization is necessary in the subsequent numerical treatment. Numerical tests indicate that the
method yields results with an accuracy comparable to that obtained for the corresponding state-space
ODE.
We assume that the problem is solvable, [4], with a unique, smooth solution when
supplied with an appropriate number of consistent initial conditions. The index of
the problem equals the minimum number of times that all or part of (1.1) must be
differentiated with respect to t in order to determine ẋ as a continuous function of
x and t, op. cit., and is assumed to be constant along the solution. In addition,
F is assumed to be sufficiently differentiable to allow the proposed index reduction
technique. For alternative definitions of the index, cf. [11] or [14].
It is well-known that it is numerically difficult to solve a high-index DAE. Index
reduction methods provided in the literature, see e.g. [4], p. 33, can be used as a
remedy. However, it is often less satisfactory to solve the underlying ODE, or UODE,
that has been derived from the DAE through index reduction. The reason is that the
set of solutions to the UODE is larger than the corresponding set of solutions to the
original DAE; the algebraic relations of the DAE are only implicit in the UODE as
solution invariants. Unless linear, these invariants are generally not preserved under
discretization. As a result, the numerical solution drifts off the algebraic constraints,
often leading to instabilities, [10]. Consequently, so-called constraint stabilization
techniques have been devised, [1], [3], [12].
To avoid such difficulties, one may try to obtain a low-index formulation, with
a solution set identical to that of the original problem. This can be achieved by
augmenting the system as the index reduction proceeds: all original equations, and
their successive derivatives are retained in the process. The result is an overdetermined
but consistent index 1 DAE. Like invariants, however, consistency is generally lost
when the system is discretized. Therefore special projection techniques are required
for the numerical solution, see e.g. [8] or [9]. Related approaches using least-squares
projections have been used in [2], [5] and [6].
∗ Dept. of Automatic Control, Lund Institute of Technology, Box 118, S-221 00 LUND, Sweden.
† Dept. of Computer Science, Lund University, Box 118, S-221 00 LUND, Sweden.
1
2 S. E. MATTSSON AND G. SÖDERLIND
The index reduction technique proposed in this paper, which was outlined in
[16], overcomes the latter complication by introducing a new dependent variable for
each new equation generated in the reduction process. This generates an augmented,
“determined” index 1 DAE from the original problem. The method is related to
classical reduction to state-space form; the remaining dynamics of the problem is
represented by a selection of its original variables, forming a (local) UODE. The other
variables are solved for in terms of the UODE states. The technique is applicable
to large classes of problems and can be practically implemented, using symbolic or
automatic differentiation, [13], [18].
We shall outline our method in a simple example. Consider the DAE problem
(1.2a) ẋ = y
(1.2b) ẏ = z
(1.2c) x = f (t).
This is an index three “derivative chain” with solution x = f (t), y = f˙(t) and z = f¨(t).
It may be thought of as prototypical for prescribed-trajectory problems in mechanics,
where one wants to calculate the (usually generalized) forces required for the system
to accomplish the desired action. In such an application x, y and z would represent
position, velocity and force per unit mass, respectively, and f (t) is the prescribed
trajectory for the system.
A sufficient condition for the index to be at most 1, is that we are able to solve for
the highest order derivatives in the system, i.e. ẋ, ẏ and z. This is obviously impossible
in (1.2). Differentiating (1.2a) once and (1.2c) twice yields, after reordering equations
and variables,
(1.2c′′ ) ẍ = f¨(t)
(1.2a′ ) ẏ = ẍ
(1.2b) z = ẏ,
which is index 1. Here (1.2a′ ) denotes the derivative with respect to t of (1.2a).
Now, consider the overdetermined but consistent system obtained by augmenting
the original system by the successive derivatives of (1.2a) and (1.2c):
(1.3c) x = f (t)
(1.3c′ ) ẋ = f˙(t)
(1.3c′′ ) ẍ = f¨(t)
(1.3a) y = ẋ
(1.3a′ ) ẏ = ẍ
(1.3b) z = ẏ.
For each differentiated equation appended to the original system, we need one “new”
dependent variable to make the augmented system determined rather than overdeter-
mined. This is achieved by replacing one derivative from each differentiated equation
by a new algebraic variable. Thus we eliminate ẍ by substituting a dummy deriva-
tive x′′ for ẍ wherever it occurs in the system (1.3). Although x′′ ≡ ẍ, the dummy
derivative is a purely algebraic variable and is not subject to discretization. Similarly
we replace ẋ by x′ and ẏ by y ′ . We have chosen this notation for the dummy deriva-
tives to directly indicate what they represent and how they were introduced into the
augmented system.
INDEX REDUCTION USING DUMMY DERIVATIVES 3
(1.4a) x = f (t)
(1.4b) x′ = f˙(t)
(1.4c) x′′ = f¨(t)
(1.4d) y = x′
(1.4e) y ′ = x′′
(1.4f) z = y′ .
(2.1) Fx = 0.
ẋ + ẏ = 1
x − y = 0.
Thus, Pantelides’s algorithm may call for an unnecessary differentiation step (here
it would suggest differentiating the second equation once, resulting in an index 0
system) but it is simple to remove such superfluous differentiations. Whether this
should be done or not depends on if one prefers to be able to solve for the highest
order derivatives or to reduce the index to one while introducing as few new variables
as possible.
In our algorithm below, we must be able to solve for the highest order derivatives.
We defer comments on the singular case to Section 4.
2.3. Differentiation, Permutation and Index Reduction Algorithm. The
index reduction procedure for Fx = 0 consists of the following steps:
1. If the problem is structurally singular then return an error message.
2. Differentiation. Use Pantelides’s algorithm to obtain
(a) a vector ν(F) ∈ INn ,
(b) a differentiated problem Gx = F ν x = 0 with F ν = Dν(F ) F,
(c) an output set for F ν x = 0 with respect to its highest order derivatives Dµ(G) x
as unknowns.
3. Permutation. Since P F ν Q = P Dν(F ) P T P FQ = DP ν(F ) P FQ, BLT partitioning
with respect to unknowns Dµ(G) x yields the permuted
(a) undifferentiated problem Hy = 0 with H = P FQ and y = QT x,
(b) differentiated problem HP ν y = 0 with HP ν = P F ν Q, i.e. ν(H) = P ν(F),
and the latter problem is BLT with respect to its highest order derivatives
T
DQ µ(G) y.
4. Index Reduction. Select derivatives to be replaced by dummy derivatives, block-
wise as indicated by the BLT partition. If unable to select one dummy for each
differentiated equation (singular case), manipulate original equations using infor-
mation from differentiated equations and restart at step 1.
In the rest of this paper we will focus on the central index reduction step, i.e. how
to select dummy derivatives. Note (cf. Step 4 below) that this relies on finding a
nonsingular submatrix, implying that this step is numerical/mathematical as opposed
to the two structural steps of differentiation and permutation. To simplify the notation
we will without loss of generality view the BLT partitioned problem as our original
problem, i.e. F = H.
INDEX REDUCTION USING DUMMY DERIVATIVES 5
[j+1]
thus omitting the last differentiation. New candidates zi for possible
−1 [j]
replacement are D ẑi , i.e. derivatives of one order less than those selected
[j] [j]
in Step 4. The components of ẑi are all highest order derivatives in hi = 0
and differentiated at least once. Hence they represent derivatives of the
original unknowns x, implying that D−1 ẑi is well defined. The Jacobian
[j]
(3.1a) x1 + x2 + u1 (t) = 0
(3.1b) x1 + x2 + x3 + u2 (t) = 0
(3.1c) x1 + ẋ3 + x4 + u3 (t) = 0
(3.1d) 2ẍ1 + ẍ2 + ẍ3 + ẋ4 + u4 (t) = 0
where the um (t) are known forcing functions. The differentiated problem Gx = 0 is
which was obtained by differentiating (3.1a) and (3.1b) twice and (3.1c) once. The
vector of highest order derivatives in Gx = 0 is z1 = ( ẍ1 ẍ2 ẍ3 ẋ4 )T .
Block triangularization results in a single block, g1 (x) = Gx, and the differentiated
problem is index 0 since the Jacobian with respect to the highest order derivatives
is nonsingular. This matrix is set up in Step 1. Throughout the steps of the index
reduction, we indicate at the Jacobians which equations and variables are presently
[1]
being considered. The reduction process essentially takes G1 and successively deletes
rows and columns. The proper choice of dummy derivatives is deduced during this
process.
We have three differentiated equations, and Step 3 gives
Thus we use (3.1a′′ ), (3.1b′′ ) and (3.1c′ ) to replace the derivatives ẍ1 , ẍ3 and ẋ4 .
Then, at Step 5 we prepare for the next cycle and consider the predecessor of the
INDEX REDUCTION USING DUMMY DERIVATIVES 7
3.2. Proof of index reduction. We shall outline proofs of the crucial parts of
Steps 4, 5 and 6.
Step 4: First we will prove by induction that one can select a nonsingular matrix
[j] [1] [j]
Mi at Step 4. By assumption A3, Gi has full rank. If Gi has full rank and there
[j]
are differentiated equations, then Hi has full rank. Hence it is possible to select a
[j] [j+1] [j] [j+1]
square nonsingular submatrix Mi . Defining Gi = Mi then implies that Gi
has full rank. By induction it follows that it is possible to select a full rank matrix
[j]
Mi each time we arrive at Step 4.
[j+1] [j] [j]
Step 5: Next, we show the formula Gi = Mi at Step 5. It implies that Gi =
[j] [j] [j+1]
∂gi /∂zi . Consider the element p, q of Gi . We have
[j]
and for the same element of Mi , we have
[j+1] [j]
The formula Gi = Mi now follows directly from the fact that for any differentiable
function e(t, v) it holds ∂e(t, v)/∂v = ∂ ė(t, v, v̇)/∂ v̇.
Step 6: We shall now show that the problem generated by the algorithm is at most
index 1. We first consider the reduction of a block. The equations are gi⋆ (zi⋆ ) = 0
with
[ki ] [ki ]
gi zi
⋆ . ⋆ .
gi = .. , zi = .. .
[1] [1]
gi zi
Considered as an algebraic problem, gi⋆ (zi⋆ ) = 0 is BLT, where we can take the jth
[j] [j]
block to consist of the equations gi = 0 with the unknowns zi . Since the Jacobian
[j] [j] [j]
∂gi /∂zi = Gi is nonsingular, we can solve for all the unknowns z ⋆ . The variables of
[j] [j] [j]
zi are of two categories. First, zi contains the variables ẑi selected for replacement
in Step 5 of the jth loop. The remaining variables clearly represent highest order
derivatives of the old variables x in the problem generated by the algorithm. Thus z ⋆
contains all the highest order derivatives of the problem generated by the algorithm,
and since we can solve for them the problem is at most index 1.
[j]
Finally consider the complete problem. Sort the block subsystems gi = 0 with
respect to descending order of the index j, and with respect to descending order of
[j]
the index i. The unknowns zi = 0 are sorted similarly. The resulting problem is
then BLT with nonsingular blocks. Consequently, the complete problem is at most
index 1.
The original problem and the problem resulting from the algorithm are mathe-
matically equivalent in the sense that they have identical solution sets in the original
(undifferentiated) dependent variables x. Original algebraic equations are still explic-
itly present. The advantage of the index reduction technique proposed here is that it
excludes some derivatives from discretization; by treating the dummy derivatives as
algebraic variables the problem of inconsistency due to discretization is eliminated.
INDEX REDUCTION USING DUMMY DERIVATIVES 9
where g is the gravitational constant and λ is the force in the string; the index is 3.
Applying Pantelides’s algorithm, the length constraint is differentiated twice:
(4.1a) x2 + y 2 − L2 = 0
(4.1a′ ) 2xẋ + 2y ẏ = 0
(4.1a′′ ) 2xẍ + 2ẋ + 2y ÿ + 2ẏ 2 = 0.
2
The Jacobian J of the differentiated problem with respect to the highest order deriva-
tives ( ẍ ÿ λ )T is
2x 2y 0
J = m 0 x/L .
0 m y/L
Since det(J) = −2m(x2 + y 2 )/L = −2mL, the differentiated problem is index 1 if and
only if m ̸= 0 and L ̸= 0. In this case, the index reduction algorithm gives
ẍ ÿ λ
[1] ′′
( )
H1 = (a ) 2x 2y 0 .
Neither x nor y is necessarily non-zero for all times. Due to the length constraint,
[1]
however, they are not simultaneously zero. By choosing M1 = (2x) when |x| > |y|
[1] [1]
and M1 = (2y) otherwise, we obtain a “well-conditioned” M1 .
[1]
Consider first the case |x| > |y|. Selecting F1 = (2x) implies that the differenti-
ated length constraint will be used to replace ẍ and ẋ, and we obtain
(4.2a) x2 + y 2 − L2 = 0
(4.2a′ ) 2xx′ + 2y ẏ = 0
(4.2a′′ ) 2xx′′ + 2x′2 + 2y ÿ + 2ẏ 2 = 0
(4.2b) mx′′ + (λ/L)x = 0
(4.2c) mÿ + (λ/L)y + mg = 0.
[1]
When |x| ≤ |y|, we select F1 = (2y). We then obtain the index 1 problem
(4.3a) x2 + y 2 − L2 = 0
(4.3a′ ) 2xẋ + 2yy ′ = 0
(4.3a′′ ) 2xẍ + 2ẋ2 + 2yy ′′ + 2y ′2 = 0
(4.3b) mẍ + (λ/L)x = 0
′′
(4.3c) my + (λ/L)y + mg = 0.
Changing the decision whether the equations (4.1a′′ ) and (4.1a′ ) should be used to
replace ẍ and ẋ or ÿ and ẏ, can be interpreted as a pivoting operation, and we
INDEX REDUCTION USING DUMMY DERIVATIVES 11
refer to it at as dummy pivoting. From this example, it can be seen that dummy
pivoting corresponds to a (locally necessary) change of mathematical models, cf. [15].
Switching from one model to the other is a simple operation, since in the augmented
index 1 problem we solve also for the dummy derivatives. The initial values necessary
to continue the numerical integration with the new model are readily available, and
the need for restarting the integration can usually be avoided.
A very simple first approach to handle dummy pivoting is to make a selection
at the start and use the resulting equations as long as the numerical DAE solver is
able to function properly, and pivot only when necessary. In general, however, it is
[j]
preferable to pivot so that the matrices Mi remain well-conditioned. It is therefore
desirable to have a rather close integration of the index reduction method and the
numerical DAE solver. This suggests that index reduction computations should be
incorporated into the solver, rather than being considered as a separate preprocessing
tool.
Example 4—Lagrangian equations of motion. The Lagrangian equations
of the first kind for a constrained mechanical system are, written as a second order
equation,
(4.4a) M (p)p̈ = F (p, ṗ) − GT (p)λ
(4.4b) 0 = g(p),
where p is an n-vector representing the system’s position, M is the nonsingular mass
matrix, F applied forces, and λ is the m-vector of Lagrange multipliers associated with
the m constraints (4.4b), assumed to have a full-rank constraint matrix G(p) = ∂g/∂p.
Thus the system has n − m degrees of freedom, and the system of equations (4.4) is
index 3. Two differentiations of the constraint equation results in
(4.4a) M (p)p̈ = F (p, ṗ) − GT (p)λ
(4.4b) 0 = g(p)
(4.4b′ ) 0 = Gṗ
(4.4b′′ ) 0 = Ġṗ + Gp̈.
Here Ġ = G′ ṗ, where G′ is the Fréchet derivative of G with respect to p. We can
solve for the highest order derivatives p̈ and λ, since the regularity assumptions imply
that GM −1 GT is regular. Selecting dummy derivatives implies choosing m dummies
among the n variables ṗ, and m among p̈, using equations (4.4b′ ) and (4.4b′′ ). Then
we have a total of n + 3m equations, n + m original variables p and λ, and 2m dummy
derivatives (selected elements of ṗ and p̈). The application of dummy derivatives
to the Euler-Lagrange equations is similar to the method of “generalized coordinate
partitioning.”
It is also instructive to apply the index reduction algorithm to the corresponding
first order system
(4.5a) ṗ = v
(4.5b) M (p)v̇ = F (p, v) − GT (p)λ
(4.5c) 0 = g(p),
where the n-vector v represents velocity. Applying Pantelides’s algorithm now requires
also that (4.5a) is differentiated once, and as before, the resulting differentiated prob-
lem is second order. Apart from the same dummies as those selected in (4.4), one will
12 S. E. MATTSSON AND G. SÖDERLIND
have to select n dummy derivatives v ′ = v̇. However, this variable merely accounts
for a trivial action of substitution and can immediately be eliminated. If a first order
system is required, it can easily be obtained after a few more similar operations; it is
identical to the first order system that can be obtained from (4.4).
Let us finally comment the singular case. Then, if the index of the differentiated
problem is greater than one, it is, at least in principle, possible to derive an equation
in which none of the unknown highest order derivatives appears. However, since we
need the whole sequence of differentiated equations, we shall manipulate the origi-
nal undifferentiated system so that the corresponding differentiated problem has the
desired structure with a nonsingular Jacobian.
Example 5—A singular system. Consider the following problem, [4], p. 23:
(4.6a) ẋ + tẏ = f1
(4.6b) x + ty = f2 .
(4.6a) ẋ + tẏ = f1
(4.6b′ ) ẋ + tẏ + y = f˙2 .
(4.7a) y = f˙2 − f1
(4.7b) x + ty = f2
as the new original problem. The modified problem is then simpler than the original
problem. In this particular case, it is algebraic, hence index 1, and can be solved
immediately.
The example above demonstrates a more difficult type of index reduction. In
contrast to the operations performed by the index reduction algorithm of Section 3,
problems having a rank-deficient Jacobian with respect to the highest order derivatives
will also require that equations are solved symbolically or semi-numerically. As the
example indicates, this typically entails using an elimination process of Gaussian type.
The index reduction algorithm of Section 3 will reveal if such a process is necessary.
However, we consider developing a full treatment of singular systems beyond the scope
of this paper.
5. Numerical Results. We shall now present numerical results for the pen-
dulum problem of Example 3 using the well-known solver DASSL. The numerical
solution for various formulations is discussed in [4], pp. 150–157. There, the evolution
of the pendulum equations is computed for a short time interval covering less than a
full period. Here we are concerned with the stability and numerical drift of constraints
and invariants, thus requiring simulations long enough to reveal secular effects; in all
cases the problem was run for well over a hundred periods. In all the numerical results
we use g = 1, m = 1 and L = 1.
INDEX REDUCTION USING DUMMY DERIVATIVES 13
In the discussion below, we follow the convention in [4] that the positive direction
of the gravitational force is opposite to the direction of the y-axis in the Cartesian
coordinate system. Note, however, that for their numerical results to be correct, op.
cit. pp. 155–157, we must assume that they have accidentally switched the direction
of the y-axis, cf. the obvious misprint in the state-space equation (6.2.5) on p. 151.
The state-space form of the planar pendulum equations is
g
(5.1) φ̈ + sin φ = 0
L
where x = L sin φ and y = −L cos φ. This model will be used as a reference model
for comparing the numerical results.
Besides studying how well the length constraint is preserved in the numerical
solutions, it is also of great interest to study the invariant total energy, E, which is
the sum of the kinetic energy and the potential energy. The rest state (φ = 0, φ̇ = 0)
is taken as the reference level with E = 0. This gives
m 2 2
E= L φ̇ + mgL(1 − cos φ).
2
A numerical solution should preserve the energy and keep E constant within numerical
accuracy. The expression for the energy can also be used to calculate the amplitude
φM of the oscillations.
We shall study two cases:
1. Small oscillations with φ(0) = 0.1 and φ̇(0) = 0.0 which gives the amplitude
φM = 0.1, period time T ≈ 6.29 and energy E = 1 − cos 0.1.
2. Large oscillations with φ(0) = π/2 and φ̇(0) = −1.0 as used in [4], which gives
an amplitude φM = 2π/3, period time T ≈ 8.63 and energy E = 1.5.
The first case is almost linear, whereas the second, with its large amplitude, is strongly
nonlinear and will require four dummy pivotings per full period. Whenever DAEs are
solved below, the initial conditions are taken to be consistent.
The two problems will be solved for the following formulations:
a. State-space reference model (5.1).
b. Differentiated index 1 model (4.1a′′ , b, c).
c. Stabilized constraint index 2 model [4], pp. 154–155.
d. Dummy derivative index 1 model (4.3), case 1, and (4.2–3) for case 2.
In all cases the problems were run for 1000 units of time corresponding to ap-
proximately 159 periods in case 1, and 116 periods in case 2. Tolerance levels were
kept sharp; the parameters ATOL and RTOL in DASSL were taken to be 10−9 for
all components of the solution except for the model c, which cannot be solved with
such requirements unless a looser tolerance is used for the two Lagrange multipliers λ
and µ. These tolerances were set to 10−2 , which effectively corresponds to excluding
these algebraic variables from the error tests, cp. [4], p. 156. Numerical Jacobians
were used.
The results for case 1 are displayed in Table 1. Apart from run statistics, we show
the deviation ∆E in total energy at the end of the integration interval, and similarly
the deviation ∆L in the length constraint. E-drift and L-drift refer to the drifts in E
and L, respectively. Note that the length constraint is explicitly present in models c
and d, but it is only an implicit invariant in model b. Thus, model b shows a drift,
and the deviation in the table refers to the error at the end of the integration interval.
For models c and d there is no drift and the error corresponds to typical deviations
throughout the integration. The energy, on the other hand, is an implicit invariant in
14 S. E. MATTSSON AND G. SÖDERLIND
Table 5.1
Numerical results for small oscillations (case 1) with models a–d.
Table 5.2
Numerical results for large oscillations (case 2) with models a–d.
all four models, resulting in a quite regular drift. For model b the drift is quadratic
in t, whereas the other models exhibit a linear drift. It is to be noted that the drift
is less pronounced for models c and d than for the state-space model a.
Results for case 2 are shown in Table 2. Here model d yields the most accurate
results, with an energy drift approximately four times smaller than for a, and 25 times
smaller than for model c. From the efficiency point of view, the state-space model
a is clearly preferable. However, given the rather significant difference in accuracy
between models c and d, the modest performance disadvantage of model d seems to
be of minor importance.
The results reported here are typical for the pendulum problem. A few other
problems from applications in mechanics and electrical engineering have also been
tried with good results using the dummy derivative technique.
6. Implementation Aspects and Conclusions. When the proposed index
reduction technique is to be implemented there are two main possibilities. One could
either perform all operations completely using symbolic computations in a preprocess-
ing step, or one could employ automatic differentiation, [13], [18], to obtain a close
integration of the index reduction process and the subsequent numerical treatment.
The latter approach seems particularly attractive, since in the augmented system,
function evaluations corresponding to differentiated equations must be performed us-
ing analytical derivatives that must be continually reevaluated. In addition, the sub-
sequent numerical solution could take advantage of analytical Jacobians. The choice
of differentiation technique is probably the most important decision in an implemen-
tation of the reduction method. The most important difference between symbolic and
automatic differentiation is that the latter can be applied directly to the subprograms
defining the DAE. Thus, neither a symbolic representation of the equations, nor a
code generation step is needed, making automatic differentation much more favorable
in our context.
[j]
A second important issue is the choice of the matrices Mi by selecting m linearly
[j]
independent columns from Hi . We should aim for well-conditioned matrices, and
INDEX REDUCTION USING DUMMY DERIVATIVES 15
hence the columns should be selected carefully. An obvious approach is to use a Gram-
Schmidt procedure to successively find a set of “maximally” linearly independent
columns. However, this approach will depend on the choice of the initial column
selected, and it will in general not be possible to find the optimal set.
As far as the practical issues of dummy pivoting is concerned, it is required
[j]
that one monitors the condition of the matrices Mi . Dummy pivoting corresponds
[j] [j]
to replacing one or more columns of Mi by new columns from Hi . It is as yet
unclear how this can be carried out inexpensively in large systems. Most likely, it is
more demanding to continually monitor the condition than to actually perform the
[j]
pivoting operation. It should be noted that well-conditioned matrices Mi are needed
to ensure that the selected dummy derivatives cancel the exact amount of dynamics
in the augmented DAE system, leaving only what corresponds to the dynamics of a
state-space form. If the selection is rank-deficient, there is a risk that the numerical
integration method gets stuck in a singular point. Such effects can readily be seen
e.g. in the pendulum problem; if one inappropriately uses (4.2) for small amplitudes
(i.e. when |x| ≪ |y|) it may very well happen that the integration method cannot get
past x = 0.
In many cases of practical interest, one will not need a complete automatic re-
duction procedure, but only the handling of dummy derivatives. Thus, the structure
(4.4) is common to all systems described by the Lagrangian equations of the first kind.
Therefore, it is sufficient in such applications to select dummy derivatives properly.
The merits of the index reduction technique proposed in this paper lie in the fact
that the dummy derivatives are identified and excluded from discretization. As a
result, one avoids “over-discretization” of the DAE, and the differentiations inherent
in a high-index DAE are carried out analytically rather than numerically. Since the
algebraic equations are still present in their original form, there will be no numerical
drift away from the solution manifold of the DAE, thus eliminating the need for
constraint stabilization. As for invariants that are implicit in both the DAE and the
state-space ODE (e.g. energy), the drift is very similar in both formulations. To sum
up, the numerical experiments show that, by using the dummy derivative formulation,
an accuracy comparable to that of solving a state-space formulation of the problem
is obtained. Thus, the technique may be considered a viable alternative not only to
constraint stabilization but even to state-space formulations whenever the latter are
difficult to obtain.
REFERENCES
[1] T. Alishenas, Zur numerischen Behandlung, Stabilisierung durch Projektion und Modellierung
mechanischer Systeme mit Nebenbedingungen und Invarianten, Royal Inst. of Tech., Stock-
holm, Sweden, 1992.
[2] A. Barrlund and B. Kågström, Analytical and numerical solutions to higher index linear
variable coefficient DAE systems, J. Comp. Appl. Math., 31 (1990), pp. 305–330.
[3] J. Baumgarte, Stabilization of constraints and integrals of motion in dynamical systems,
Comp. Meth. in Appl. Mech., 1 (1972), pp. 1–16.
[4] K. Brenan, S. Campbell, and L. Petzold, Numerical Solution of Initial Value Problems in
Differential-Algebraic Equations, North-Holland, 1989.
16 S. E. MATTSSON AND G. SÖDERLIND
[5] S. Campbell, The numerical solution of higher index linear time varying singular systems of
differential equations, SIAM J. Sci. Stat. Comp., 6 (1985), pp. 334–348.
[6] , A computational method for general higher index nonlinear singular systems of differ-
ential equations, IMACS Trans. on Scientific Comp., 1.2 (1988), pp. 555–560.
[7] I. Duff, A. Erisman, and J. Reid, Direct Methods for Sparse Matrices, Clarendon Press,
Oxford, 1986.
[8] E. Eich, C. Führer, B. Leimkuhler, and S. Reich, Stabilization and projection methods for
multibody dynamics, research report A281, Institute of Mathematics, Helsinki University
of Technology, Espoo, Finland, 1990.
[9] C. Führer and B. Leimkuhler, A new class of generalized inverses for the solution of dis-
cretized Euler-Lagrange equations, in Real-time integration methods for mechanical system
simulation, E. Haug and R. Deyo, eds., Springer, 1990, pp. 143–154.
[10] , Numerical solution of differential-algebraic equations for constrained mechanical mo-
tion, Numerische Mathematik, 59 (1991), pp. 55–69.
[11] C. Gear, Differential-algebraic equations, indices, and integral algebraic equations, SIAM J.
Num. Anal., 27 (1990), pp. 1527–1534.
[12] C. Gear, G. Gupta, and B. Leimkuhler, Automatic integration of the Euler-Lagrange equa-
tions with constraints, J Comp. Appl. Math., 12–13 (1985), pp. 77–90.
[13] A. Griewank, D. Juedes, and J. Srinivasan, Adol-C—a package for the automatic differenti-
ation of algorithms written in C/C++, tech. rep., Argonne National Laboratory, Argonne,
IL 60439, 1990.
[14] E. Hairer, C. Lubich, and M. Roche, The Numerical Solution of Differential-Algebraic
Systems by Runge-Kutta Methods, Springer, 1989.
[15] B. Leimkuhler, Some notes on pertubations of differential-algebraic equations, research report
A266, Institute of Mathematics, Helsinki University of Technology, Espoo, Finland, 1989.
[16] S. Mattsson and G. Söderlind, A new technique for the solution of high index differential-
algebraic equations, in The 1990 Conference on the Numerical Solution of Ordinary Differ-
ential Equations, 1990.
[17] C. Pantelides, The consistent initialization of differential-algebraic systems, SIAM J. Sci.
Stat. Comput., 9 (1988), pp. 213–231.
[18] L. Rall, Automatic Differentiation—Techniques and Applications, Springer, 1981.