DUNE-FEM (unstable)
general base for time providers More...
#include <dune/fem/solver/timeprovider.hh>
Public Member Functions | |
void | backup () const |
backup persistent object | |
void | restore () |
restore persistent object | |
double | time () const |
obtain the current time More... | |
int | timeStep () const |
obtain number of the current time step More... | |
double | deltaT () const |
obtain the size of the current time step More... | |
double | inverseDeltaT () const |
obtain the size of the inverse of the current time step More... | |
double | timeStepEstimate () const |
obtain current estimate on time step More... | |
void | provideTimeStepEstimate (const double dtEstimate) |
set time step estimate to minimum of given value and internal time step estiamte More... | |
void | provideTimeStepUpperBound (const double upperBound) |
set upper bound for time step to minimum of given value and internal bound More... | |
void | invalidateTimeStep () |
count current time step a not valid | |
bool | timeStepValid () const |
return if this time step should be used | |
Protected Member Functions | |
virtual void | insertSubData () |
insert possible sub data of object | |
virtual void | removeSubData () |
remove possible sub data of object | |
Detailed Description
general base for time providers
This class consists of the methods required for example in the ODE Solvers, e.g., provideTimeStepEstimate and provideTimeStepUpperBound. InvalidateTimeStep can be used to mark this time step as invalid. Furthermore, method for accessing the simulation time, the time step counter and the time step size are provided.
The derived class TimeProvider provides the additional method required for implementing a time loop.
Member Function Documentation
◆ deltaT()
|
inline |
obtain the size of the current time step
- Returns
- the size of the current time step
References timeStepValid().
Referenced by DuneODE::ExplMultiStepBase< Operator >::solve(), DuneODE::ExplicitRungeKuttaSolver< DestinationImp >::solve(), and DuneODE::ExplMultiStepBase< Operator >::solveRK().
◆ inverseDeltaT()
|
inline |
obtain the size of the inverse of the current time step
- Returns
- the size of the inverse of the current time step
References timeStepValid().
◆ provideTimeStepEstimate()
|
inline |
set time step estimate to minimum of given value and internal time step estiamte
- Parameters
-
[in] dtEstimate time step size estimate
Referenced by DuneODE::ExplicitRungeKuttaSolver< DestinationImp >::initialize(), DuneODE::ExplMultiStepBase< Operator >::solve(), DuneODE::ExplicitRungeKuttaSolver< DestinationImp >::solve(), and DuneODE::ExplMultiStepBase< Operator >::solveRK().
◆ provideTimeStepUpperBound()
|
inline |
set upper bound for time step to minimum of given value and internal bound
- Parameters
-
[in] upperBound time step size estimate
◆ time()
|
inline |
obtain the current time
- Returns
- the current time
Referenced by Dune::Fem::TimeProvider< Communication >::restore(), DuneODE::ExplMultiStepBase< Operator >::solve(), DuneODE::ExplicitRungeKuttaSolver< DestinationImp >::solve(), DuneODE::ExplMultiStepBase< Operator >::solveRK(), and Dune::Fem::DataOutput< GridImp, DataImp >::write().
◆ timeStep()
|
inline |
obtain number of the current time step
- Returns
- the current time step counter
References timeStepValid().
Referenced by Dune::Fem::TimeProvider< Communication >::init(), Dune::Fem::TimeProvider< Communication >::next(), Dune::Fem::TimeProvider< Communication >::restore(), and Dune::Fem::CheckPointer< GridImp >::willWrite().
◆ timeStepEstimate()
|
inline |
obtain current estimate on time step
- Returns
- the current estimate for the time step
The documentation for this class was generated from the following file:
- dune/fem/solver/timeprovider.hh