dune-fem
2.8-git
|
general base for time providers More...
#include <dune/fem/solver/timeprovider.hh>
Public Member Functions | |
TimeProviderBase (const ParameterReader ¶meter=Parameter::container()) | |
TimeProviderBase (const double startTime, const ParameterReader ¶meter=Parameter::container()) | |
virtual | ~TimeProviderBase () |
void | backup () const |
backup persistent object More... | |
void | restore () |
restore persistent object More... | |
TimeProviderBase (const ThisType &)=delete | |
ThisType & | operator= (const ThisType &)=delete |
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 More... | |
bool | timeStepValid () const |
return if this time step should be used More... | |
Protected Member Functions | |
void | advance () |
void | initTimeStepEstimate () |
virtual void | insertSubData () |
insert possible sub data of object More... | |
virtual void | removeSubData () |
remove possible sub data of object More... | |
virtual void * | pointer () |
Protected Attributes | |
double | time_ |
int | timeStep_ |
double | dt_ |
double | invdt_ |
bool | valid_ |
bool | dtEstimateValid_ |
double | dtEstimate_ |
double | dtUpperBound_ |
ParameterReader | parameter_ |
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.
|
inline |
|
inlineexplicit |
|
inlinevirtual |
|
delete |
|
inlineprotected |
|
inlinevirtual |
backup persistent object
Implements Dune::Fem::PersistentObject.
Reimplemented in Dune::Fem::TimeProvider< CollectiveCommunication >, and Dune::Fem::TimeProvider< Grid::Traits::CollectiveCommunication >.
|
inline |
obtain the size of the current time step
|
inlineprotected |
|
inlineprotectedvirtualinherited |
insert possible sub data of object
Reimplemented in Dune::Fem::DiscreteFunctionDefault< Impl >, Dune::Fem::DiscreteFunctionDefault< HierarchicalDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< VectorDiscreteFunction< DiscreteFunctionSpace, Vector > >, Dune::Fem::DiscreteFunctionDefault< ISTLBlockVectorDiscreteFunction< DiscreteFunctionSpace, Block > >, Dune::Fem::DiscreteFunctionDefault< CombinedDiscreteFunction< ContainedDiscreteFunctionImp, N > >, Dune::Fem::DiscreteFunctionDefault< BlockVectorDiscreteFunction< DiscreteFunctionSpace, BlockVector > >, and Dune::Fem::DiscreteFunctionDefault< TupleDiscreteFunction< DiscreteFunctions ... > >.
|
inline |
count current time step a not valid
|
inline |
obtain the size of the inverse of the current time step
|
inlineprotectedvirtualinherited |
Reimplemented in Dune::Fem::PersistenceManager::WrapObject< ObjectType, false >.
|
inline |
set time step estimate to minimum of given value and internal time step estiamte
[in] | dtEstimate | time step size estimate |
|
inline |
set upper bound for time step to minimum of given value and internal bound
[in] | upperBound | time step size estimate |
|
inlineprotectedvirtualinherited |
remove possible sub data of object
Reimplemented in Dune::Fem::DiscreteFunctionDefault< Impl >, Dune::Fem::DiscreteFunctionDefault< HierarchicalDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< VectorDiscreteFunction< DiscreteFunctionSpace, Vector > >, Dune::Fem::DiscreteFunctionDefault< ISTLBlockVectorDiscreteFunction< DiscreteFunctionSpace, Block > >, Dune::Fem::DiscreteFunctionDefault< CombinedDiscreteFunction< ContainedDiscreteFunctionImp, N > >, Dune::Fem::DiscreteFunctionDefault< BlockVectorDiscreteFunction< DiscreteFunctionSpace, BlockVector > >, and Dune::Fem::DiscreteFunctionDefault< TupleDiscreteFunction< DiscreteFunctions ... > >.
|
inlinevirtual |
restore persistent object
Implements Dune::Fem::PersistentObject.
Reimplemented in Dune::Fem::TimeProvider< CollectiveCommunication >, and Dune::Fem::TimeProvider< Grid::Traits::CollectiveCommunication >.
|
inline |
obtain the current time
|
inline |
obtain number of the current time step
|
inline |
obtain current estimate on time step
|
inline |
return if this time step should be used
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |