dune-fem 2.8.0
|
the same functionality as the Dune::TimeProvider. More...
#include <dune/fem/solver/timeprovider.hh>
Public Types | |
typedef Grid::Traits::CollectiveCommunication | CollectiveCommunicationType |
Public Member Functions | |
GridTimeProvider (const Grid &grid) | |
GridTimeProvider (const double startTime, const Grid &grid) | |
GridTimeProvider (const double startTime, const double cfl, const Grid &grid) | |
virtual | ~GridTimeProvider () |
void | init () |
init dt with time step estimate | |
void | init (const double timeStep) |
init dt with provided time step | |
void | next () |
goto next time step | |
void | next (const double timeStep) |
goto next time step | |
double | factor () const |
return the global factor number | |
void | restore (const double time, const int timeStep) |
restore time and timestep from outside (i.e. from former calculation) | |
virtual void | restore () |
restore persistent object | |
virtual void | backup () const |
backup persistent object | |
double | time () const |
obtain the current time | |
int | timeStep () const |
obtain number of the current time step | |
double | deltaT () const |
obtain the size of the current time step | |
double | inverseDeltaT () const |
obtain the size of the inverse of the current time step | |
double | timeStepEstimate () const |
obtain current estimate on time step | |
void | provideTimeStepEstimate (const double dtEstimate) |
set time step estimate to minimum of given value and internal time step estiamte | |
void | provideTimeStepUpperBound (const double upperBound) |
set upper bound for time step to minimum of given value and internal bound | |
void | invalidateTimeStep () |
count current time step a not valid | |
bool | timeStepValid () const |
return if this time step should be used | |
Protected Member Functions | |
void | initTimeStep (const double dtEstimate) |
double | getCflFactor () const |
int | getUpdateStep () const |
void | advance () |
void | initTimeStepEstimate () |
virtual void | insertSubData () |
insert possible sub data of object | |
virtual void | removeSubData () |
remove possible sub data of object | |
virtual void * | pointer () |
Protected Attributes | |
const DofManagerType & | dm_ |
int | sequence_ |
const CollectiveCommunicationType & | comm_ |
const double | cfl_ |
const int | updateStep_ |
int | counter_ |
ParameterReader | parameter_ |
double | dt_ |
double | invdt_ |
double | dtEstimate_ |
double | dtUpperBound_ |
bool | valid_ |
int | timeStep_ |
double | time_ |
bool | dtEstimateValid_ |
the same functionality as the Dune::TimeProvider.
This implementation of a timeprovider takes the CollectiveCommunicate from a Dune::Grid instance.
typedef Grid::Traits::CollectiveCommunication Dune::Fem::GridTimeProvider< Grid >::CollectiveCommunicationType |
|
inlineexplicit |
|
inline |
|
inline |
|
inlinevirtual |
|
inlineprotectedinherited |
|
inlinevirtualinherited |
backup persistent object
Reimplemented from Dune::Fem::TimeProviderBase.
|
inlineinherited |
obtain the size of the current time step
|
inlineinherited |
return the global factor number
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineinherited |
init dt with time step estimate
|
inlineinherited |
init dt with provided time step
[in] | timeStep | value of the first time step (is multiplied with factor) |
|
inlineprotected |
|
inlineprotectedinherited |
|
inlineprotectedvirtualinherited |
insert possible sub data of object
Reimplemented in Dune::Fem::DiscreteFunctionDefault< Impl >, Dune::Fem::DiscreteFunctionDefault< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< BlockVectorDiscreteFunction< DiscreteFunctionSpace, BlockVector > >, Dune::Fem::DiscreteFunctionDefault< CombinedDiscreteFunction< ContainedDiscreteFunctionImp, N > >, Dune::Fem::DiscreteFunctionDefault< HierarchicalDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< ISTLBlockVectorDiscreteFunction< DiscreteFunctionSpace, Block > >, Dune::Fem::DiscreteFunctionDefault< TupleDiscreteFunction< DiscreteFunctions ... > >, and Dune::Fem::DiscreteFunctionDefault< VectorDiscreteFunction< DiscreteFunctionSpace, Vector > >.
|
inlineinherited |
count current time step a not valid
|
inlineinherited |
obtain the size of the inverse of the current time step
|
inlineinherited |
goto next time step
Sets the size of the next time step to the current time step estimate and sets the estimate to infinity.
|
inlineinherited |
goto next time step
Sets the size of the next time step to the provided time step value and sets the estimate to infinity.
[in] | timeStep | value of the next time step (is multiplied with factor) |
|
inlineprotectedvirtualinherited |
Reimplemented in Dune::Fem::PersistenceManager::WrapObject< ObjectType, false >.
|
inlineinherited |
set time step estimate to minimum of given value and internal time step estiamte
[in] | dtEstimate | time step size estimate |
|
inlineinherited |
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< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< BlockVectorDiscreteFunction< DiscreteFunctionSpace, BlockVector > >, Dune::Fem::DiscreteFunctionDefault< CombinedDiscreteFunction< ContainedDiscreteFunctionImp, N > >, Dune::Fem::DiscreteFunctionDefault< HierarchicalDiscreteFunction< DiscreteFunctionSpace > >, Dune::Fem::DiscreteFunctionDefault< ISTLBlockVectorDiscreteFunction< DiscreteFunctionSpace, Block > >, Dune::Fem::DiscreteFunctionDefault< TupleDiscreteFunction< DiscreteFunctions ... > >, and Dune::Fem::DiscreteFunctionDefault< VectorDiscreteFunction< DiscreteFunctionSpace, Vector > >.
|
inlinevirtualinherited |
restore persistent object
Reimplemented from Dune::Fem::TimeProviderBase.
|
inlineinherited |
restore time and timestep from outside (i.e. from former calculation)
[in] | time | new time |
[in] | timeStep | new time step counter |
|
inlineinherited |
obtain the current time
|
inlineinherited |
obtain number of the current time step
|
inlineinherited |
obtain current estimate on time step
|
inlineinherited |
return if this time step should be used
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |