=Paper= {{Paper |id=Vol-1729/paper-01 |storemode=property |title=Parallel Numerical Methods for Ordinary Differential Equations: a Survey |pdfUrl=https://ceur-ws.org/Vol-1729/paper-01.pdf |volume=Vol-1729 |authors=Svyatoslav I. Solodushkin,Irina F. Iumanova }} ==Parallel Numerical Methods for Ordinary Differential Equations: a Survey== https://ceur-ws.org/Vol-1729/paper-01.pdf
        Parallel Numerical Methods for Ordinary
            Differential Equations: a Survey

               Svyatoslav I. Solodushkin1,2 and Irina F. Iumanova1
                    1
                      Ural Federal University, Yekaterinburg, Russia
    2
        Krasovskii Institute of Mathematics and Mechanics, Yekaterinburg, Russia
                                 solodushkin s@mail.ru



        Abstract. Tremendous efforts have been made in the field of parallel
        numerical methods for ODE. Special volumes are dedicated to the theme
        we are going to discuss [1]. The brief survey of some classical results and
        recent developments is the aim of this paper. We particulary focus on
        small scale parallelism across the method, but not large scale parallelism
        across the system.

        Keywords: parallel numerical methods · parallelism across the method ·
        small scale parallelism


1   Introduction

Modern science poses a lot of computationally intensive problems, among them
weather forecast or heart modeling. It is widely believed that the only appro-
priate means to solve these problems is to use parallel computers. This fact
dictates the necessity to elaborate special classes of numerical algorithms which
are inherently parallel and designed for use on parallel computers.
    In this paper we consider parallel numerical methods for initial value problem
(IVP) for ordinary differential equations

                                   y 0 (x) = f (x, y(x)),
                                                                                      (1)
                                   y(x0 ) = y0 ,
where x ∈ [x0 ; X], y ∈ Rm .
   According to Gear classification [2] the means of achieving parallelism in
numerical methods for IVP could belong to two main classes:

1. parallelism across the system or, that is the same, parallelism across the
   space;
2. parallelism across the method or, that is the same, parallelism across the
   time.

    Methods fallen into the first group are usually based on more or less obvious
techniques such as exploiting parallelism of evaluation of function f or solving
linear equations which arise at each step of an otherwise standard IVP solver. For
2       Svyatoslav I. Solodushkin and Irina F. Iumanova

traditional forward-step methods, e. g. explicit Runge–Kutta methods, this ap-
proach implies simple dividing the original system into a number of subsystems
which are processed concurrently by separated computing nodes with interpro-
cessor communications at the end of each step of IVP solver. It is clear that this
approach is effective for high dimensional systems only. In practice such systems
appear in molecular dynamics modelling, where thousands of particles should be
taken into account, or after the discretization of time dependent PDE.
     The second group includes numerical algorithms, which allow several simul-
taneous function evaluations within each step of IVP solver. These methods are
suitable for multi-core processors or computers with a few processors with fast
interprocessor communication which use shared memory.
     The second group also includes methods which search solution for many step
simultaneously, they are also known as time parallel methods and can be clas-
sified into four different groups: methods based on multiple shooting, methods
based on domain decomposition and waveform relaxation, space-time multigrid
methods and direct time parallel methods [3].
     A dedicated survey should be devoted to parallel across the space numerical
methods, and this is the reason why they are beyond the scope of present article
which is focused on parallel across the time numerical methods.


2   Predictor-Corrector, Runge–Kutta and Block Type
    Methods
Miranker and Linger [5] were probably the first who proposed small-scale par-
allel method of predictor-corrector type. They mentioned that at first sight the
sequential nature of the numerical methods like (2) does not permit parallel
computation on all of the processors to be performed, in other words the front
of computation is too narrow to take advantage of more than one processor.
                                                                  
                   p
                 yn+1  = ync + h2 3f (xn , ync ) − f (xn−1 , yn−1
                                                               c
                                                                  ) ,
                                 
                                                             p
                                                                            (2)
                   c
                 yn+1  = ync + h2 f (xn , ync ) + f (xn+1 , yn+1 ) ,
                                           p
Indeed, ync must be computed before yn+1      , which in turn must be computed
        c
before yn+1 etc.
    However, if the predictor is taken in another form, as represented in (3), then
         p
ync and yn+1 can be evaluated in parallel by two processors.
                   p      c
                  yn+1 = yn−1 +2hf (xn , ynp ),
                                                                               (3)
                                                                  
                  ync = yn−1
                         c
                             + h2 f (xn−1 , yn−1
                                             c
                                                 ) + f (xn , ynp ) ,

    Method (2) is based on couple of Adams–Bashfort and Adams–Moulton
methods of second order, where the first one is used to estimate yn+1 which
is substituted to the second one to avoid the implicity and, consequently, the ne-
cessity of solving a nonlinear equation. In (3) the predictor outruns the corrector
and stands one step ahead; this made the parallel implementation possible.
   Parallel Numerical Methods for Ordinary Differential Equations: a Survey      3

    As a development of this idea Miranker and Liniger showed how to systemat-
ically derive a general class of numerical integration methods which can be exe-
cuted on multiple processors in parallel, and present a stability and convergence
analysis for those methods. More precisely, they considered predictor-corrector
methods in a PECE mode (one predicted derivative evaluation and one cor-
rected derivative evaluation) where calculation advances s steps at a time. So,
if 2s processors are available it is possible to arrange tasks in such a way that
each processor performs either a predictor or a corrector calculation.
    Continuing the research started by Mirankel Katz, Franklin and Sen [6] stud-
ied the stability properties of predictor-corrector parallel methods. Specifically,
they considered the case where there are two processors, i.e. s = 1. They showed
that for a fixed Adams–Moulton corrector the optimally stable parallel predictor
(in the sense that the parallel scheme has a maximum stability interval on the
negative real axis) is the Adams–Bashforth predictor shifted to the right by one
integration step. Methods constructed in [6] are not A-stable.
    Another type of numerical methods which possess an internal parallelism are
block methods. Block method which finds solution in r points at one step is
called r-dots block method. By analogy with the classification into one-step and
multistep for classical methods, block methods could also be divided into these
two groups. Shampine and Watts studied a family of one-step block methods,
and gave one specific example (4):
                                                   
             yn+1        2/3 −1/12    fn+1    yn      5/12   fn
                    =h                      +    +h             .              (4)
             yn+2        4/3 1/3      fn+2    yn      1/3    fn

   The peculiar feature of this method is the form of discretization error:
                             4
                                            h5
                                                         
                             h (4)
                     εn =       u (ζn+1 ), − u(5) (ζn+2 )
                             24             90

Shampine and Watts took advantages of this formula which is more accurate at
the end of the block than in the middle and proved (4) has global convergence
like O(h4 ) instead of O(h3 ) one might expect. They also proved the A-stability
of (4), so, in a sense they overcame the Dahlquist barrier which states that of
the linear multistep methods the trapezoidal rule is the most accurate A-stable
method.
    To avoid the necessity of solving nonlinear equation which arise at each step
Shampine and Watts supplied a predictor-corrector form of one-step r-dots block
methods. Good prediction allow them to compute the corrector two times only
rather than iterate until it is satisfied, furthermore suitable predictor-corrector
scheme asymptotically gives the same result as iterating to completion. Unfor-
tunately block implicit methods when used as a predictor-corrector combination
are even not A(α)-stable.
    To expand the stability region Lee and Song [8] proposed a family of explicit
and implicit multistep block methods as well as block predictor corrector schemes
based on couples of these methods where explicit one is used as predictor.
4       Svyatoslav I. Solodushkin and Irina F. Iumanova

    Feldman used collocation approach to derive implicit multistep block meth-
ods of general form [9]. He presented formulas for A-stable one-step 4-dots block
implicit method and mentioned that collocation approach allow to construct A-
stable one-step block methods of higher order as well. At the same time multistep
methods constructed in such a way are not A-stable.
    Deep analysis of predictor-corrector methods suggests a simple general para-
digm for achieving parallelism across the time in traditional forward-step meth-
ods: group the stages of a the method into blocks for which all evaluations
associated with each block can be performed simultaneously. This idea could be
illustrated by parallel explicit and diagonally implicit Runge–Kutta (ERK and
DIRK, respectively) methods in a very natural way.
    An s-stage RK method has the following form
                                         s
                                          X         
               kn,i = f xn + ci h, yn + h   aij kn,j ,     i = 1, ..., s
                                                 j=1
                               s                                               (5)
                               X
               yn+1 = yn + h         bi kn,i ,
                               i=1

where bi , ci , ai,j are coefficients; ai,j = 0, i ≤ j for explicit RK formulas and
ai,j = 0, i < j and at least one aii 6= 0 for diagonally implicit RK formulas. Let
us denote by A = {a)ij } the s × s RK matrix.
    Suppose, for example, that the coefficients of explicit RK method have the
zero-pattern presented in Table 1.

                   Table 1. Coefficients of explicit RK method

                                0
                                × ×
                                × ×         0
                                × ×         ×     ×
                                  ×         ×     ×    ×


    Each arrow in the corresponding ”production graph” depicted in Fig. 1,
pointing from vertex i to vertex j, stands for a non-zero aji . Here the vertices 2
and 3 are independent and can be processed in parallel. The number of vertices
in the longest chain of successive arrows (in this case 3) is called the number of
effective sages [13] or number of sequential function evaluations [12].
    In general, let us consider RK matrix A which could be partitioned (possibly
after a permutation of the stages) as
                                                         
                               D1
                             A21 D2                      
                                                         
                             A31 A32 D3
                       A=                                ,
                                                          
                             ..     ..   . .             
                             .       .       .           
                              Aσ1 Aσ2 . . . Aσ2 Dσ
   Parallel Numerical Methods for Ordinary Differential Equations: a Survey          5




                              Fig. 1. Production graph


where, for ERK methods, Dl , l = 1, . . . , σ, are zero matrixes and, for DIRK
methods, Dl , l = 1, . . . , σ, are (possibly different) diagonal matrixes. For any
l = 1, . . . , σ all kn,i in l-th block of ERK method could be computed concur-
rently as soon as all kn,j in all previous blocks are available. Similarly, for any
l = 1, . . . , σ each kn,i in l-th block of DIRK method depends on itself and the
previously competed kn,j in blocks 1, . . . , l − 1. Thus, all kn,i in l-th block could
be computed in parallel by solving the system of uncoupled equations.
     Unfortunately, these ERK schemes do not have a high potential of paral-
lelism. The following theorem is a severe restriction on parallel methods [12]

Theorem 1. The order p of the ERK method with σ sequential stages satisfies
the inequality p ≤ σ for any number of available processors.
Let us remark that stability function of these ERK methods is a polinimial and
therefore they can not be A-stable.
   On the other hand DIRK methods have better stability properties and allow
one to achive higher order of convergency. For example, method (6) is L-stable
(but not B-stable) and has a 4-th order.

                          1/2    1/2       0      0     0
                          2/3      0      2/3     0     0
                          1/2    -5/2     5/2    1/2    0                          (6)
                          1/3    -5/3     4/3     0    2/3
                                  -1      3/2     -1   3/2

This method consists of two uncoupled blocks, i. e. σ = 2, of two equations in
each, hence kn,1 and kn,2 could be found in parallel, after that kn,3 and kn,4
could be found in parallel too.
    The theorem 1 motivated to pose the question whether it is always possible
to find ERK method of order p using not more than p effective stages, assuming
that suffucient number of processors are available, these methods are called
P-optimal. For sequential ERK of order p ≤ 4 it is possible to choose coefficient
of the method in such a way that the number of stages s is equal to p, so
these sequential ERK are P-optimal. At the same time even for p ≥ 5 the
number of stages is greater than p and increase rapidly, see table 2. Also
the number of stages smin , the number of stages S for which these RK
6       Svyatoslav I. Solodushkin and Irina F. Iumanova

methods have actually been constructed, the number of effective stages Sef f
are reported. Special techniques allow one to construct methods which are
P-optimal, because some stages are performed in parallel (Table 2). So, these
methods allow one to decrease the computation time with the help of parallelism.



                            Table 2. Stages and orders

                                      ≤4    5    6     7     8      9   10
        Sequential ERK smin           p     6    7     9    11   ≥ 12 ≥ 13
                       S              p     5    6     7     8      9   10
        Optimal RK     Sef f          p     6    7     9    11   ≥ 12 ≥ 13
                       Num. of proc    -    3    3     4    4       5    5



  One possibility of constructing P-optimal methods is by fixed point iteration.
Method (5) can be interpreted as an ERK method with scheme

                                0     0
                               c     A 0
                               c      0 A 0
                               ..   ..   ..                                     (7)
                                .    .      .
                               c    0 0     0 A 0
                                    0 ...   0 0 bT

where σ sequential stages are performed and s processors are available is as-
sumed. The following theorem discover the connection between the order and
the number of iterations.

Theorem 2. The parallel iterated Runge–Kutta method (5) in form (7) is of
order p = min(p0 , σ), where p0 denotes the order of the basic method.

This theorem shows that the choice σ = p0 yields P-optimal ERK methods.
    The next question is the least number of processors needed to implement an
optimal ERK method. Houwen and Sommejeir [13] took as basic method the
s-stage Gaussian–Legendre type RK method, which has the smallest number of
stages with respect to their order. This allowed them to construct the method
of order p = 2s which is P-optimal on s processors.
    In this scheme one may use linear multistep (LM) predictors reducing the
number of effective stages. First results based on LM predictors are reported by
Lie [14], using a 4th-order, 2-stage Gauss–Legendre corrector and a 3rd-order
Hermite extrapolation predictor. Future investigation of LM correctors in this
scheme was made in [13].
    In conclusion it should be said that predictor-corrector and block as well
as Runge–Kutta methods are ideally suited to be used on the few cores of a
multicore processor, but they do not have the potential for large scale parallelism.
    Parallel Numerical Methods for Ordinary Differential Equations: a Survey          7

3    Extrapolation Methods
Many authors note that extrapolation methods posses a high degree of paral-
lelism and offer an extremely simple technique to obtain for generating high-order
methods [15–18].
     Let us consider a basic method of order p for integrating (1) from x0 until
x1 = x0 + h. As usual simple method of low order, e. g. explicit Euler method or
Crank–Nicolson method, is taken as a basic. Denote the numerical approximation
to the exact solution value y(x1 ) by y(x1 ; h). Let the error of approximation
allows the series expansion in powers of hq , where q = 2 for symmetric basic
method and q = 1 otherwise. Let us consider a sequence of integration steps
hi = h/i, i = 1, . . . , r, then the corresponding r-point extrapolation method is
defined as follow
                                     Xr
                                y1 =     γi y(x0 + h, hi ),
                                    i=1
            r                r                                                      (8)
            X                X γi
                  γi = 1,            = 0, j = p, p + q, . . . , p + (r − 2)q.
            i=1               i=1
                                  ij

Theorem 3. Let the basic method providing the values y(x1 ; hi ) be of order p,
then the extrapolation method (8) has order p + q(r − 1).
    As soon as y1 is computed one can perform the second step using the y1 as a
new initial value at t1 , etc. Obviously the different terms y(x1 , hi ) in (8) could
be computed in parallel. It is clear that the time needed to compute y(x1 ; , hi )
is proportional to i, hence to balance the load it is recommended to compute
y(x1 ; h1 ) and y(x1 ; hr ) on the first processor, y(x1 ; h2 ) and y(x1 ; hr−1 ) on the
second processor and so on. In this way b(r + 1)/2c processors are used.
    Based on Richardson extrapolation technique Houwen in [15] constructed
method which requires less processors to be optimal that the Gauss–Legendre-
based parallel iterated RK method. For example, an optimal RK method of
order ten requires only three processors when using Richardson extrapolation
and five processors when using predictor-corrector iteration of the tenth-order
Gauss–Legendre method.
    Korch et al. considered in [17] the parallel explicit extrapolation methods for
high-dimensional ODEs, up to 108 . They analyze and compare the scalability of
several implementations for distributed-memory architectures which use different
load balancing strategies and different loop structures. By exploiting the special
structure of a large class of ODE systems, the communications costs can be
reduced significantly. More then, by processing the micro-steps using a pipeline-
like structure, the locality of memory references could be increased and better
utilization of the cache memory can be achieved.

4    Multiple Shooting and Parareal Algorithm
According to Gander [3] time parallel time integration methods have received
renewed interest over the last decade because of the advent of massively parallel
8          Svyatoslav I. Solodushkin and Irina F. Iumanova

computers, which is mainly due to the clock speed limit reached on today’s
processors. When solving time dependent partial differential equations, the time
direction is usually not used for parallelization. But when parallelization in space
saturates, the time direction offers itself as a further direction for parallelization.
The time direction is however special, and for evolution problems there is a
causality principle: the solution later in time is affected (it is even determined)
by the solution earlier in time, but not the other way round. Algorithms trying
to use the time direction for parallelization must therefore be special, and take
this very different property of the time dimension into account.
    Below we overview only two parallel in time methods.
    The basic idea of multiple shooting method proposed in [19] is to apply a
shooting method which was originally developed for boundary value problems
to an initial value problem (1). To do this one splits the time interval into
subintervals [x0 , x1 ], [x1 , x2 ], . . . , [xn−1 , xn ], and then solves on each subinterval
the underlying initial value problem

    y00 (x) = f (x, y0 (x)),   y10 (x) = f (x, y1 (x)), . . .    0
                                                                yn−1 (x) = f (x, yn−1 (x)),
                                                                                            (9)
    y0 (0) = y0                y1 (x1 ) = U1                    yn−1 (xn−1 ) = Un−1

together with the matching conditions U1 = y0 (x1 ), . . . , Un−1 = yn−2 (xn−1 ),
where Ui , i = 1, . . . , n − 1 are so called shooting parameters which are unknown.
This leads to the system of non-linear equations
                                
                                
                                 U1 − y0 (x1 ) = 0
                                  U2 − y1 (x2 ) = 0
                                
                                                           .                     (10)
                                
                                 ...
                                  Un−1 − yn−1 (xn−1 ) = 0
                                

    To determine the shooting parameters the Newton’s method could be applied
to this system. Fortunately the Jacobian matrix has a very special band form
and could be inverted easily. The corresponding iteration process has a following
form

     U0k+1 = y0
      k+1                         ∂yi (xi+1 , Uik ) k+1
     Ui+1 = yi (xi+1 , Uik ) +                     (Ui  − Uik ),       i = 0, 1, 2, . . . , n − 2
                                        ∂Ui
                                                                          (11)
and allow parallel implementation. Chartier and Philippe prove that (11) con-
verges locally quadratically. Note, that (11) has a form of Bellen and Zennaro
method [20] who used multiple shooting technique to parallelize discrete re-
current relations yn+1 = Fn+1 (yn ) and reported that the speedup of 53 for a
problem with 400 time steps.
    Following Lions, Maday and Turinici [21] let us explain the parareal algo-
rithms on the simple scalar model

                     y 0 (x) = −ay(x),          x ∈ [0, X],        y(0) = y0 .                  (12)
   Parallel Numerical Methods for Ordinary Differential Equations: a Survey                   9

The solution is first approximated using Backward Euler on the time grid xi
with coarse time step ∆,
                         1
                       Yi+1 − Yi1 = −a∆Yi+1
                                         1
                                            ,                  Y01 = y0 .

The approximate solution values Yi1 are then used to compute on each time
interval [xi , xi+1 ] exactly and in parallel the solution of

             yi01 (x) = −ayi1 (x),         x ∈ [xi , xi+1 ],        yi1 (xi ) = Yi1 .

   After that corrections are performed that lead as to the iteration process
1. Compute the jumps Sik = yi−1  k
                                    (xi ) − Yik .
                            k      k         k
2. Propogate the jumps δi+1 − δi + a∆δi+1         = Sik ,           δ0k = 0.
         k+1    k
3. Set Yi    = yi−1 (xi ) + δik and solve in parallel

          yi0k+1 (x) = −ayik+1 (x),           x ∈ [xi , xi+1 ],       yik+1 (xi ) = Yik+1 .

Theorem 4. [21] The parareal scheme is of order k, i. e. there exists Ck such
that
            kYik − y(xi )k + max kyik (x) − y(x)k ≤ Ck ∆k .
                                     x∈[xi ,xi+1 ]

    In particular, this result means that with each iteration of the parareal al-
gorithm, one obtains a numerical time stepping scheme which has a truncation
error that is one order higher than before. So for a fixed iteration number k,
one can obtain high order time integration methods that are naturally parallel.
The same proposition also holds for Forward Euler. Unfortunately in both dis-
cretization schemes the stability of the higher order methods obtained with the
parareal correction scheme degrades with iterations.
    Lions et al. gave two numerical examples: one for a heat equation where they
obtain a simulated speedup of a factor 8 with 500 processors, and one for a
semi-linear advection diffusion problem where the obtained speedup was 18.

Acknowledgements This research is supported by RFBR 17-01-00033 and 17-
01-00392, Russian Science Foundation (RSF) 14-35-00005. We acknowledge the
support by the program 02.A03.21.0006 on 27.08.2013.


References
 1. Advances in Computational Mathematics Volume 7, Issue 1–2, 1997.
 2. Gear, C.W.: The parallel methods for ordinary differential equations, Tech. Rep.
    UIUCDCS R–87–1369, Comp. Sci. Dept., Univ. of Illinois, Urbana, IL, 1987.
 3. Gander, M.J.: 50 Years of Time Parallel Time Integration. In: in Multiple Shooting
    and Time Domain Decomposition, Springer, 2015.
 4. Jackson, K.R.: A Survey of Parallel Numerical Methods for Initial Value Problems
    for Ordinary Differential Equations. In: IEEE Transactions on Magnetics, 1991.
    Vol. 27. No. 5, P. 3792–3797.
10       Svyatoslav I. Solodushkin and Irina F. Iumanova

 5. Miranker, W.L., Linger, W.: Parallel methods for the numerical integration of
    ordinary differential equations. In: Math. Comp., 1967. Vol. 21. P. 303–320.
 6. Katz, I.N., Franklin, M.A., Sen, A.: Optimally stable parallel predictors for Adams-
    Moulton correctors. In: Camp. and Moth. with Appl., 1977. Vol 3. pp 217–233.
 7. Shampine, L.F., Watts, H.A.: Block Implicit One-Step Methods. In: Math. Comp.,
    1969. V. 23. P. 731–740.
 8. Lee, M.G., Song, R.W.: Computation of Stability Region of some Block Methods
    and Their Application to Numerical Solutions of ODEs. In: Proceedings of XIV
    Baikal International Conference, Baikal, Siberia, Russia, July 2008.
 9. Feldman, L.P., Nazarova, I.A.: Parallel algorithms for the numerical decision of
    Caushy’s problem for ordinary differential equations systems. In: Mathematical
    modelling, 2006. Vol. 18. No. 9. P. 17–31.
10. Iserles, A., Nørsett, S.P.: On the theory of parallel Runge–Kutta methods. IMA J.
    Numer. Anal., 1990. Vol.10. P. 463–488.
11. Jackson, K.R., Nørsett, S.P.: The potential of parallelism in Runge–Kutta methods.
    Part 1: RK formulas in standard form. Report 239/90, 1992.
12. Hairer, E., Wanner, G., Nørsett, S.P.: Solving Ordinary Differential Equations I,
    1993.
13. van Der Houwen, P.J., Sommeijer, B.P.: Parallel iteration of high-order Runge-
    Kutta methods with stepsize control. In: Journal of Computational and Applied
    Mathematics, 1990. Volume 29. Issue 1. P. 111–127.
14. Lie, I.: Some aspects of parallel Runge-Kutta methods, Report No. 3/87, University
    of Trondheim, Division Numerical Mathematics, 1988.
15. van Der Houwen, P.J.: Parallel step-by-step methods. In: Applied Numerical Math-
    ematics, 1993. Volume 29. Issue 1. P. 69–81.
16. Rauber, T., Runger, G.: Load balancing schemes for extrapolation methods. In:
    Concurrency: Practice and Experience, 1997. Volume 9. Issue 3. P. 181–202.
17. Korch, M., Rauber, T., Scholtes, C.: Scalability and locality of extrapolation meth-
    ods on large parallel systems. In: Euro-Par 2010, Part II, LNCS 6272, 2010. P. 65–
    76.
18. Ketcheson, D., bin Waheed, U.: A comparison of high-order explicit Runge–Kutta,
    extrapolation, and deferred correction methods in serial and parallel. In: Commu-
    nications in Applied Mathematics and Computational Science, 2014, Volume 9.
    Issue 2. P. 175–200.
19. Chartier, P., Philippe, B.A.: parallel shooting technique for solving dissipative
    ODEs. In: Computing, 1993. Volume 51. Issue 3. P. 209–236.
20. Bellen, A., Zennaro, M.: Parallel algorithms for initial-value problems for difference
    and differential equations. In: J. Comput. Appl. Math., 1989. Volume 25. Issue 3.
    P. 341-350.
21. Lions, J.-L., Maday, Y., Turinici, G.: A parareal in time discretization of PDEs.
    In: C.R. Acad. Sci. Paris, Serie I, 2001332, 2001. P. 661–668.