Data.Random.Distribution.Uniform
- data Uniform t = Uniform !t !t
- uniform :: Distribution Uniform a => a -> a -> RVar a
- data StdUniform t = StdUniform
- stdUniform :: Distribution StdUniform a => RVar a
- stdUniformPos :: (Distribution StdUniform a, Num a) => RVar a
- integralUniform :: Integral a => a -> a -> RVar a
- realFloatUniform :: RealFloat a => a -> a -> RVar a
- floatUniform :: Float -> Float -> RVar Float
- doubleUniform :: Double -> Double -> RVar Double
- fixedUniform :: HasResolution r => Fixed r -> Fixed r -> RVar (Fixed r)
- boundedStdUniform :: (Distribution Uniform a, Bounded a) => RVar a
- boundedEnumStdUniform :: (Enum a, Bounded a) => RVar a
- realFloatStdUniform :: RealFloat a => RVar a
- fixedStdUniform :: HasResolution r => RVar (Fixed r)
- floatStdUniform :: RVar Float
- doubleStdUniform :: RVar Double
- realStdUniformCDF :: Real a => a -> Double
- realUniformCDF :: RealFrac a => a -> a -> a -> Double
Documentation
A definition of a uniform distribution over the type t. See also uniform.
Constructors
| Uniform !t !t | A uniform distribution defined by a lower and upper range bound.
For |
Instances
uniform :: Distribution Uniform a => a -> a -> RVar aSource
data StdUniform t Source
A name for the "standard" uniform distribution over the type t,
if one exists. See also stdUniform.
For Integral and Enum types that are also Bounded, this is
the uniform distribution over the full range of the type.
For un-Bounded Integral types this is not defined.
For Fractional types this is a random variable in the range [0,1)
(that is, 0 to 1 including 0 but not including 1).
Constructors
| StdUniform |
Instances
stdUniform :: Distribution StdUniform a => RVar aSource
Get a "standard" uniformly distributed value.
For integral types, this means uniformly distributed over the full range
of the type (there is no support for Integer). For fractional
types, this means uniformly distributed on the interval [0,1).
stdUniformPos :: (Distribution StdUniform a, Num a) => RVar aSource
Like stdUniform but only returns positive values.
integralUniform :: Integral a => a -> a -> RVar aSource
Compute a random Integral value between the 2 values provided (inclusive).
realFloatUniform :: RealFloat a => a -> a -> RVar aSource
realFloatUniform a b computes a uniform random value in the range [a,b) for
any RealFloat type
floatUniform :: Float -> Float -> RVar FloatSource
floatUniform a b computes a uniform random Float value in the range [a,b)
doubleUniform :: Double -> Double -> RVar DoubleSource
doubleUniform a b computes a uniform random Double value in the range [a,b)
fixedUniform :: HasResolution r => Fixed r -> Fixed r -> RVar (Fixed r)Source
fixedUniform a b computes a uniform random Fixed value in the range
[a,b), with any desired precision.
boundedStdUniform :: (Distribution Uniform a, Bounded a) => RVar aSource
boundedEnumStdUniform :: (Enum a, Bounded a) => RVar aSource
realFloatStdUniform :: RealFloat a => RVar aSource
Compute a uniform random value in the range [0,1) for any RealFloat type
fixedStdUniform :: HasResolution r => RVar (Fixed r)Source
Compute a uniform random Fixed value in the range [0,1), with any
desired precision.
floatStdUniform :: RVar FloatSource
Compute a uniform random Float value in the range [0,1)
doubleStdUniform :: RVar DoubleSource
Compute a uniform random Double value in the range [0,1)
realStdUniformCDF :: Real a => a -> DoubleSource
The CDF of the random variable realFloatStdUniform.
realUniformCDF :: RealFrac a => a -> a -> a -> DoubleSource
realUniformCDF a b is the CDF of the random variable realFloatUniform a b.