25 State() { m_time = 0; }
139 bool_t evolve(
double &tMax, int64_t &maxEvents,
double startTime = 0,
bool initEvents =
true);
177 #endif // ALGORITHM_H
Type to return true/false with error description.
Definition: booltype.h:25
This is a base class describing the simulation state of an mNRM algorithm.
Definition: algorithm.h:22
bool_t evolve(double &tMax, int64_t &maxEvents, double startTime=0, bool initEvents=true)
This advances the simulation state specified in the constructor using the core mNRM.
Definition: algorithm.cpp:27
virtual void onAboutToFire(EventBase *pEvt)
Called right before pEvt is fired.
Definition: algorithm.h:163
virtual void onFiredEvent(EventBase *pEvt)
Called after pEvt is fired.
Definition: algorithm.h:166
void setTime(double t)
Set the simulation time, which is normally only done by the Algorithm in use (but may be necessary wh...
Definition: algorithm.h:41
virtual void advanceEventTimes(EventBase *pScheduledEvent, double dt)
Advance the times of the necessary events to the time when dt has passed, ignoring pScheduledEvent si...
Definition: algorithm.cpp:129
virtual void onAlgorithmLoop(bool finished)
Called at the end of each algorithm loop, with finished set to true if the loop will be exited...
Definition: algorithm.h:170
Algorithm(State &state, GslRandomNumberGenerator &rng)
Constructor of the class, to which the simulation state must be specified as well as the random numbe...
Definition: algorithm.cpp:12
double getTime() const
Retrieve the current simulation time, which is stored by the Algorithm instance in use (note that unt...
Definition: algorithm.h:34
virtual bool_t getNextScheduledEvent(double &dt, EventBase **ppEvt)
Store the next event to be fired in ppEvt and store the real world time that will have passed until i...
Definition: algorithm.cpp:124
This class allows you to generate random numbers, and uses the GNU Scientific Library for this...
Definition: gslrandomnumbergenerator.h:16
double getTime() const
This function returns the current time of the simulation.
Definition: algorithm.h:142
GslRandomNumberGenerator * getRandomNumberGenerator() const
Returns the random number generator that was specified in the constructor.
Definition: algorithm.h:145
This class contains the core algorithm (as shown on the main page of the documentation) to execute th...
Definition: algorithm.h:68
State * getState() const
Returns the simulation state instance that was specified in the constructor.
Definition: algorithm.h:148
This is the base class for events in the mNRM algorithm.
Definition: eventbase.h:55
virtual bool_t initEventTimes() const
Generate the internal times for the events present in the algorithm (called by State::evolve dependin...
Definition: algorithm.cpp:119