OpenLB 1.7
|
BaseSolver implements the solving process of an instationary simulation, consisting of preSimulationTasks, time-stepping and postprocessing. More...
#include <lbSolver.h>
Public Types | |
using | t = T |
using | Parameters_t = PARAMETERS |
Public Member Functions | |
BaseSolver (utilities::TypeIndexedSharedPtrTuple< PARAMETERS > params) | |
virtual void | initialize ()=0 |
Actions that shall be executed once after construction. | |
virtual void | preProcess () |
Configurations that take place before solving. | |
void | solve () |
virtual void | postProcess () |
Actions that take place after solving. | |
template<typename KEY > | |
auto & | parameters (KEY=KEY()) |
Access to parameter structs as parameters(KEY()) | |
template<typename KEY > | |
auto & | parameters (KEY=KEY()) const |
template<typename KEY > | |
auto & | parameters (meta::id< KEY >) |
template<typename KEY > | |
auto & | parameters (meta::id< KEY >) const |
Public Attributes | |
utilities::TypeIndexedSharedPtrTuple< PARAMETERS > | _parameters |
Protected Member Functions | |
virtual void | prepareSimulation ()=0 |
Actions that shall be executed before the time-stepping. | |
virtual void | timeStep (std::size_t iT)=0 |
Defines what to do in a single time step. | |
virtual bool | exitCondition (std::size_t iT) const =0 |
Condition, when to exit the time-stepping loop Returns true if the loop shall be continued. | |
virtual void | postSimulation ()=0 |
Actions that shall be executed after the time-stepping. | |
Protected Attributes | |
bool | _isInitialized {false} |
std::size_t | _iT {0} |
bool | _finishedTimeLoop {false} |
BaseSolver implements the solving process of an instationary simulation, consisting of preSimulationTasks, time-stepping and postprocessing.
Definition at line 40 of file lbSolver.h.
using olb::BaseSolver< T, PARAMETERS >::Parameters_t = PARAMETERS |
Definition at line 47 of file lbSolver.h.
using olb::BaseSolver< T, PARAMETERS >::t = T |
Definition at line 46 of file lbSolver.h.
|
inline |
Definition at line 56 of file lbSolver.h.
|
protectedpure virtual |
Condition, when to exit the time-stepping loop Returns true if the loop shall be continued.
Implemented in olb::LbSolver< T, PARAMETERS, LATTICES >.
|
pure virtual |
Actions that shall be executed once after construction.
Implemented in olb::LbSolver< T, PARAMETERS, LATTICES >.
|
inline |
Access to parameter structs as parameters(KEY())
Definition at line 104 of file lbSolver.h.
References olb::BaseSolver< T, PARAMETERS >::_parameters.
|
inline |
Definition at line 108 of file lbSolver.h.
References olb::BaseSolver< T, PARAMETERS >::_parameters.
|
inline |
Definition at line 112 of file lbSolver.h.
References olb::BaseSolver< T, PARAMETERS >::_parameters.
|
inline |
Definition at line 116 of file lbSolver.h.
References olb::BaseSolver< T, PARAMETERS >::_parameters.
|
inlinevirtual |
|
protectedpure virtual |
Actions that shall be executed after the time-stepping.
Implemented in olb::LbSolver< T, PARAMETERS, LATTICES >.
|
protectedpure virtual |
Actions that shall be executed before the time-stepping.
Implemented in olb::LbSolver< T, PARAMETERS, LATTICES >.
|
inlinevirtual |
|
inline |
Definition at line 66 of file lbSolver.h.
References olb::BaseSolver< T, PARAMETERS >::_finishedTimeLoop, olb::BaseSolver< T, PARAMETERS >::_isInitialized, olb::BaseSolver< T, PARAMETERS >::_iT, olb::BaseSolver< T, PARAMETERS >::exitCondition(), olb::BaseSolver< T, PARAMETERS >::initialize(), olb::BaseSolver< T, PARAMETERS >::postSimulation(), olb::BaseSolver< T, PARAMETERS >::prepareSimulation(), and olb::BaseSolver< T, PARAMETERS >::timeStep().
|
protectedpure virtual |
Defines what to do in a single time step.
Implemented in olb::LbSolver< T, PARAMETERS, LATTICES >.
|
protected |
Definition at line 53 of file lbSolver.h.
|
protected |
Definition at line 51 of file lbSolver.h.
|
protected |
Definition at line 52 of file lbSolver.h.
utilities::TypeIndexedSharedPtrTuple<PARAMETERS> olb::BaseSolver< T, PARAMETERS >::_parameters |
Definition at line 48 of file lbSolver.h.