Algorithm 1016: PyMGRIT: A Python']Python Package for the Parallel-in-time Method MGRIT

被引:4
作者
Hahne, Jens [1 ]
Friedhoff, Stephanie [1 ]
Bolten, Matthias [1 ]
机构
[1] Berg Univ Wuppertal, Fak Math & Nat Wissensch, D-42097 Wuppertal, Germany
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 2021年 / 47卷 / 02期
关键词
Multigrid-reduction-in-time (MGRIT); parallel-in-time integration; PARAREAL; DISCRETIZATION;
D O I
10.1145/3446979
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In this article, we introduce the Python framework PyMGRIT, which implements the multigrid-reduction-in-time (MGRIT) algorithm for solving (non-)linear systems arising from the discretization of time-dependent problems. The MGRIT algorithm is a reduction-based iterative method that allows parallel-in-time simulations, i.e., calculating multiple time steps simultaneously in a simulation, using a time-grid hierarchy. The PyMGRIT framework includes many different variants of the MGRIT algorithm, ranging from different multi-grid cycle types and relaxation schemes, various coarsening strategies, including time-only and space-time coarsening, and the ability to utilize different time integrators on different levels in the multigrid hierachy. The comprehensive documentation with tutorials and many examples and the fully documented code allow an easy start into the work with the package. The functionality of the code is ensured by automated serial and parallel tests using continuous integration. PyMGRIT supports serial runs suitable for prototyping and testing of new approaches, as well as parallel runs using the Message Passing Interface (MPI). In this manuscript, we describe the implementation of the MGRIT algorithm in PyMGRIT and present the usage from both a user and a developer point of view. Three examples illustrate different aspects of the package itself, especially running tests with pure time parallelism, as well as space-time parallelism through the coupling of PyMGRIT with PETSc or Firedrake.
引用
收藏
页数:22
相关论文
共 57 条
  • [1] [Anonymous], 2012, AUTOMATED SOLUTION D
  • [2] [Anonymous], 2016, POWER ENERGY SOC GEN
  • [3] Balay S., 2020, PETSC USERS MANUAL
  • [4] Structural analysis of electrical circuits including magnetoquasistatic devices
    Bartel, Andreas
    Baumanns, Sascha
    Schoeps, Sebastian
    [J]. APPLIED NUMERICAL MATHEMATICS, 2011, 61 (12) : 1257 - 1270
  • [5] Bolten Matthias, 2019, ARXIVMATHNA191203106
  • [6] BRANDT A, 1977, MATH COMPUT, V31, P333, DOI 10.1090/S0025-5718-1977-0431719-X
  • [7] PARALLEL HIGH-ORDER INTEGRATORS
    Christlieb, Andrew J.
    Macdonald, Colin B.
    Ong, Benjamin W.
    [J]. SIAM JOURNAL ON SCIENTIFIC COMPUTING, 2010, 32 (02) : 818 - 835
  • [8] Analysis of a permanent magnet generator with dual formulations using periodicity conditions and moving band
    da Luz, MVF
    Dular, P
    Sadowski, N
    Geuzaine, C
    Bastos, JPA
    [J]. IEEE TRANSACTIONS ON MAGNETICS, 2002, 38 (02) : 961 - 964
  • [9] Parallel distributed computing using Python']Python
    Dalcin, Lisandro D.
    Paz, Rodrigo R.
    Kler, Pablo A.
    Cosimo, Alejandro
    [J]. ADVANCES IN WATER RESOURCES, 2011, 34 (09) : 1124 - 1139
  • [10] De Sterck Hans, 2019, ARXIVMATHNA191003726