AMDiS 2.10
The Adaptive Multi-Dimensional Simulation Toolbox
ProblemIterationInterface Class Referenceabstract

Interface for master problems needed by the adaption loop. A master problem can handle one single or multiple coupled problems. In the latter case, the master problem can determine the execution order of the build, solve, estimate, and adapt steps of the single problems in oneIteration(). More...

#include <ProblemIterationInterface.hpp>

Inherited by NewtonIteration< ProblemType >, and StandardProblemIteration [virtual].

Public Member Functions

virtual void beginIteration (AdaptInfo &)
 Called before each adaption loop iteration. More...
 
virtual Flag oneIteration (AdaptInfo &adaptInfo, Flag toDo=FULL_ITERATION)=0
 Determines the execution order of the single adaption steps. If adapt is true, mesh adaption will be performed. This allows to avoid mesh adaption, e.g. in timestep adaption loops of timestep adaptive strategies. More...
 
virtual void endIteration (AdaptInfo &)
 Called after each adaption loop iteration. More...
 
virtual int numProblems () const =0
 Returns number of managed problems. More...
 
virtual ProblemStatBaseproblem (int number=0)=0
 Returns the problem with the given number. If only one problem is managed by this master problem, the number hasn't to be given. More...
 
virtual ProblemStatBaseproblem (std::string const &name)=0
 Returns the problem with the given name. More...
 
virtual std::string const & name () const =0
 Returns the name of the problem. More...
 

Detailed Description

Interface for master problems needed by the adaption loop. A master problem can handle one single or multiple coupled problems. In the latter case, the master problem can determine the execution order of the build, solve, estimate, and adapt steps of the single problems in oneIteration().

Member Function Documentation

◆ beginIteration()

virtual void beginIteration ( AdaptInfo )
inlinevirtual

◆ endIteration()

virtual void endIteration ( AdaptInfo )
inlinevirtual

◆ name()

virtual std::string const & name ( ) const
pure virtual

Returns the name of the problem.

Implemented in NewtonIteration< ProblemType >, ProblemStat< Traits >, and StandardProblemIteration.

◆ numProblems()

virtual int numProblems ( ) const
pure virtual

Returns number of managed problems.

Implemented in NewtonIteration< ProblemType >, and StandardProblemIteration.

◆ oneIteration()

virtual Flag oneIteration ( AdaptInfo adaptInfo,
Flag  toDo = FULL_ITERATION 
)
pure virtual

Determines the execution order of the single adaption steps. If adapt is true, mesh adaption will be performed. This allows to avoid mesh adaption, e.g. in timestep adaption loops of timestep adaptive strategies.

Implemented in NewtonIteration< ProblemType >, StandardProblemIteration, and ProblemStat< Traits >.

Referenced by AdaptStationary::adapt(), AdaptInstationary::explicitTimeStrategy(), AdaptInstationary::implicitTimeStrategy(), and AdaptInstationary::simpleAdaptiveTimeStrategy().

◆ problem() [1/2]

virtual ProblemStatBase & problem ( int  number = 0)
pure virtual

Returns the problem with the given number. If only one problem is managed by this master problem, the number hasn't to be given.

Implemented in NewtonIteration< ProblemType >, and StandardProblemIteration.

◆ problem() [2/2]

virtual ProblemStatBase & problem ( std::string const &  name)
pure virtual

Returns the problem with the given name.

Implemented in NewtonIteration< ProblemType >, and StandardProblemIteration.


The documentation for this class was generated from the following file: