|
My Project
|
Simulation timer for adaptive time stepping. More...
#include <AdaptiveSimulatorTimer.hpp>
Public Member Functions | |
| AdaptiveSimulatorTimer (const SimulatorTimerInterface &timer, const double lastStepTaken, const double maxTimeStep=std::numeric_limits< double >::max()) | |
| constructor taking a simulator timer to determine start and end time | |
| AdaptiveSimulatorTimer & | operator++ () |
| advance time by currentStepLength | |
| void | advance () |
| advance time by currentStepLength | |
| void | provideTimeStepEstimate (const double dt_estimate) |
| provide and estimate for new time step size | |
| bool | initialStep () const |
| Whether this is the first step. | |
| int | currentStepNum () const |
| int | reportStepNum () const |
| return current report step | |
| double | currentStepLength () const |
| double | totalTime () const |
| double | simulationTimeElapsed () const |
| bool | done () const |
| double | averageStepLength () const |
| return average step length used so far | |
| double | maxStepLength () const |
| return max step length used so far | |
| double | minStepLength () const |
| return min step length used so far | |
| double | stepLengthTaken () const |
| Previous step length. | |
| void | report (std::ostream &os) const |
| report start and end time as well as used steps so far | |
| boost::posix_time::ptime | startDateTime () const |
| start date time of simulation | |
| bool | lastStepFailed () const |
| Return true if last time step failed. | |
| void | setLastStepFailed (bool lastStepFailed) |
| tell the timestepper whether timestep failed or not | |
| virtual std::unique_ptr< SimulatorTimerInterface > | clone () const |
| return copy of object | |
Public Member Functions inherited from Opm::SimulatorTimerInterface | |
| virtual | ~SimulatorTimerInterface () |
| destructor | |
| virtual double | reportStepLengthTaken () const |
| Previous report step length. | |
| virtual boost::posix_time::ptime | currentDateTime () const |
| Return the current time as a posix time object. | |
| virtual time_t | currentPosixTime () const |
| Time elapsed since the start of the POSIX epoch (Jan 1st, 1970) until the current time step begins [s]. | |
Protected Attributes | |
| std::shared_ptr< boost::posix_time::ptime > | start_date_time_ |
| const double | start_time_ |
| const double | total_time_ |
| const int | report_step_ |
| const double | max_time_step_ |
| double | current_time_ |
| double | dt_ |
| int | current_step_ |
| std::vector< double > | steps_ |
| bool | lastStepFailed_ |
Additional Inherited Members | |
Protected Member Functions inherited from Opm::SimulatorTimerInterface | |
| SimulatorTimerInterface () | |
| Default constructor, protected to not allow explicit instances of this class. | |
Simulation timer for adaptive time stepping.
| Opm::AdaptiveSimulatorTimer::AdaptiveSimulatorTimer | ( | const SimulatorTimerInterface & | timer, |
| const double | lastStepTaken, | ||
| const double | maxTimeStep = std::numeric_limits<double>::max() |
||
| ) |
constructor taking a simulator timer to determine start and end time
| timer | in case of sub stepping this is the outer timer |
| lastStepTaken | last suggested time step |
| maxTimeStep | maximum time step allowed |
|
inlinevirtual |
advance time by currentStepLength
Implements Opm::SimulatorTimerInterface.
|
virtual |
return copy of object
Implements Opm::SimulatorTimerInterface.
|
virtual |
Implements Opm::SimulatorTimerInterface.
|
virtual |
Implements Opm::SimulatorTimerInterface.
|
virtual |
Implements Opm::SimulatorTimerInterface.
|
virtual |
Whether this is the first step.
Implements Opm::SimulatorTimerInterface.
|
inlinevirtual |
Return true if last time step failed.
Implements Opm::SimulatorTimerInterface.
|
virtual |
return current report step
Reimplemented from Opm::SimulatorTimerInterface.
|
virtual |
Implements Opm::SimulatorTimerInterface.
|
virtual |
start date time of simulation
Implements Opm::SimulatorTimerInterface.
|
virtual |
Previous step length.
This is the length of the step that was taken to arrive at this time.
Implements Opm::SimulatorTimerInterface.
| double Opm::AdaptiveSimulatorTimer::totalTime | ( | ) | const |