My Project
Opm::SimulatorTimerInterface Class Referenceabstract

Interface class for SimulatorTimer objects, to be improved. More...

#include <SimulatorTimerInterface.hpp>

Inheritance diagram for Opm::SimulatorTimerInterface:
Opm::AdaptiveSimulatorTimer Opm::SimulatorTimer

Public Member Functions

virtual ~SimulatorTimerInterface ()
 destructor
 
virtual int currentStepNum () const =0
 Current step number. More...
 
virtual int reportStepNum () const
 Current report step number. This might differ from currentStepNum in case of sub stepping.
 
virtual double currentStepLength () const =0
 Current step length. More...
 
virtual double stepLengthTaken () const =0
 Previous step length. More...
 
virtual double reportStepLengthTaken () const
 Previous report step length. More...
 
virtual double simulationTimeElapsed () const =0
 Time elapsed since the start of the simulation until the beginning of the current time step [s].
 
virtual void advance ()=0
 advance time by currentStepLength
 
virtual bool done () const =0
 Return true if timer indicates that simulation of timer interval is finished.
 
virtual bool initialStep () const =0
 Whether the current step is the first step.
 
virtual boost::posix_time::ptime startDateTime () const =0
 Return start date of simulation.
 
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].
 
virtual bool lastStepFailed () const =0
 Return true if last time step failed.
 
virtual std::unique_ptr< SimulatorTimerInterfaceclone () const =0
 return copy of current timer instance
 

Protected Member Functions

 SimulatorTimerInterface ()
 Default constructor, protected to not allow explicit instances of this class.
 

Detailed Description

Interface class for SimulatorTimer objects, to be improved.

Member Function Documentation

◆ currentStepLength()

virtual double Opm::SimulatorTimerInterface::currentStepLength ( ) const
pure virtual

Current step length.

This is the length of the step the simulator will take in the next iteration.

Note
if done(), it is an error to call currentStepLength().

Implemented in Opm::SimulatorTimer, and Opm::AdaptiveSimulatorTimer.

◆ currentStepNum()

virtual int Opm::SimulatorTimerInterface::currentStepNum ( ) const
pure virtual

Current step number.

This is the number of timesteps that has been completed from the start of the run. The time after initialization but before the simulation has started is timestep number zero.

Implemented in Opm::SimulatorTimer, and Opm::AdaptiveSimulatorTimer.

◆ reportStepLengthTaken()

virtual double Opm::SimulatorTimerInterface::reportStepLengthTaken ( ) const
inlinevirtual

Previous report step length.

This is the length of the step that was taken to arrive at this report step time.

Note
if no increments have been done (i.e. the timer is still in its constructed state and reportStepNum() == 0), it is an error to call stepLengthTaken().

◆ stepLengthTaken()

virtual double Opm::SimulatorTimerInterface::stepLengthTaken ( ) const
pure virtual

Previous step length.

This is the length of the step that was taken to arrive at this time.

Note
if no increments have been done (i.e. the timer is still in its constructed state and currentStepNum() == 0), it is an error to call stepLengthTaken().

Implemented in Opm::SimulatorTimer, and Opm::AdaptiveSimulatorTimer.


The documentation for this class was generated from the following files: