DSpace at VNU: Parallel-iterated pseudo two-step Runge-Kutta methods with step size control tài liệu, giáo án, bài giảng...
Trang 1DOI 10.1007/s13160-014-0144-6
Parallel-iterated pseudo two-step Runge–Kutta
methods with step size control
Nguyen Huu Cong · Nguyen Thu Thuy
Received: 14 November 2012 / Revised: 25 April 2014 / Published online: 14 May 2014
© The JJIAM Publishing Committee and Springer Japan 2014
Abstract The aim of this paper is to develop a class of constant step size
parallel-iterated pseudo two-step Runge–Kutta methods (PIPTRK methods) for nonstiff first-order ODE problems into variable step size methods Embedded formulas are provided for giving a cheap error estimate used in the step size control Methods with variable parameters approach were applied for overcoming the difficulty in using two-step methods with variable step size By applications to a few widely used test problems,
we compare the efficiency of the resulting PIPTRK methods with step size control (PIPTRKSC methods) with the codes PIRK, DOPRI5,DOP853 andODEX This numerical comparison shows that these new PIPTRKSC methods are by far superior
to thePIRK,DOPRI5,DOP853andODEXcodes
Keywords Runge–Kutta methods· Two-step Runge–Kutta methods ·
Predictor–corrector methods· Parallelism
Mathematics Subject Classification (2010) 65M12· 65M20
This work was supported by the NAFOSTED Project 101.02-2013.06.
N H Cong · N T Thuy
Faculty of Mathematics, Mechanics and Informatics , Vietnam National University, Hanoi,
334 Nguyen Trai, Thanh Xuan , Hanoi, Vietnam
Present address:
N H Cong (B)
School of Graduate Studies , Vietnam National University, Hanoi,
144 Xuan Thuy, Cau Giay, Hanoi, Vietnam
e-mail: congnh@vnu.edu.vn
Trang 21 Introduction
The advent of parallel computers influences the development of methods for the numer-ical solution of a nonstiff initial value problem (IVP) for a system of first-order ordinary differential equations (ODEs)
y(t) = f(t, y(t)), y(t0) = y0, t0 t T, (1.1)
where y, f ∈ R d The most efficient numerical methods for solving this problem are the explicit Runge–Kutta methods (RK methods) In the literature, sequential explicit RK methods up to order 10 can be found in e.g., [18,20,22] In order to exploit the facilities
of parallel computers, a number of parallel explicit methods have been investigated
in e.g., [1 8,10–17,23–25] A common challenge in the latter mentioned works is to
reduce, for a given order of accuracy, the required number of effective sequential
f-evaluations per step, using parallel processors In the previous paper [11], the authors have considered a general class of constant step size parallel-iterated pseudo two-step RK methods (constant two-step size PIPTRK methods) for solving nonstiff IVPs of the form (1.1) The constant step size PIPTRK methods are obtained by applying a parallel predictor–corrector (PC) iteration scheme to pseudo two-step RK methods (PTRK methods) investigated in [9] These constant step size PIPTRK methods were shown to be more efficient when compared with existing methods (see [11])
In the present paper, we equip the constant step size PIPTRK methods considered
in [11] with an ability of being able to control the step sizes during the integration process We start our considerations in Sect 2, with embedded variable step size PTRK methods including the order conditions and two embedded formulas Section3
investigates PIPTRK methods with step size control (PIPTRKSC methods) based on the parallel PC iteration of the embedded variable step size PTRK methods Here in this section, the order conditions for the predictor and the rate of convergence are considered The better efficiency of PIPTRKSC methods is demonstrated in Sect.4by comparing numerical results of the PIPTRKSC methods with those ofPIRK,DOPRI5, DOP853andODEXcodes
In the following sections, for the sake of simplicity of notation, we assume that the IVP (1.1) is a scalar problem However, all considerations below can be straightfor-wardly extended to a system of ODEs
2 Embedded variable step size PTRK methods
The constant step size PTRK methods were firstly considered in [9] In this paper,
we consider variable step size PTRK methods with embedded formulas For two-step nature methods, there is an additional difficulty in applying them to a variable step size mode There exist in principe two approaches for overcoming this difficulty (cf., e.g., [3, p 44], [22, p 397]): (i) interpolating past stage values, (ii) deriving methods with variable parameters The first approach using polynomial interpolation
to reproduce the stage values for the new step, involves with computational cost, which increases as the dimension of the problems increases, while for the second
Trang 3approach, the computational cost is independent of the dimension of the problems For this reason, the variable parameter approach is more feasible and robust Thus,
we consider the variable step size PTRK methods with variable parameters Suppose
that cv and cw have respective dimensions s v and s w with s v + s w = s For scalar problems, a general s-stage variable step size PTRK method based on collocation
vector c= (c T
v , c T
w ) T has the following form
Vn= u ne v + h n A n vv f (t n−1ev + h n−1cv , V n−1)
+ h n A n vw f (t n−1ew + h n−1cw , W n−1), (2.1a)
Wn= u ne w + h n A wv f (t ne v + h nc v , V n ) + h n A ww f (t ne w + h nc w , W n ), (2.1b)
u n+1= u n + h nb v T f (t ne v + h nc v , V n ) + h nb w T f (t ne w + h nc w , W n ), (2.1c)
where, h n = t n+1− t n , u n+1≈ y(t n+1), A n
vv , A n
vw , A wv and A wwrespectively are
(s v × s v )-dimensional, (s v × s w )-dimensional, (s w × s v )-dimensional and (s w × s w
)-dimensional matrices, bvand bw respectively are s v -dimensional and s w-dimensional
vectors, evand ew respectively are s v -dimensional and s w-dimensional vectors with
unit entries Vnis called the explicit stage subvector representing the numerical
approx-imation to the exact solution vector y (t ne v+cv h n ) = [y(t n +c1h n ), , y(t n +c s v h n )] T
and Wnis called the implicit stage subvector representing the numerical approximation
to the exact solution vector y (t ne w+ cw h n ) = [y(t n + c s v+1h n ), , y(t n + c s h n )] T Furthermore, in (2.1) and elsewhere in this paper, we use for any two vectorsξ = (ξ1, , ξ s ) T,η = (η1, , η s ) T and any scalar function f the notation f (ξ, η) :=
[ f (ξ1, η1), , f (ξ s , η s )] T
The method parameter matrices A n vv , A n
vw , A wv , A ww and vectors bv , b w will be determined by order conditions This variable step size PTRK method is conveniently specified by the tableau
u n+1 bv T bT w
.
In (2.1), the two-step formula (2.1a) has the variable parameter matrices A n vvand
A n vw , which depend on n In order to proceed from u0to u1using the variable step size PTRK method (2.1), an appropriate starting procedure is needed for generating
sufficiently accurate the stage vectors V0and W0 This can be done, for example, by using an appropriate PIRK method considered in [24] or a sequential RK code with dense output
The s-stage variable step size PTRK method (2.1) consists of s v explicit stages
and s wimplicit stages Its step point order and stage order can be studied in the same way as the step point order and stage order of the constant step size PTRK methods investigated in [9] Thus suppose that u n = y(t n ), V n−1= y(t n−1ev + h n−1cv ) and
Wn−1= y(t n−1ew + h n−1cw ), then we have the following order definition (cf [9]):
Definition 2.1 The variable step size PTRK method (2.1) is said to be of order p∗if
y (t n+1) − u n+1=O(h p∗ +1
n ),
Trang 4and stage order q∗= min{p∗, q1, q2} if in addition,
y (t ne v + h nc v ) − V n = O(h q1 +1
n ), y(t ne w + h nc w ) − W n = O(h q2 +1
n ).
2.1 Order conditions
The qth-order conditions for (2.1a), (2.1b) and pth-order conditions for (2.1c) can be
derived by replacing V n−1, W n−1, u n , V n , W n and u n+1in (2.1) with the exact solution
values y (t n−1ev +h n−1cv ) = y(t ne v +h n−1(c v−ev )), y(t n−1ew +h n−1cw ) = y(t ne w+
h n−1(c w−ew )), y(t n ), y(t ne v +h nc v ), y(t ne w +h nc w ) and y(t n+1), respectively, that is
y (t ne v + h nc v ) − y(t n )e v − h n A n vv y(t ne v + h n−1(c v− ev ))
−h n A n vw y(t ne w + h n−1(c w− ew )) = O(h q+1
y (t ne w + h nc w ) − y(t n )e w − h n A wv y(t ne v + h nc v )
−h n A ww y(t ne w + h nc w ) = O(h q+1
y (t n+1) − y(t n ) − h nb v T y(t ne v + h nc v ) − h nb T w y(t ne w + h nc w ) = O(h p+1
n ).
(2.2c)
Let us suppose that the step size ratio h n /h n−1 is bounded from above (i.e.,
h n /h n−1 ), then along the same lines of [9, Section2.1], using Taylor expan-sions, we can expand the left-hand side of (2.2) in powers of h nand obtain the order conditions for determining the method parameter matrices and vectors given by
C( j)
h n
h n−1
j−1cj
v
j − (A n
vv , A n
vw )(c − e) j−1
= 0, j = 1, , q, (2.3a)
C( j)
cw j
j − (A wv , A ww )c j−1
= 0, j = 1, , q, (2.3b)
D ( j)=
1
j − (b T
v , b T
w )c j−1
= 0, j = 1, , p. (2.3c)
We have the following theorem (cf [9, Theorem 2.1]):
Theorem 2.1 If the function f is Lipschitz continuous, and if the order conditions
(2.3) are satisfied, then the s-stage variable step size PTRK method (2.1) has step point order p∗= min{p, q + 1} and stage order q∗= min{p, q} for any collocation
vector c = (c T
v , c T
w ) T with distinct abscissas and for any integer pair s v , s w with
s v + s w = s.
Proof Suppose that f is Lipschitz continuous and u n = y(t n ), V n−1 = y(t n−1ev+
h n−1cv ), W n−1= y(t n−1ew + h n−1cw ) For h n /h n−1 , the principal error
coef-ficients C(q+1)
v , C (q+1) w and error term D (p+1)in (2.3) are uniformly bounded
Conse-quently, similar to the order considerations for a general variable step size multistep method (cf., e.g., [22, p 401]), the conditions (2.3a) and (2.3b) imply that locally
Trang 5y (t ne v + h nc v ) − V n = O(h q+1
n ), y(t ne w + h nc w ) − W n = O(h q+1
n ). (2.4) Using the condition (2.3c), the order relations (2.4) and along the lines of the proof
of Theorem 2.1 in [9], we can obtain
y (t n+1) − u n+1= O(h p+1
n ) + O(h q+2
Applying Definition2.1, the order relations (2.4) and (2.5) give us
p∗= min{p, q + 1}, q∗= min{p∗, q} = min{p, q},
In order to express the parameter matices A n vv , A n
vw , A wv , A wwand vectors bv , b w
explicitly in terms of the collocation vector c= (c T
v , c T
w ) T, we define the following matrices and vectors
P v:=
cv
1,c2v
2,c3v
3, ,cv s
s
, P w :=
cw
1,cw2
2,c3w
3, ,cs w
s
,
R:=
e, c, c2, c3, , c s−1
, g T :=
1
1,1
2,1
3, ,1
s
,
Q:=
e, (c−e), (c−e)2, (c−e)3, , (c−e) s−1
,
By using these matrices and vectors, the conditions (2.3) with q = s and p = s,
are equivalent to
(A n
vv , A n
vw )Q = P vdiag
1, h n
h n−1, ,
h n
h n−1
s−1
(A wv , A ww )R = P w , (b T
v , b T
w )R = g T (2.6b) From here, the parameter matrices and vectors of the variable step size PTRK method (2.1) can be expressed as follows
(A n
vv , A n
vw ) = P vdiag
1, h n
h n−1, ,
h n
h n−1
s−1
Q−1, (2.6c)
(A wv , A ww ) = P w R−1, (b T
v , b T
w ) = g T
We see from (2.6c) that the variable parameter matrices A n vv and A n vware determined
as matrix functions of the step size ratio h n /h n−1 The following lemma is evident
Lemma 2.1 For the variable step size PTRK method (2.1 ), the variable parameter matrices A n vv and A n vw are uniformly bounded whenever the step size ratio h n /h n−1
is bounded from above.
Trang 6The following theorem gives the order results for variable step size PTRK methods (cf e.g., [9,11])
Theorem 2.2 If the function f is Lipschitz continuous, and if the parameter matrices
A n
vv , A n
vw , A wv , A ww and vectors b v , b w in (2.1) satisfy the relations (2.6), then the s-stage variable step size PTRK method (2.1) has step point order p∗= s and stage order q∗ = s for any collocation vector c = (c T
v , c T
w ) T with distinct abscissas and for any integer pair s v , s w with s v + s w = s It has step point order p∗= s + 1 if in addition, the orthogonality relation
P j (1) = 0, P j (x) :=
x
0
ξ j−1s
i=1
(ξ − c i )dξ, j = 1, , k, (2.7)
holds for k 1.
Proof The parameter matrices A n vv , A n
vw , A wv , A wwand vectors bv , b wof the method (2.1) are defined by equations (2.6), which are equivalent to order conditions (2.3) with
q = s and p = s By virtue of Theorem2.1, p∗= s and stage order q∗= s for any
collocation vector c= (c T
v , c T
w ) T with distinct abscissas and for any integer pair s v , s w
with s v +s w = s If the orthogonality relation (2.7) holds, then the order relation (2.5)
in the proof of Theorem2.1takes the form (see e.g., [22, p 212])
y (t n+1) − u n+1= O(h s +1+k
n ) + O(h s+2
n ),
which gives the step point order p∗= s + 1 if k 1 Theorem2.2is proved Theorem2.2indicates that an s-stage variable step size PTRK method, can attain the step point order p∗ = s + 1 According to the analysis of the local errors in
this section, the starting vectors V0and W0for and s-stage variable step size PTRK method should be of local order s+ 1, that is
y (t0ev + h0cv ) − V0= O(h s+1
0 ),
y (t0ew + h0cw ) − W0= O(h s+1
0 ).
2.2 Embedded formulas
With the aim to have a cheap error estimate for step size control, together with the
s-stage p∗th-order variable step size PTRK method (2.1) with the parameter matrices and vectors defined by (2.6c) and (2.6d), we consider two embedded formulas:
u n+1= u n + h nbT
v f (t ne v + h nc v , V n ) + h nbT
w f (t ne w + h nc w , W n ) (2.8a)
u n+1= u n + h n T v f (t ne v + h nc v , V n ) + h n T w f (t ne w + h nc w , W n ). (2.8b)
Trang 7The vectors bv ,b w v bw in (2.8) are defined in such a way that they satisfy the following conditions (cf.2.3c)
D ( j)= 1
j!
1
j − (b T
v ,b T
w )c j−1
= 0, j = 1, , s − 1, D (s)= 0 (2.9a)
D ( j)= 1
j!
1
j
T
v T w )c j−1
D (s−1) = 0 (2.9b)
This can be done if the vectors bv ,b w v bware defined in the following way (cf.2.6d)
(b T
v ,b T
w ) =
gT − 1
10e
T s
T
T
v w T ) =
gT − 1
10e
T
s−1
T
where eT s = (0, , 0, 1) and e T
s−1 = (0, , 0, 1, 0) are the sth and (s − 1)th unit
vectors Following the same lines as in the proof of Theorem2.1, we can obtain similar
to (2.5) order relations
y (t n+1) − u n+1= O(h s
n ) + O(h s+2
n ),
y (t n+1 u n+1= O(h s−1
n ) + O(h s+2
n ),
which yield the following theorem:
Theorem 2.3 If the function f is Lipschitz continuous and if the parameter vectors
bv ,b w v bw are defined by (2.10), then the embedded formulas (2.8a) and
(2.8b) give rise to an embedded approximation of embedded orders p∗= s − 1 and
p∗= s − 2, respectively, that is
y (t n+1) − u n+1= O(h s
n ), y (t n+1 u n+1= O(h s−1
n ).
Thus, the variable step size method (2.1) and the embedded formulas (2.8) define
an embedded variable step size PTRK method, which can be specified by the tableau
u n+1 bT v bw T
u n+1 bT
w
.
This embedded variable step size PTRK method will be used for parallel PC itera-tions with step size control in the next section
Trang 83 PIPTRK methods with step size control
In this section, first, we apply a parallel PC iteration scheme to the embedded variable step size PTRK method defined by (2.1) By using (2.1) as corrector method with the predictor formula
W(0)
n = y ne w + h n B wv n f (t n−1ev + h n−1cv , V n−1)
+h n B ww n f (t n−1ew + h n−1cw , W (m) n−1), (3.1a)
we arrive at the following PC iteration method:
Vn= y ne v + h n A n vv f (t n−1ev + h n−1cv , V n−1)
+h n A n vw f (t n−1ew + h n−1cw , W (m) n−1), (3.1b)
W( j)
n = y ne w + h n A wv f (t ne v + h nc v , V n )
+h n A ww f (t ne w + h nc w , W ( j−1) n ), j = 1, , m, (3.1c)
y n+1= y n + h nb T v f (t ne v + h nc v , V n ) + h nb T w f (t ne w + h nc w , W n (m) ), (3.1d)
y n+1= y n + h nbT
v f (t ne v + h nc v , V n ) + h nbT
w f (t ne w + h nc w , W n (m) ), (3.1e)
n+1= y n + h n T v f (t ne v + h nc v , V n ) + h n T w f (t ne w + h nc w , W n (m) ), (3.1f)
where the matrices B vw n and B ww n in (3.1a) are variable parameter matrices They will
be determined by order conditions given in Sect.3.1 Similar to the constant step size PIPTRK methods considered in [11], we shall call the method (3.1) embedded variable step size PIPTRK method We note that u n , u n+1are the numerical solusions obtained by the variable step size PTRK corrector method (2.1) and y n , y n+1are those obtained by the embedded variable step size PIPTRN method (3.1)
As for every explicit method, the computational cost of the method (3.1) is
mea-sured by the number of sequential f-evaluations per step Notice that w
compo-nents of f (t ne w + hc w , W j−1
n ), j = 1, , m + 1, can be computed in
paral-lel, provided thatw processors are available Since f (t n−1ev + h n−1cv , V n−1) and
f (t n−1ew + h n−1cw , W n−1) can be reused, in general, we need m + 1 sequential
f-evaluations per step.
3.1 Order conditions for the predictor
The sth-order conditions for the predictor formula (3.1a) can be derived by
replac-ing Vn−1, y n, Wn−1 and W(0)
n by the exact solution values y (t n−1ev + h n−1cv ) =
y (t ne v + h n−1(c v− ev )), y(t n ), y(t n−1ew + h n−1cw ) = y(t ne w + h n−1(c w− ew )),
and y (t ne w + h nc w ), respectively On substitution of these exact solution values into
(3.1a), we are led to
y (t ne w + h nc w ) − y(t n )e w − h n B wv n y(t ne v + h n−1(c v− ev ))
− h n B ww n y(t ne w + h n−1(c w− ew )) = O(h s+1
Trang 9Using a Taylor expansion for the sufficiently smooth function y (t) in the
neighbor-hood of t n, we can expand the left-hand side of (3.2) in powers of h nand obtain the order conditions (see Sect.2.1; [9,11])
hn
h n−1
j−1
cw j
j − (B n
wv , B n
ww )(c − e) j−1
= 0, j = 1, , s. (3.3a)
Using the matrices P w and Q defined in Sect.2.1, (3.3a) can be rewritten in the form (cf.2.6a)
(B n
wv , B n
ww )Q = P wdiag
1, hn
hn−1, ,
hn
hn−1
s−1
and from here, the explicit expressions for the matrices B n
vw , B n
ww, then comes out:
(B n
wv , B n
ww ) = P w diag
1, h n
h n−1, ,
h n
h n−1
s−1
Q−1. (3.3c)
If the parameter matrices B wv n and B ww n satisfy (3.3), we have
Wn − Wn (0)= [Wn − y(t ne w + hc w )] + [y(t ne w + hc w ) − W (0) n ] = O(h s+1).
Thus, we have proved the following theorem:
Theorem 3.1 There exist parameter matrices B wv n and B ww n defined by (3.3c) such
that the predictor method (3.1a) has the order s, that is
Wn − W(0) n = O(h s+1
n )
Since the function f is Lipschitz continuous and each iteration in (3.1) raises the order of the iteration error by 1, using Theorem3.1, we can obtain the following order relations:
Wn − W(m) n = O(h m +s+1
u n+1− y n+1= h nb w T [ f (W n ) − f (W (m) n )] = O(h m +s+2
u n+1− y n+1= h nbT
w [ f (W n ) − f (W (m)
n )] = O(h m +s+2
u n+1 n+1= h n w T [ f (W n ) − f (W (m) n )] = O(h m +s+2
(3.4)
Using Theorem2.3and the order relations (3.4), the following relations can be obtained
y (t n+1) − y n+1= [y(t n+1) − u n+1] + [u n+1− y n+1] = O(h p∗ +1) + O(h m +s+2 ),
y (t n+1) − y n+1= [y(t n+1) − u n+1] + [u n+1− y n+1] = O(hp∗
) + O(h m +s+2 ),
y (t n+1 n+1= [y(t n+1 u n+1 u n+1 n+1] = O(hp∗
) + O(h m +s+2 ),
(3.5)
Trang 10where, p∗is the order of the variable step size PTRK corrector method (2.1),p∗and
p∗are the embedded orders of the embedded formulas (2.8a) and (2.8b), respectively. The relations (3.5) then prove the following theorem:
Theorem 3.2 If the variable step size PTRK corrector method (2.1 ) has step point order p∗, the embedded formulas (2.8a) and (2.8b) have embedded orders p∗and p∗,
respectively, and if the conditions (3.3) are satisfied, then the embedded variable step size PIPTRK method (3.1) has step point order p∗∗= min{p∗, m + s + 1}, embedded
orders p∗∗= min{p∗ p∗∗ p∗, m + s + 1} for any collocation
vector c = (c T
v , c T
w ) T with distinct abscissas.
From Theorems2.2,2.3and3.2, we have the following corollary:
Corollary 3.1 The embedded variable step size PIPTRK method (3.1 ) has step point order p∗∗with s p∗∗ s + 1, embedded orders p∗∗ p∗∗= s − 2 for any number of iterations m.
3.2 Rate of convergence
As for the case of constant step size PIPTRK methods considered in [11], the rate of convergence of the embedded variable step size PIPTRK method (3.1) is defined by
using the model test equation y(t) = λy(t), where λ runs through the eigenvalues of
the Jacobian matrix∂f/∂y (see also e.g., [6,10,11,14,23]) Applying the embedded variable step size PIPTRK method (3.1) to this model test equation, we obtain the iteration error equation
W( j)
n − Wn = z n A ww
W( j−1)
n − Wn
, z n := λh n j = 1, , m. (3.6)
Hence, with respect to the model test equation, the rate of convergence is deter-mined by the spectral radiusρ(z n A ww ) of the iteration matrix z n A ww Requiring that
ρ(z n A ww ) < 1, leads us to the convergence condition
|z n | < 1
ρ(A ww ) or h n < 1
ρ(∂f/∂y)ρ(A ww ) . (3.7)
We shall call ρ(A ww ) the convergence factor and 1/ρ(A ww ) the convergence
boundary of the embedded variable step size PIPTRK methods The freedom in the
choice of the collocation vector c of variable step size PTRK corrector methods can be
used for minimizing the convergence factorρ(A ww ), or equivalently, for maximizing
the convergence region S con vdefined by
S con v:=z n : |z n | < 1/ρ(A ww ). (3.8) For the specification of convergence factors of a specified class of embedded vari-able step size PIPTRK methods, we refer to Sect.4where a further reference will be given
... class="page_container" data-page="8">3 PIPTRK methods with step size control< /b>
In this section, first, we apply a parallel PC iteration scheme to the embedded variable step size PTRK method... of iterations m.
3.2 Rate of convergence
As for the case of constant step size PIPTRK methods considered in [11], the rate of convergence of the embedded variable step size PIPTRK...
boundary of the embedded variable step size PIPTRK methods The freedom in the
choice of the collocation vector c of variable step size PTRK corrector methods can be
used