eosim               EoSimulator Programmer's Manual

 

Name

      EoSimulator: Event Oriented SIMulator

 

Description

      EoSimulator is a discrete event simulation library created for educational purposes. It is based in event scheduling world view and supports event method (two phase executive) and three phase approach (three phase executive).

EoSimulator is implemented in C++. It has a modular architecture divided in four modules: Core, Dist, Statics and Utils. Each of these modules encapsulates a specific part of the library.

The Core module contains both the system modeling classes and the simulator’s engine. This module separates system modeling from running simulation using classes such as Model and Experiment. It’s intended that the programmer first build a model and then simulates it as he pleases.

The Dist module contains pseudo-random number generators and distributions. Like every simulation library, EoSimulator contains some of the most common distributions (normal, log normal, negative exponential) and one random number generator. It also provides the user with simple interfaces in order to add more distributions and generators.

The Statics module contains output data collectors. EoSimulator implements two kinds of collectors, time series histograms and time weighted histograms.

The Utils module has the collections defined by the library. The library provides the programmer with built-in containers. Its interface is quite standard and easy to understand.

 

EoSimulator’s namespaces

eosim::core

eosim::dist

eosim::statics

eosim::utils