aivika-transformers-2.0: Transformers for the Aivika simulation library

CopyrightCopyright (c) 2009-2014, David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Simulation.Aivika.Trans.Stream.Random

Contents

Description

Tested with: GHC 7.8.3

This module defines random streams of events, which are useful for describing the input of the model.

Synopsis

Stream of Random Events

randomStream Source

Arguments

:: MonadComp m 
=> Parameter m (Double, a)

compute a pair of the delay and event of type a

-> Stream m (Arrival a)

a stream of delayed events

Return a sream of random events that arrive with the specified delay.

randomUniformStream Source

Arguments

:: MonadComp m 
=> Double

the minimum delay

-> Double

the maximum delay

-> Stream m (Arrival Double)

the stream of random events with the delays generated

Create a new stream with delays distributed uniformly.

randomUniformIntStream Source

Arguments

:: MonadComp m 
=> Int

the minimum delay

-> Int

the maximum delay

-> Stream m (Arrival Int)

the stream of random events with the delays generated

Create a new stream with integer delays distributed uniformly.

randomNormalStream Source

Arguments

:: MonadComp m 
=> Double

the mean delay

-> Double

the delay deviation

-> Stream m (Arrival Double)

the stream of random events with the delays generated

Create a new stream with delays distributed normally.

randomExponentialStream Source

Arguments

:: MonadComp m 
=> Double

the mean delay (the reciprocal of the rate)

-> Stream m (Arrival Double)

the stream of random events with the delays generated

Return a new stream with delays distibuted exponentially with the specified mean (the reciprocal of the rate).

randomErlangStream Source

Arguments

:: MonadComp m 
=> Double

the scale (the reciprocal of the rate)

-> Int

the shape

-> Stream m (Arrival Double)

the stream of random events with the delays generated

Return a new stream with delays having the Erlang distribution with the specified scale (the reciprocal of the rate) and shape parameters.

randomPoissonStream Source

Arguments

:: MonadComp m 
=> Double

the mean delay

-> Stream m (Arrival Int)

the stream of random events with the delays generated

Return a new stream with delays having the Poisson distribution with the specified mean.

randomBinomialStream Source

Arguments

:: MonadComp m 
=> Double

the probability

-> Int

the number of trials

-> Stream m (Arrival Int)

the stream of random events with the delays generated

Return a new stream with delays having the binomial distribution with the specified probability and trials.