.simList-class: The simList
class
Description
Contains the minimum components of a SpaDES
simulation.
Various slot accessor methods (i.e., get and set functions) are provided
(see 'Accessor Methods' below).Event Lists
Event lists are sorted (keyed) first by time, second by priority.
Each event is represented by a data.table
row consisting of:
ll{
eventTime
The time the event is to occur.
moduleName
The module from which the event is taken.
eventType
A character string for the programmer-defined event type.
eventPriority
The priority given to the event.
}Details
Based on code from chapter 7.8.3 of Matloff (2011): "Discrete event simulation".
Here, we implement a discrete event simulation in a more modular fashion so
it's easier to add simulation components (i.e., "simulation modules").
We use S4 classes and methods, and use data.table
instead of
data.frame
to implement the event queue (because it is much
more efficient).References
Matloff, N. (2011). The Art of R Programming (ch. 7.8.3). San Fransisco, CA: No Starch Press, Inc.. Retrieved from https://www.nostarch.com/artofr.htm