|
MaMiCo 1.2
|
#include <ParallelTimeIntegrationService.h>

Classes | |
| struct | PintDomain |
Public Types | |
| using | State = coupling::interface::PintableMacroSolverState |
| using | Solver = coupling::interface::PintableMacroSolver |
Public Member Functions | |
| ParallelTimeIntegrationService (coupling::configurations::MaMiCoConfiguration< dim > mamicoConfig, Scenario *scenario) | |
| void | run (int num_cycles) |
| int | getPintDomain () const |
| int | getRank () const |
| bool | isPintEnabled () const |
| int | getInteration () const |
| MPI_Comm | getPintComm () const |
Private Member Functions | |
| void | run_cycles (int start, int end) |
| bool | isFirst () const |
| bool | isLast () const |
| PintDomain | setup_domain (int num_cycles) const |
| void | setup_solvers (PintDomain domain) |
| void | receive (std::unique_ptr< State > &state) const |
| void | send (std::unique_ptr< State > &state) const |
| void | get_past_state (std::unique_ptr< State > &state) const |
| void | init_parareal () |
| void | run_parareal (int iterations) |
Private Attributes | |
| int | _pint_domain |
| int | _rank |
| int | _ranks_per_domain |
| int | _world_rank |
| MPI_Comm | _local_pint_comm |
| coupling::configurations::TimeIntegrationConfiguration | _cfg |
| Scenario * | _scenario |
| std::unique_ptr< Solver > | _supervisor |
| std::function< std::unique_ptr< State >(const std::unique_ptr< State > &)> | _F |
| std::function< std::unique_ptr< State >(const std::unique_ptr< State > &)> | _G |
| std::unique_ptr< State > | _u_0 |
| std::unique_ptr< State > | _u_last_past |
| std::unique_ptr< State > | _u_last_future |
| std::unique_ptr< State > | _u_next_past |
| std::unique_ptr< State > | _u_next_future |
| int | _iteration {0} |
Service to manage timeloop of a coupled simulation scenario. Supports sequential or parallel-in-time integration using a Parareal variant, as described in "Blumers, A. L., Li, Z., & Karniadakis, G. E. (2019). Supervised parallel-in-time algorithm for long-time Lagrangian simulations of stochastic dynamics: Application to hydrodynamics. Journal of Computational Physics, 393, 214-228".