EOSimulator’s Distribution Module contains facilities for random number generation and distribution sampling.
In this module we have encapsulated pseudo-random generators and distribution sampling. All distributions are subclasses of Distribution, an abstract class which defines the behavior of every distribution in EOSimulator. Every distribution has a pseudo-random number generator, defined by the interface NumberGenerator.
Finally NumberGeneratorFactory creates NumberGenerators according to the corresponding GenType label. This design allows the user to define both new generators and distribution.
Classes | |
class | eosim::dist::Distribution |
Distribution abstract class. More... | |
class | eosim::dist::LogNormalDist |
Log Normal Distribution. More... | |
class | eosim::dist::Mt19937 |
Mersenne Twister Random Number Generator. More... | |
class | eosim::dist::NegexpDist |
Negative Exponential Distribution. More... | |
class | eosim::dist::NormalDist |
Normal Distribution. More... | |
class | eosim::dist::NumberGenerator |
Random Number Generator Interface. More... | |
class | eosim::dist::NumberGeneratorFactory |
Random Number Generator Factory. More... | |
class | eosim::dist::PoissonDist |
Poisson Distribution. More... | |
class | eosim::dist::UniformDist |
Uniform Distribution. More... | |
Enumerations | |
enum | eosim::dist::GenType { eosim::dist::MT19937 } |
This enum defines labels for each generator suported by EOSimulator. More... |
enum eosim::dist::GenType |
This enum defines labels for each generator suported by EOSimulator.
It is used for create generators for the distributions dynamically, so each distribution has it's own generator. This enum defines a label for each type of number generator implemented in EOSimulator. In order to add a new generator in EOSimulator, GenType has to be updated by adding a new label for the generator.