Parallel Shooting With Error Estimate For Increasing The Accuracy
Parallel Shooting With Error Estimate For Increasing The Accuracy
www.elsevier.nl/locate/cam
Abstract
The paper is concerned with two-point boundary value problems for ordinary di erential equations and some estimates
of the global discretization error produced in the numerical solution by shooting methods. These error estimates, proposed
in some previous papers, are shown to be useful for correcting the numerical results as they do not require much additional
e ort in computations both for linear and nonlinear problems. Special attention is devoted to the use of some new boundary
value methods. Applications to known test problems are developed. c 2000 Elsevier Science B.V. All rights reserved.
Keywords: Ordinary di erential equations; Boundary value problems; Shooting method; Error estimation
1. Introduction
The shooting method, with its modi cations [2, Chapter 4], is widely employed for the numerical
solution of the boundary value problem (BVP)
y0 (x) = f(x; y(x)); a6x6b; (1)
(
Work supported by the italian MURST.
∗
Corresponding author.
E-mail address: [email protected] (G. Gheri)
0377-0427/00/$ - see front matter c 2000 Elsevier Science B.V. All rights reserved.
PII: S 0 3 7 7 - 0 4 2 7 ( 9 9 ) 0 0 1 7 6 - 4
214 G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227
The corresponding linear problem with linear boundary conditions is usually considered in the
form
y0 (x) = K(x)y(x) + g(x); a6x6b; (3)
Theorem 2.1. Let the function f(x; y(x)) : S → Rm satisfy a Lipschitz condition with respect to
y on S; and let the Jacobian fy exist on S and be continuous and bounded there; suppose that;
for some s = ; the solutions of the IVPs (8) and (21) are approximated by a pth order scheme;
i.e.; e(tn ) = O(hp ); and let − s∗ = O(hp ); then; for any approximation en of e(tn ); the following
estimation for the GDE in the parallel shooting holds:
En = en − ()eN ; (24)
where () is a matrix whose form is given by (30) or (31) depending on whether the problem is
nonlinear or linear; respectively.
Proof. Starting from the nonlinear problem, we rewrite the matrix (20) in the form
R(s) = P(s) + Q(s)Z̃(1; s); (25)
where
P(s) = diag(A(M ) ; I; : : : ; I );
0 B(M )
−I 0
Q(s) =
··· ···
−I 0
and
Z̃(t; s) = diag(Z1 (t; s1 ); : : : ; ZM (t; sM )):
Note that the existence of Zj (t; sj ); j = 1; 2; : : : ; M; is assured by the continuity and boundedness of
the Jacobian fy . Assume that the IVPs, whose solutions appear in R(s) and r̃(s; ỹ(1; s)), are solved
for s = , with a pth order scheme with mesh size h. Then we write the discrete analogue of (25)
Rh () = Ph () + Qh ()Z̃ N; ; (26)
where the approximation Z̃ n; to Z̃(tn ; ) has been introduced. From [9, Theorem 2:2], the following
equality holds:
E(tn ) = e(tn ) − Z̃ n; R−1
h ()[Qh ()e(1) − r̃(; ỹ N; )] + (27)
where limh→0 kk=hp = 0 for any vector norm. Note that if ỹ(t; s∗ ) is an isolated solution of (8)
the matrix R(s), for s = s∗ ≡ ỹ(0; s∗ ), is nonsingular (see [7, Section 1:5]). This enables to solve
iteratively the system (9) using Newton method
R(s(i) )(s(i+1) − s(i) ) = −r̃(s(i) ; ỹ(1; s(i) )); i = 0; 1; 2; : : : :
This equation for suciently small h can be substituted by its discrete approximation
Rh (s(i) )(s(i+1) − s(i) ) = −r̃(s(i) ; ỹ N; s(i) ); i = 0; 1; 2; : : : ; (28)
where Rh (s(i) ) and ỹ N; s(i) approximate R(s(i) ) and ỹ(1; s(i) ), respectively. Using (28) and replacing
by s(i) equality (27) yields
E(tn ) = e(tn ) − Z̃ n; s(i) R−1 (i) (i)
h (s )Qh (s )e(1) − Z̃ n; s(i) (s
(i+1)
− s(i) ) + : (29)
218 G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227
Because of the convergence of the iterations (28) the equality (29), for any suciently large i,
setting s(i) = , leads to estimate (24) provided
() = Z̃ n; R−1
h ()Qh (): (30)
In the linear case decompositions analogous to (25) and (26) yield, respectively,
R(s) = P + QŨ (1); Rh (s) = P + QŨ N ;
where Ũ N is the discrete approximation to Ũ (1) and Ũ (t) is de ned by (16). Recalling a result
stated in [9, Theorem 3:2], we have
E(tn ) = e(tn ) − Ũ n R−1 2p
h (s)Qe(1) + O(h ):
According to (24), the estimation of E(tn ) is reduced to the estimation of e(tn ), that, in principle,
can be carried out by any known method (see for example [14]).
A general procedure is to try to estimate the leading term of the asymptotic expression of the
global discretization error e(tn ).
In fact it is known that (see [6, Chapters 3 and 5; 13, Theorem 1, p. 322]) for a zero-stable
p-th-order k-step method (k¿1) applied to the IVP
z 0 = f(t; z); z(t0 ) = z0 ; (32)
if the initial values are accurate O(hp ), the global error e(tn ) satis es
e(tn ) = (tn ) + O(hp+1 ); (33)
where (t) is the solution of the problem
0 (t) = fz (t; z)(t) − hp (t); (t0 ) = 0: (34)
The function (t), called the principal error function, depends on the discretization method and
is easily computed, provided a suitable estimate of the derivative z (p+1) (t) is available.
However, when the problem (32) corresponds to the general cases (8) or (13), the main diculty
of integrating the principal error equation (34) is just to correctly estimate z (p+1) (t).
A known method to avoid a direct estimate of z (p+1) (t) consists of applying to (32) a predictor–
corrector scheme. So it turns out that the global error e(tn ) can be estimated by the Milne–Gautschi
procedure, obtained as an extension of Milne’s device for estimating the local truncation error, pro-
vided the predictor and corrector formulas have the same characteristic polynomial (see [4, Chapter
6, Section 3:5]).
In the case of linear problem (13) it may be advantageous to employ a BVM (see [1,8,11]) for
the numerical integration. Actually in this case e(tn ) can be approximated by solving an algebraic
linear system.
G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227 219
Let
r
X r
X
ij zi =h ij fi ; j = 1; : : : ; k1 − 1;
i=0 i=0
k
X k
X
i zj+i−k1 = h i fj+i−k1 ; j = k1 ; : : : ; N − k2 ; (35)
i=0 i=0
r
X r
X
ij zN +i−r = h ij fN +i−r ; j = N − k2 + 1; : : : ; N;
i=0 i=0
be a BVM used with (k1 ; k2 ) boundary conditions, where k1 + k2 = k; r6k and k ¡ N: In order
to approximate the solution of the general IVP (32), we use the notation h = (tN − t0 )=N; fi =
f(ti ; zi ); ti = t0 + ih; i = 1; : : : ; N; and suppose that all the linear multistep formulas (35) are xed-h
stable of order p [3, p. 100]. Such a BVM will be said a pth order BVM.
Let the IVP (32) be linear, of the form
similar to the problem (13). By using the BVM (35) one approximates the exact values z(ti ) by the
solution zi ; i = 1; : : : ; N; of the linear system
G(h)z = b; (37)
where z = (z1T ; : : : ; zNT )T and the N -vector b contains the initial values and the nonhomogeneous terms
of the IVP (36). G(h) is an Nm × Nm matrix that can be written as
where ⊗ denotes the right Kronecker product, I is the identity matrix of order m and Dk =
diag(K(t1 ); : : : ; K(tN )) is formed by the m × m matrices K(t1 ); : : : ; K(tN ): The N × N matrices G
and G are given by
11 ··· r1
··· ··· ···
1; k −1 ···
1 r; k1 −1
··· ··· ···
1 k
0 ··· ··· ··· ··· k
G =
.. ..
. .
0 ··· ··· ··· ··· k
··· ···
0; N −k2 +1 r; N −k2 +1
··· ··· ··· ···
0N ··· ··· rN
220 G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227
and
11 ··· r1
··· ··· ···
1; k −1 ···
1 r; k1 −1
··· ··· ···
1 k
0 ··· ··· ··· ··· k
G =
.. .. :
. .
0 ··· ··· ··· ··· k
··· ···
0; N −k2 +1 r; N −k2 +1
··· ··· ··· ···
0N ··· ··· rN
From the BVM’s convergence theory (see [3, Chapter 4]) we can supposedly consider BVMs (35)
such that the corresponding matrices G(h) are nonsingular for each h of a suitable neighbourhood
of zero. Then a unique solution of (37) exists.
The local truncation errors associated with the multistep formulas of the BVM (35) can be abridged
as an Nm-vector depending on the error constants and derivatives z (p+1) (t) as follows:
∗
= Cp+1 hp+1 z (p+1) + O(hp+2 ); (39)
where
Cp+1 = C ⊗ I; (40)
with
N −k+1 times
(1) (k1 −1) z }| {
(N −k2 +1) (N )
C = diag(cp+1 ; : : : ; cp+1 ; cp+1 ; : : : ; cp+1 ; cp+1 ; : : : ; cp+1 );
and
∗
z (p+1) = (z (p+1) (t1 )T ; : : : ; z (p+1) (tN )T )T :
If in (37) we replace z by the exact solution z ∗ = (z(t1 )T ; : : : ; z(tN )T )T of the IVP, we obtain
G(h)z ∗ = b + : (41)
By subtracting (37) from (41) we have
G(h)e = − (42)
with
e = (e(t1 )T ; : : : ; e(tN )T )T
and e(ti ) = zi − z(ti ); i = 1; : : : ; N: Nevertheless, because of the dependence on z (p+1) (t), the vector
is not easy to compute. In order to avoid this diculty it is helpful to resort to the following
theorem.
Theorem 3.1. Let V and V̂ be two di erent BVMs of the same order p and the same number of
linear multistep formulas; using (k1 ; k2 ) and (k̂ 1 ; k̂ 2 ) boundary conditions; respectively.
G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227 221
Let Ĝ(h); Ĝ ; Ĉ; Ĉp+1 ; ˆ and b̂ be de ned for V̂ like G(h); G ; C; Cp+1 ; and b for V; while
z; ẑ indicate the solutions of the corresponding linear systems like (37).
De ne the matrices
F(h) = Ĝ(h)−1 Ĉp+1 − G(h)−1 Cp+1 ; (43)
and
−1
F0 = Ĝ Ĉ − G −1 C:
Then; if F0 is nonsingular; we have
∗
hp+1 z (p+1) = F(h)−1 (z − ẑ) + O(hp+2 ); (44)
for all h ∈ [0; h∗ ) and for some h∗ ¿ 0.
Proof. Consider h1 ¿ 0 such that for h ∈ [0; h1 ) the matrices G(h) and Ĝ(h) are nonsingular. From
(42) and Ĝ(h)ê = −ˆ with ê = ((ẑ 1 − z(t1 ))T ; : : : ; (ẑ N − z(tN ))T )T , we have
e = −G(h)−1 ; ê = −Ĝ(h)−1 :
ˆ
By subtraction, owing to the (39) and the analogue for ,
ˆ it follows that
z − ẑ = Ĝ(h)−1 T̂ (h) − G(h)−1 T (h); (45)
where
∗ ∗
T̂ (h) = Ĉp+1 hp+1 z (p+1) + O(hp+2 ); T (h) = Cp+1 hp+1 z (p+1) + O(hp+2 ):
From (45), because of (43), it follows that
∗
z − ẑ = F(h)hp+1 z (p+1) + O(hp+2 );
which leads to (44), provided the nonsingularity of F(h) is proved.
To this purpose we observe that (38), by using the Banach lemma, gives rise to
−1
G(h)−1 = G −1 ⊗ I + O(h) and Ĝ(h)−1 = Ĝ ⊗ I + O(h):
By substituting in (43) and using (40) and its analogue for Ĉp+1 , one obtains
−1
F(h) = (Ĝ ⊗ I )(Ĉ ⊗ I ) − (G −1 ⊗ I )(C ⊗ I ) + O(h) = F0 ⊗ I + O(h):
If for the considered BVMs F0 is nonsingular so is F(0) and, by continuity, F(h) is nonsingular for
all h ∈ [0; h2 ) and a suitable h2 ¿ 0.
Thus relation (44) is proved for h∗ = min{h1 ; h2 }.
Concerned with the general procedure for computing the global error e(tn ) de ned by the (33)
and (34) the following remark can be made as a generalization of Theorem 5:1 stated in [5].
Remark 3.2. The principal error equation connected with a linear IVP solved with a pth order linear
multistep method is equivalent, except for O(hp+2 ) terms, to the error system associated with the
same IVP solved with a pth order BVM.
222 G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227
In fact the principal error function associated with the linear multistep formulas (35) is the vector
!
.X
r
(j)
cp+1 z (p+1) (t); j = 1; : : : ; k1 − 1;
ij
i=0
!
k
X
j (t) = cp+1 i z (p+1) (t); j = k1 ; : : : ; N − k2 ; (46)
i=0
!
.X r
( j)
cp+1 z (p+1) (t); j = N − k2 + 1; : : : ; N:
ij
i=0
The discretization of the IVP (34) by the BVM (35) yields the linear system
G(h) = − ; (47)
with = (1T ; : : : ; NT )T ; i ' (ti ); i = 1; : : : ; N; and = ( T1 ; : : : ; T T
N) , where
r
X
h p+1
ij j (ti ); j = 1; : : : ; k1 − 1;
i=0
k
X
j = hp+1 i j (ti+j−k1 ); j = k1 ; : : : ; N − k2 ; : (48)
i=0
Xr
hp+1
ij j (tN +i−r ); j = N − k2 + 1; : : : ; N:
i=0
Observing that j (tn ) = j (tj ) + O(h), since |n − j| ¡ k, the vector coincides, except for O(hp+2 )
terms, with the vector of the error system (42).
4. Numerical experiments
For the linear case we have considered the following singular perturbation problem (see [3, p.
241]):
0 0 1
y (x) = y(x); −16x61;
0 −x=
(49)
0 0 1 0 1
y(−1) + y(1) = ;
1 0 0 0 0
with the real parameter ∈ (0; 1) and with a layer at x = 0 when → 0.
According to the Theorem 3.1 we have selected two fourth-order BVMs. Namely the Extended
Trapezoidal Rule (ETR) with (2; 1) boundary conditions [3, p. 164]
1
−z0 + z1 = 24
h(9f0 + 19f1 − 5f2 + f3 );
1
−zj−1 + zj = 24
h(−fj−2 + 13fj−1 + 13fj − fj+1 ); j = 2; : : : ; N − 1; (50)
1
−zN −1 + zN = 24
h(fN −3 − 5fN −2 + 19fN −1 + 9fN );
G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227 223
and the error constants c5(1) = −(19=720); c5 = 11=720; c5(N ) = −(19=720), and the ETR 2 with (2; 1)
boundary conditions [3, p. 169]
1
24
(−17z0 + 9z1 + 9z2 − z3 ) = 14 h(f0 + 3f1 );
1
12
(−zj−2 − 9zj−1 + 9zj + zj+1 ) = 12 h(fj−1 + fj ); j = 2; : : : ; N − 1; (51)
1
(z
24 N −3
− 9zN −2 − 9zN −1 + 17zN ) = 14 h(3fN −1 + fN );
and the error constants c5(1) = − 801 ; c5 = 120 1
; c5(N ) = − 801 .
A satisfactory solution has been obtained by assuming a constant steplength h = (b − a)=N and
M = N=NS ; for some integer NS : The shooting subintervals are also of the same size, given by
[xji−1 ; xji ]; i = 1; 2; : : : ; M , with ji = iNS ; i = 0; 1; : : : ; M . Therefore the mesh points are x n = x0 +
nh; n = 0; 1; : : : ; N , and the shooting nodes are x0 ; xNS ; x2NS ; : : : ; xN .
We have employed the BVMs (50) and(51) for integrating, in each of the M shooting intervals,
the IVPs (14) associated with the test problem (49).
The global discretization error e(tn ) has been estimated by solving the linear system (42) where
∗
the term hp+1 z (p+1) in the vector has been approximated according to (44). The estimate (24)
– (31) enables to obtain an improved approximation to the solution of the linear BVP, given by
yn∗ = yn − En having set, for simplicity, yn = ỹ n; .
In order to describe the true error of the computed solution yn we introduce the error vector n(t)
whose components, for each n, are
(yn − y(x n ))i
(n(t) )i = ; i = 1; : : : ; m:
max{1; |yi (x n )|}
Analogously with n∗ we indicate a similar error vector for the improved solution yn∗ , while, setting
for the components of the computed error
(En )i
(n(c) )i = ; i = 1; : : : ; m;
max{1; |yi (x n )|}
where En is estimate (24), n∗ = n(t) − n(c) results. The norms reported in the tables are
k(t) k = max kn(t) k; k(c) k = max kn(c) k;
16n6N 16n6N
In the Table 1 we have quoted the results concerning problem (49) for some values of h; M; .
For the nonlinear case we have considered the following test problem, equivalent to a second-order
problem due to Troesch (see also [15, p. 481]),
0 y2 (x)
y (x) = ; 06x61;
sinh(y1 (x))
(52)
1 0 0 0 0
y(0) + y(1) = ;
0 0 1 0 1
being a real parameter. For approximating the solution of problem (52) integration of the related
problems (6) and (21) has been carried out with the following set of Adams formulas of order p = 3
used as IVM in PECE mode
224 G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227
Table 1
Problem (49)
Table 2
Problem (52)
1
zn+3 = zn+2 + 12
h(5fn − 16fn+1 + 23fn+2 );
(53)
1
zn+3 = zn+2 + 12
h(−fn+1 + 8fn+2 + 5fn+3 ):
The local error constants of (53) are c4 = 38 and c4∗ = − 241 respectively.
The discretization step h and the length of the shooting subintervals have been taken constant, as
in the linear case, while the estimates En used for improving the numerical solution are provided by
(24) – (30) where the estimates en of the global discretization error for the corresponding IVM have
been computed using the Milne–Gautschi procedure.
In the Table 2 the results concerning the problem (52) for some values of the parameter, the
stepsize h and M are reported.
Finally we consider the following generalization of a problem due to Pereyra [12]
0 1
y0 (x) = y(x); 06x61;
−1
(54)
1 0 0 0 1
y(0) + y(1) = ;
0 0 1 0 e−1
G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227 225
Table 3
Problem (54)
where is a real parameter. This problem is well conditioned and the straight application of an
appropriate BVM results in a linear system with a moderate condition number, while if we use an
IVP, in connection with the shooting procedure, the initial errors are exponentially ampli ed.
Nevertheless we observe that this drawback can be o set by a suitable reduction of the length
of the subintervals and a corresponding increase of the number M , namely by using a linear k-step
formula as BVM in each subinterval with the choice M = N=k. Moreover the computation is not
particularly expensive since the corresponding linear systems have a small size. Furthermore, for
this problem, we need not to use the Theorem 3.1 because the matrix K is constant and the values
z (p+1) (ti ) can be easily approximated by K p+1 zi terms.
In Table 3 we have quoted the results obtained using formulas (50) for some values of h
and .
5. Concluding remarks
The numerical results reported in the tables above con rm our approach to have some possible
merit as it appears by the comparison of the values of k∗ k and k(t) k: The method we have presented
can be included in the class of acceleration techniques for improving the accuracy of a given basic
method. Two of such techniques widely used are the extrapolation and deferred corrections (see
[2, Chapter 5]). For the problems (49) and (52) we have tried to use both these techniques, in
connection with BVMs, but, for the present implementation, we did not achieve particular advantages.
For example the global error can be estimated by the extrapolation method connected with a BVM
as basic method (see [3, p. 253]). Nevertheless, in the problem (49) solved with the ETR formulas
(50), for small values of the parameter, the application of the extrapolation method with two
di erent meshes having steps h and h=2 produces very close approximated values of the solution so
226 G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227
Table 4
Problem (52)
that the extrapolation procedure does not seem practicable. Actually, with = 10−7 and h = 0:01 we
have k(t) k = 0:0412 while with h = 0:005 we obtain k(t) k = 0:0400.
As the deferred corrections method is eciently used for the numerical solution of nonlinear
BVPs, we have applied this method to the problem (52) with = 9, using the trapezoidal rule as
basic method and a cubic interpolation formula for the local truncation error [2, p. 236]. The same
problem has been solved by the the shooting method using (53) in PECE mode with M = N=4. In
all the involved nonlinear systems we have employed the standard Newton method, starting from
zero initial guesses and according to the MATLAB-5 implementation procedures.
We have quoted in the Table 4 the maximum accuracy k∗ kdef obtained with the deferred cor-
rections compared with the accuracy k(t) kshoot obtained by the parallel shooting without further
correction. The ratio of the elapsed CPU-time for deferred corrections and parallel shooting are also
displayed. Though we do not claim to “compare” the two methods broadly, the results, for the se-
lected problem, seem to indicate some convenience in using parallel shooting as soon as the number
of the mesh-points N becomes greater than 2000.
References
[1] P. Amodio, F. Mazzia, D. Trigiante, Stability of some boundary value methods for the solution of initial value
problems, Bit 33 (1993) 434–451.
[2] U. Ascher, R. Mattheij, R. Russel, Numerical Solution of Boundary Value Problems for Ordinary Di erential
Equations, Prentice-Hall, Englewood Cli s, NJ, 1988.
[3] L. Brugnano, D. Trigiante, Solving Di erential Problems by Multistep Initial and Boundary Value Methods, Gordon
& Breach, Amsterdam, 1998.
[4] W. Gautschi, Numerical Analysis — An Introduction, Birkhauser Boston, Basel, Berlin, 1997.
[5] P. Ghelardoni, G. Gheri, P. Marzulli, Error estimates for parallel shooting using initial or boundary value methods,
Appl. Numer. Math. 18 (1995) 127–139.
[6] P. Henrici, Discrete Variable Methods in Ordinary Di erential Equations, Wiley, New York, 1962.
[7] H.B. Keller, Numerical Solution of Two-Point Boundary Value Problems, SIAM Regional Conference Series in
Applied Mathematics, vol. 24, SIAM, Philadelphia, PA, 1976.
[8] L. Lopez, D. Trigiante, Boundary value methods and BV-stability in the solution of initial value problems, Appl.
Numer. Math. 11 (1993) 225–239.
[9] P. Marzulli, Global error estimates for the standard parallel shooting method, J. Comput. Appl. Math. 34 (1991)
233–241.
[10] P. Marzulli, G. Gheri, Estimation of the global discretization error in shooting methods for linear boundary value
problems, J. Comput. Appl. Math. 28 (1989) 309–314.
G. Gheri, P. Marzulli / Journal of Computational and Applied Mathematics 115 (2000) 213–227 227
[11] P. Marzulli, D. Trigiante, Stability and convergence of boundary value methods for solving ODE, J. Di erence
Equations Appl. 1 (1995) 45–55.
[12] V. Pereyra, Di erence solution of boundary value problems in ordinary di erential equations, in: G.H. Golub (Ed.),
Studies in Numerical Analysis, Series MAA Studies in Mathematics, vol. 24, The Mathematical Association of
America, 1984.
[13] L.S. Shampine, Numerical Solution of Ordinary Di erential Equations, Chapman & Hall, New York, 1994.
[14] R.D. Skeel, Thirteen ways to estimate global error, Numer. Math. 48 (1986) 1–20.
[15] J. Stoer, R. Bulirsh, Introduction to Numerical Analysis, Springer, Heidelberg, 1983.