aivika-4.1.1: A multi-paradigm simulation library

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

Simulation.Aivika.Process.Random

Description

Tested with: GHC 7.10.1

This module defines helper functions, which are useful to hold the Process computation for a time interval according to some random distribution.

Synopsis

Documentation

randomUniformProcess Source

Arguments

:: Double

the minimum time interval

-> Double

the maximum time interval

-> Process Double

a computation of the time interval for which the process was actually held

Hold the process for a random time interval distributed uniformly.

randomUniformProcess_ Source

Arguments

:: Double

the minimum time interval

-> Double

the maximum time interval

-> Process () 

Hold the process for a random time interval distributed uniformly.

randomUniformIntProcess Source

Arguments

:: Int

the minimum time interval

-> Int

the maximum time interval

-> Process Int

a computation of the time interval for which the process was actually held

Hold the process for a random time interval distributed uniformly.

randomUniformIntProcess_ Source

Arguments

:: Int

the minimum time interval

-> Int

the maximum time interval

-> Process () 

Hold the process for a random time interval distributed uniformly.

randomNormalProcess Source

Arguments

:: Double

the mean time interval

-> Double

the time interval deviation

-> Process Double

a computation of the time interval for which the process was actually held

Hold the process for a random time interval distributed normally.

randomNormalProcess_ Source

Arguments

:: Double

the mean time interval

-> Double

the time interval deviation

-> Process () 

Hold the process for a random time interval distributed normally.

randomExponentialProcess Source

Arguments

:: Double

the mean time interval (the reciprocal of the rate)

-> Process Double

a computation of the time interval for which the process was actually held

Hold the process for a random time interval distributed exponentially with the specified mean (the reciprocal of the rate).

randomExponentialProcess_ Source

Arguments

:: Double

the mean time interval (the reciprocal of the rate)

-> Process () 

Hold the process for a random time interval distributed exponentially with the specified mean (the reciprocal of the rate).

randomErlangProcess Source

Arguments

:: Double

the scale (the reciprocal of the rate)

-> Int

the shape

-> Process Double

a computation of the time interval for which the process was actually held

Hold the process for a random time interval having the Erlang distribution with the specified scale (the reciprocal of the rate) and shape parameters.

randomErlangProcess_ Source

Arguments

:: Double

the scale (the reciprocal of the rate)

-> Int

the shape

-> Process () 

Hold the process for a random time interval having the Erlang distribution with the specified scale (the reciprocal of the rate) and shape parameters.

randomPoissonProcess Source

Arguments

:: Double

the mean time interval

-> Process Int

a computation of the time interval for which the process was actually held

Hold the process for a random time interval having the Poisson distribution with the specified mean.

randomPoissonProcess_ Source

Arguments

:: Double

the mean time interval

-> Process () 

Hold the process for a random time interval having the Poisson distribution with the specified mean.

randomBinomialProcess Source

Arguments

:: Double

the probability

-> Int

the number of trials

-> Process Int

a computation of the time interval for which the process was actually held

Hold the process for a random time interval having the binomial distribution with the specified probability and trials.

randomBinomialProcess_ Source

Arguments

:: Double

the probability

-> Int

the number of trials

-> Process () 

Hold the process for a random time interval having the binomial distribution with the specified probability and trials.