AMDiS 2.10
The Adaptive Multi-Dimensional Simulation Toolbox
ProblemTimeInterface.hpp
1#pragma once
2
3namespace AMDiS
4{
5 class AdaptInfo;
6
15 {
16 public:
17 virtual ~ProblemTimeInterface() = default;
18
20 virtual void initTimeInterface() { /* do nothing */ };
21
23 virtual void setTime(AdaptInfo& adaptInfo) = 0;
24
26 virtual void initTimestep(AdaptInfo& adaptInfo) = 0;
27
29 virtual void closeTimestep(AdaptInfo& adaptInfo) = 0;
30
32 virtual void solveInitialProblem(AdaptInfo& adaptInfo) = 0;
33
35 virtual void transferInitialSolution(AdaptInfo& adaptInfo) = 0;
36 };
37
38} // end namespace AMDiS
Holds adapt parameters and infos about the problem.
Definition: AdaptInfo.hpp:26
Interface for time dependent problems. Concrete problems must override all pure virtual methods.
Definition: ProblemTimeInterface.hpp:15
virtual void closeTimestep(AdaptInfo &adaptInfo)=0
Called at the end of each timestep.
virtual void setTime(AdaptInfo &adaptInfo)=0
Executes all needed operations when the simulation time changes.
virtual void initTimestep(AdaptInfo &adaptInfo)=0
Called at the beginning of each timestep.
virtual void transferInitialSolution(AdaptInfo &adaptInfo)=0
Transfer the initial problem.
virtual void solveInitialProblem(AdaptInfo &adaptInfo)=0
Solves the initial problem.
virtual void initTimeInterface()
Called at the beginning of the adaption loop before any other call.
Definition: ProblemTimeInterface.hpp:20