dsp-0.1: Haskell Digital Signal ProcessingContentsIndex
Numeric.Random.Distribution.Normal
Portabilityportable
Stabilityexperimental
Maintainerm.p.donadio@ieee.org
Description
Module for transforming a list of uniform random variables into a list of normal random variables.
Synopsis
normal_clt :: Int -> (Double, Double) -> [Double] -> [Double]
normal_bm :: (Double, Double) -> [Double] -> [Double]
normal_ar :: (Double, Double) -> [Double] -> [Double]
normal_r :: (Double, Double) -> [Double] -> [Double]
Documentation
normal_clt
:: IntNumber of uniforms to sum
-> (Double, Double)(mu,sigma)
-> [Double]U
-> [Double]X

Normal random variables via the Central Limit Theorm (not explicity given, but see Ross)

If mu=0 and sigma=1, then this will generate numbers in the range [-n2,n2]

normal_bm
:: (Double, Double)(mu,sigma)
-> [Double]U
-> [Double]X

Normal random variables via the Box-Mueller Polar Method (Ross, pp 450--452)

If mu=0 and sigma=1, then this will generate numbers in the range [-8.57,8.57] assuing that the uniform RNG is really giving full precision for doubles.

normal_ar
:: (Double, Double)(mu,sigma)
-> [Double]U
-> [Double]X

Acceptance-Rejection Method (Ross, pp 448--450)

If mu=0 and sigma=1, then this will generate numbers in the range [-36.74,36.74] assuming that the uniform RNG is really giving full precision for doubles.

normal_r
:: (Double, Double)(mu,sigma)
-> [Double]U
-> [Double]X

Ratio Method (Kinderman-Monahan) (Knuth, v2, 2ed, pp 125--127)

If mu=0 and sigma=1, then this will generate numbers in the range [-1e15,1e15] (?) assuming that the uniform RNG is really giving full precision for doubles.

Produced by Haddock version 0.8