Skip to content

Implementation of Parareal Driver module

Chris Cantwell requested to merge dmoxey/nektar:feature/parareal-mpi into master

Issue/feature addressed

Implementation of Parareal algorithm in Nektar++.

Proposed solution

It is implemented as a Driver module and can therefore be flexibly leveraged by our full range of solvers.


A more detailed description of the changes. Please include any details necessary for reviewers to understand your work, and point out particular points would like them to pay particular attention to.


The following test files are added to validate the convergence of the Parareal algorithm

  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m6_iter0.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m6_iter1.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m6_iter2.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m6_iter3.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m6_iter4.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m12_iter0.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m12_iter1.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m12_iter2.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m12_iter3.tst
  • solvers/ADRSolver/Tests/PararealDriverImDiffusion_m12_iter4.tst


  • Functions and classes, or changes to them, are documented.
  • User guide/documentation is updated.
  • Changelog is updated.
  • Suitable tests added for new functionality.
  • Contributed code is correctly formatted. (See the contributing guidelines).
  • License added to any new files.
  • No extraneous files have been added (e.g. compiler output or test data files).


On the 19.07 the code formatting (code style) was standardised using clang-format, over the whole Nektar++ code. This means changes in your branch will conflict with formatting changes on the master branch. To resolve these conflicts , see #295 (closed)

Edited by Jacques Xing

Merge request reports