A computational proplem encountered in a study
of the earth's normal modes
by FREEMAN GILBERT and GEORGE BACKUS
University of California
San
Di~go,
California
There are many. scientific disciplines where one is
faced with the prohlem of finding solutions to a system
of coupled, ordinary, linear, first-order differential equations
d
dx f,(x)
=
ft
L
C,j(x) fj(x); i
= 1, ... , n
(1)
i-I
given f,(a). For the normal modes of the Earth, n can be
as large as 20, and 2::;n::;6 is common (Alterman,
Jarosch and Pekeris, 1959). Finding solutions to (1) can
be time-consuming and expensive. In this paper we present a few, sometimes justifiable, tricks that we have
found useful. and economical in solving (1) wh~n C is
piecewise continuous.
We suppose that we have M one-step methods of
order m, m = 1, ... , M, for obtaining approximate solutions to the initial value problem (1). For a given relative truncationerror,E, the mth one-step method is associated with a step size, hm(E,x), that depends on x because the elements of the coefficient ~atrix, C ii (x), are
functions of x. We assume hi (x) < h2 (x) < ... <h m
(x), and that the computing time for using the mth onestep method ~increases with m less rapidly than does the
step-size.
'
Let
a
= Xc
< Xl < ... < XL
=
b
(2)
We seek to determine f,(xt)';.e = 1, ... , L, given f,(Xo),
using the 1"1 one-step methods as economically' as possible. Suppose we have f ,eXt) and seek f ,(Xt + 1). Let
h=.xt+l - Xt. Choose v ::; M and p,::; M such that
(3)
Let m be the larger of ('J,p,). Then the mth ·one-step
method can be used to determine f ,(Xl+l) with a relative
truncation error less than E. If h is too large to satisfy
(3) let hM = min (hm(xt), hm(xt+l) ) and use the Mth
one-step method to find f ,6rt+l); Yt+l = Xl + h M. At
this stage leth = XI+1 - Yt+l and try again to satisfy
(3). The method is summarized in the flow diagram of
Figure 1.
Given E, the acceptable relative truncation error, and
C(x), the coefficient matrix in (1), how do we estimate
hm(x) ; m = 1, ... , M; before solving (1)?
Letf, (x) = df, (x)/dx. Then, taking the scalar product'of (1) with itself,
(4)
Using the Schwartz in equality
Then
(6)
is an upper bound (probably a crude one) on the growth
of f(x). If we accept X(x) as the maximum rate of change
of f(x) an mth order one-step method has a relative
truncation error Em
For most one-step methods, particularly Runge-Kutta,
methods, 'Y is an expression too complicated to be of
much practical use. Moreover, 'Y is often near unity and
is traditionally disregarded in (7). We assume that Xis
large enough to permit us to set 'Y = 1 in (7). A = Xh.
1273
From the collection of the Computer History Museum (www.computerhistory.org)
1274
Fall Joint Computer Conference, 1968
ENTRY
Let
(11)
=
ai, + C i ; + 72! L
CikC k;
k
+ %! L L
CikC k( C(j
t
k
+
Then
It
L
(12)
Pijfj(Xl)
;=1
(Frazer, Duncan and Collar, 1960, p. 219.) The series
(11) can be converted into one of n ~erms by using the
Cayley-Hamilton theorem and the Lagrange-Sylvester
interpolation formula. Some examples from seismology
are given by Gilbert and Backus (1966). [In (2.10) and
(2.11) of the paper cited the integral is the argument of
the exponential function, as in (2.12).] Usingthefinite
series representation of P in (12) leads to the equivalentrepresentation
EXIT
FIGURE 1
n
If E is given, a value of h that satisfies
A "'+1 e A /
(m
+
1) ! =
f,(xt+l)
=
L
(8)
E
(13)
4>i; exp(hA;)
;=1
where the Aj are the eigenvalues of G and 4>i; are related
to the matrix of eigenvectors, e
will be a conservative estimate of the step-size.
Define
n
L
(C i ; - Ak~ij) e;k = 0
i-I
( - A(
km+
) /1) jk
A (HI)
m
= A(0)
m exp
m
= 0,1, ... (9)
"
n
i=1
i=1
L: 4>ii = L: eijJl; =
For E<1 (E«m + l)m+l/(m + I)! ) the limit
in (9) exists and is the solution to (8). A set of values of
Am for m = 1, ... ::.\1 can be calculated for a given E.
Then the variable step sizes are
hm(x) .=A m/A(X)
(10)
(14)
From (13) it appears that A = max IAkl is a plausible
upper bound.
When C is not constant (13) suggests that the repre. sentation
f i(X) ~
L 4>ii(X) exp JX
n
;=1
A less conservative, but intuitively plausible, upper
bound A can be found as follows. Suppose C does not
depend on x for x( ~ x ~ X(+l
f i(Xt)
Aj(Z) dz j
X(
<
x
<
Xl+l
(15)
Xl
may be a useful one if the 4>ij(xl) are computed from
Cii(Xl) and fi (Xl) according to (14), and if the Aj(Z) are
From the collection of the Computer History Museum (www.computerhistory.org)
Computational Problem Encountered in Study of Earth's Normal Modes
the eigenvalues of C(z). Substituting (15) into (1) yields
i;
1=1
exp fX Aj(Z) dz
X,e
-E.
[cf/ ,u(x) + CPij(X) Aj(X)
C;,(x) q,.;(x) ] = 0
(16)
A sufficient condition for (16) to be satisfied is
11.
cp'i;(X) =
L
[Cik(X) - OikA;(X)]cpkj(X)
(17)
1275
There are numerous eigenvalue problems that can be
put in the form (22). In many of these problems one or
more minors of Fare sought"It is not uncommon that
the elements of F are large and nearly equal, the result
being that some of the minors are calculated with
severe rounding error. This difficulty can be overcome
by calculating the minors of F directly, as follows:
An n x f. matrix (f. ? n) has N X L minors of order
m ~ f.where
N =
.
(f.)
( m11.) -- ml(n n!
- m)!' L -m
k=1
For x = X,e, cp'ij = 0 so, if we assume a power series representation for CPi;, it has the form
Therefore it is plausible to assume that cp' ij is small comto CPijAj in (16), and that cf>i~ changes siowly in (15). If
so, then A = maxIAk(x) I, x,e < X< X,e+l, is a reasonable
upper bound. It has been our experience that such a definition of Aworks quite well.
To illustrate the method we consider a simple but
characteristic example. Let
When the minors of order m are arranged in an N X L
array in some definite manner the array is called the
mth minor matrix of F [Gantmacher's (1959) compound matrix] which we denote by g:(m).
denote an mth order minor of F
;m=1
o
F idu F ilit
1
•••
F imim X
(23)
C(X) =
f2(x) = J' n(x)
(19)
xE
Then
A = .5/x
+
In2/x2
+ 1/4x
2
-
11
t
where E is the mth order alternating symbol. For example let n = 4,f. = 3,m = 2.
(20)
Given n = 10 and
f1 (1)
=
2.63061 512 (-10)
f 2 (1) = 2.61863 505 (-9)
(21)
we seek f i(X), x = 1.5(.5) 20. We take 1\11 = 8 and use
the one-step Runge-Kutta methods of [Shanks (1966)].
With E = 10-5 we find f i(20) = .1&648540. The correct
value is J1o (20) = .18648 256 giving a relative error of
1.524 ( -5) which is not much larger than e.
A generalization of (1) is the matrix equation
i = 1, .. ·,n;j = 1" "', f.
(24)
Since F is a solution to (22) we can differentiate (23)
and express the result in terms of C.
(22)
From the collection of the Computer History Museum (www.computerhistory.org)
1276 Fall Joint Computer Conference,. 1968
+ C'2" F (
h" ·im
-018
)
k 1k2'" k m
+0
(25)
44
-C14
0
-C 14
0
C13
C 12
-Cu
Cu
C22 + C44 C23
C 32
C S2
C 12
0
C22 + 0 33
048
-C42
+
C44
(28)
Thus
ff-'(m)
is a solution of
Notice that trace (e
d
dx
-ff-'
..
(m)
(x)
"
I:e
1:-1
lJ
(x) ff-'
kj
ik
(x)
i = 1, .. " N; j = 1, "', L
trace (l:?(m»)
=
In the special case m
=
(26)
e
where
(m) is a square coefficient matrix or order N.
For example let n = 4, t = 3, n = 2. Then N = 6,
L = 3. We arrange the second order minors of F in the
6 X 3 array
12
F
12
F
12
=
(2»
3trace (C) in general
(m)
em)
12
=
= det (F(x»
(29)
(30)
trace (C). Thus
d
dx det (F) = tr (C) det (F).
F
11
eCn)
trace (el
t = n s: (n) is a scalar
s:(n) (x)
and
(;::)
U
(31)
and
13
F
13
F
18
F
II
18
12
det (F(x) = det (F(xo» exp
f
x
tr (C(z»dz (32)
Xo
14
F
14
F
12
14
a relation known as Jacobi's identity.
For the normal modes of the Earth n = 6 for the
equations governing the elastic-gravitational oscillations. The dispersion relation is a third-order minor of
Fwitht = 3. ThusN = 20, L = 1.
Notice that the N eigenvalues of e (m) are the combinations of the n eigenvaltles of C taken m at a time, a
result related to Kronecker's theorem (Gantmacher,
1959,1,p.75)
As a trivial but revealing example take t = m = n =
2 and
F
23
11
(2)
s:
=
28
F
23
F
11
12
24
F
28
F
28
24
24
F
F
12
12
21
F{x)
14
F
F
12
Then
e
(!.
(2)
(2)
84
34
F
11
21
is th~ array
=
C11
C 32
C42
-C 31
-C.u
0
+C
22
C23
C24
C11 + C 88 C u
C48
C11
C21
0
0
C 21
C
-C'1
n
(27)
=
cosh x
sinh x
[ sinh x
cosh x
Now S:(2) (x) = det (F(x»
For (33)
=
J
(33)
cosh2x - sinh2 x = 1.
:J
(34)
If we integrate (22) to get F(x) for increasing x then, no
matter what precisicim we use in the calculation, eventually rOllIld-off error will cause det (F(x) ) to approach
From the collection of the Computer History Museum (www.computerhistory.org)
Computational Problem Encountered in Study of Earth's Normal Modes
zero. However, from (34) we have trace C = 0 so we
know from (26) and (31) that det (F(x) ) is a constant.
C L PEKERIS
F GILBERT G E BACKUS
Propagator matrices in elastic wave and vibration problems
ARCOLLAR
EBSHANKS
Solutions oj differential equations by evaluations oj junctions
Geophysics 31 326-332 1966
Proc Roy Soc A 25280-95 1959
RAFRAZER W JDUNCAN
Elementary matrices
Cambridge London 1960
F R GANTMACHER
Theory oj matrices
Translated from Russian by K A Hirsch 2 vols Chelsea New York
1959
REFERENCES
Z ALTERMAN H JAROSCH
Oscillations oj the earth
1277
Math Comp 21-38 1966
From the collection of the Computer History Museum (www.computerhistory.org)
From the collection of the Computer History Museum (www.computerhistory.org)
© Copyright 2026 Paperzz