| Copyright | Copyright (c) 2009-2015, David Sorokin <david.sorokin@gmail.com> | 
|---|---|
| License | BSD3 | 
| Maintainer | David Sorokin <david.sorokin@gmail.com> | 
| Stability | experimental | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
Simulation.Aivika.Trans.Stream.Random
Contents
Description
Tested with: GHC 7.10.1
This module defines random streams of events, which are useful for describing the input of the model.
- randomStream :: MonadDES m => Parameter m (Double, a) -> Stream m (Arrival a)
 - randomUniformStream :: MonadDES m => Double -> Double -> Stream m (Arrival Double)
 - randomUniformIntStream :: MonadDES m => Int -> Int -> Stream m (Arrival Int)
 - randomTriangularStream :: MonadDES m => Double -> Double -> Double -> Stream m (Arrival Double)
 - randomNormalStream :: MonadDES m => Double -> Double -> Stream m (Arrival Double)
 - randomLogNormalStream :: MonadDES m => Double -> Double -> Stream m (Arrival Double)
 - randomExponentialStream :: MonadDES m => Double -> Stream m (Arrival Double)
 - randomErlangStream :: MonadDES m => Double -> Int -> Stream m (Arrival Double)
 - randomPoissonStream :: MonadDES m => Double -> Stream m (Arrival Int)
 - randomBinomialStream :: MonadDES m => Double -> Int -> Stream m (Arrival Int)
 - randomGammaStream :: MonadDES m => Double -> Double -> Stream m (Arrival Double)
 - randomBetaStream :: MonadDES m => Double -> Double -> Stream m (Arrival Double)
 - randomWeibullStream :: MonadDES m => Double -> Double -> Stream m (Arrival Double)
 - randomDiscreteStream :: MonadDES m => DiscretePDF Double -> Stream m (Arrival Double)
 
Stream of Random Events
Arguments
| :: MonadDES m | |
| => Parameter m (Double, a) | compute a pair of the delay and event of type   | 
| -> Stream m (Arrival a) | a stream of delayed events  | 
Return a sream of random events that arrive with the specified delay.
Arguments
| :: MonadDES 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.
Arguments
| :: MonadDES 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.
Arguments
| :: MonadDES m | |
| => Double | the minimum delay  | 
| -> Double | the median of the delay  | 
| -> Double | the maximum delay  | 
| -> Stream m (Arrival Double) | the stream of random events with the delays generated  | 
Create a new stream with random delays having the triangular distribution.
Arguments
| :: MonadDES 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.
Arguments
| :: MonadDES m | |
| => Double | the mean of a normal distribution which this distribution is derived from  | 
| -> Double | the deviation of a normal distribution which this distribution is derived from  | 
| -> Stream m (Arrival Double) | the stream of random events with the delays generated  | 
Create a new stream with random delays having the lognormal distribution.
randomExponentialStream Source
Arguments
| :: MonadDES 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).
Arguments
| :: MonadDES 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.
Arguments
| :: MonadDES 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.
Arguments
| :: MonadDES 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.
Arguments
| :: MonadDES m | |
| => Double | the shape  | 
| -> Double | the scale (a reciprocal of the rate)  | 
| -> Stream m (Arrival Double) | the stream of random events with the delays generated  | 
Return a new stream with random delays having the Gamma distribution by the specified shape and scale.
Arguments
| :: MonadDES m | |
| => Double | the shape (alpha)  | 
| -> Double | the shape (beta)  | 
| -> Stream m (Arrival Double) | the stream of random events with the delays generated  | 
Return a new stream with random delays having the Beta distribution by the specified shape parameters (alpha and beta).
Arguments
| :: MonadDES m | |
| => Double | shape  | 
| -> Double | scale  | 
| -> Stream m (Arrival Double) | the stream of random events with the delays generated  | 
Return a new stream with random delays having the Weibull distribution by the specified shape and scale.