vSMC
vSMC: Scalable Monte Carlo
Functions | Variables
u01.h File Reference
#include <vsmc/internal/config.h>

Go to the source code of this file.

Functions

static double vsmc_u01_cc_u32d (uint32_t u)
 Converting 32-bits unsigned to double precision uniform \([0,1]\). More...
 
static float vsmc_u01_cc_u32f (uint32_t u)
 Converting 32-bits unsigned to single precision uniform \([0,1]\). More...
 
static long double vsmc_u01_cc_u32l (uint32_t u)
 Converting 32-bits unsigned to long double precision uniform \([0,1]\). More...
 
static double vsmc_u01_cc_u64d (uint64_t u)
 Converting 64-bits unsigned to double precision uniform \([0,1]\). More...
 
static float vsmc_u01_cc_u64f (uint64_t u)
 Converting 64-bits unsigned to single precision uniform \([0,1]\). More...
 
static long double vsmc_u01_cc_u64l (uint64_t u)
 Converting 64-bits unsigned to long double precision uniform \([0,1]\). More...
 
static double vsmc_u01_co_u32d (uint32_t u)
 Converting 32-bits unsigned to double precision uniform \([0,1)\). More...
 
static float vsmc_u01_co_u32f (uint32_t u)
 Converting 32-bits unsigned to single precision uniform \([0,1)\). More...
 
static long double vsmc_u01_co_u32l (uint32_t u)
 Converting 32-bits unsigned to long double precision uniform \([0,1)\). More...
 
static double vsmc_u01_co_u64d (uint64_t u)
 Converting 64-bits unsigned to double precision uniform \([0,1)\). More...
 
static float vsmc_u01_co_u64f (uint64_t u)
 Converting 64-bits unsigned to single precision uniform \([0,1)\). More...
 
static long double vsmc_u01_co_u64l (uint64_t u)
 Converting 64-bits unsigned to long double precision uniform \([0,1)\). More...
 
static double vsmc_u01_oc_u32d (uint32_t u)
 Converting 32-bits unsigned to double precision uniform \((0,1]\). More...
 
static float vsmc_u01_oc_u32f (uint32_t u)
 Converting 32-bits unsigned to single precision uniform \((0,1]\). More...
 
static long double vsmc_u01_oc_u32l (uint32_t u)
 Converting 32-bits unsigned to long double precision uniform \((0,1]\). More...
 
static double vsmc_u01_oc_u64d (uint64_t u)
 Converting 64-bits unsigned to double precision uniform \((0,1]\). More...
 
static float vsmc_u01_oc_u64f (uint64_t u)
 Converting 64-bits unsigned to single precision uniform \((0,1]\). More...
 
static long double vsmc_u01_oc_u64l (uint64_t u)
 Converting 64-bits unsigned to long double precision uniform \((0,1]\). More...
 
static double vsmc_u01_oo_u32d (uint32_t u)
 Converting 32-bits unsigned to double precision uniform \((0,1)\). More...
 
static float vsmc_u01_oo_u32f (uint32_t u)
 Converting 32-bits unsigned to single precision uniform \((0,1)\). More...
 
static long double vsmc_u01_oo_u32l (uint32_t u)
 Converting 32-bits unsigned to long double precision uniform \((0,1)\). More...
 
static double vsmc_u01_oo_u64d (uint64_t u)
 Converting 64-bits unsigned to double precision uniform \((0,1)\). More...
 
static float vsmc_u01_oo_u64f (uint64_t u)
 Converting 64-bits unsigned to single precision uniform \((0,1)\). More...
 
static long double vsmc_u01_oo_u64l (uint64_t u)
 Converting 64-bits unsigned to long double precision uniform \((0,1)\). More...
 
static double vsmc_u01_u32d (uint32_t u)
 Converting 32-bits unsigned to double precision uniform \((0, 1)\). More...
 
static float vsmc_u01_u32f (uint32_t u)
 Converting 32-bits unsigned to single precision uniform \((0, 1)\). More...
 
static long double vsmc_u01_u32l (uint32_t u)
 Converting 32-bits unsigned to long double precision uniform \((0, 1)\). More...
 
static double vsmc_u01_u64d (uint64_t u)
 Converting 64-bits unsigned to double precision uniform \((0, 1)\). More...
 
static float vsmc_u01_u64f (uint64_t u)
 Converting 64-bits unsigned to single precision uniform \((0, 1)\). More...
 
static long double vsmc_u01_u64l (uint64_t u)
 Converting 64-bits unsigned to long double precision uniform \((0, 1)\). More...
 

Variables

static const float VSMC_RNGC_U01_23F = 1.0f / 8388608.0f
 
static const float VSMC_RNGC_U01_24F = 1.0f / 16777216.0f
 
static const float VSMC_RNGC_U01_31F = 1.0f / 2147483648.0f
 
static const double VSMC_RNGC_U01_32D = 1.0 / 4294967296.0
 
static const float VSMC_RNGC_U01_32F = 1.0f / 4294967296.0f
 
static const long double VSMC_RNGC_U01_32L = 1.0l / 4294967296.0l
 
static const double VSMC_RNGC_U01_33D = 1.0 / 8589934592.0
 
static const float VSMC_RNGC_U01_33F = 1.0f / 8589934592.0f
 
static const long double VSMC_RNGC_U01_33L = 1.0l / 8589934592.0l
 
static const double VSMC_RNGC_U01_52D = 1.0 / 4503599627370496.0
 
static const double VSMC_RNGC_U01_53D = 1.0 / 9007199254740992.0
 
static const double VSMC_RNGC_U01_63D = 1.0 / 9223372036854775808.0
 
static const long double VSMC_RNGC_U01_63L = 1.0l / 9223372036854775808.0l
 
static const double VSMC_RNGC_U01_64D = 1.0 / 18446744073709551616.0
 
static const float VSMC_RNGC_U01_64F = 1.0f / 18446744073709551616.0f
 
static const long double VSMC_RNGC_U01_64L = 1.0l / 18446744073709551616.0l
 
static const double VSMC_RNGC_U01_65D = 1.0 / 36893488147419103232.0
 
static const float VSMC_RNGC_U01_65F = 1.0f / 36893488147419103232.0f
 
static const long double VSMC_RNGC_U01_65L = 1.0l / 36893488147419103232.0l
 

Function Documentation

static long double vsmc_u01_u32l ( uint32_t  u)
inlinestatic

Converting 32-bits unsigned to long double precision uniform \((0, 1)\).

Definition at line 112 of file u01.h.

static long double vsmc_u01_u64l ( uint64_t  u)
inlinestatic

Converting 64-bits unsigned to long double precision uniform \((0, 1)\).

Definition at line 119 of file u01.h.

Variable Documentation

const float VSMC_RNGC_U01_23F = 1.0f / 8388608.0f
static

Definition at line 55 of file u01.h.

const float VSMC_RNGC_U01_24F = 1.0f / 16777216.0f
static

Definition at line 56 of file u01.h.

const float VSMC_RNGC_U01_31F = 1.0f / 2147483648.0f
static

Definition at line 57 of file u01.h.

const double VSMC_RNGC_U01_32D = 1.0 / 4294967296.0
static

Definition at line 62 of file u01.h.

const float VSMC_RNGC_U01_32F = 1.0f / 4294967296.0f
static

Definition at line 58 of file u01.h.

const long double VSMC_RNGC_U01_32L = 1.0l / 4294967296.0l
static

Definition at line 69 of file u01.h.

const double VSMC_RNGC_U01_33D = 1.0 / 8589934592.0
static

Definition at line 63 of file u01.h.

const float VSMC_RNGC_U01_33F = 1.0f / 8589934592.0f
static

Definition at line 59 of file u01.h.

const long double VSMC_RNGC_U01_33L = 1.0l / 8589934592.0l
static

Definition at line 70 of file u01.h.

const double VSMC_RNGC_U01_52D = 1.0 / 4503599627370496.0
static

Definition at line 64 of file u01.h.

const double VSMC_RNGC_U01_53D = 1.0 / 9007199254740992.0
static

Definition at line 65 of file u01.h.

const double VSMC_RNGC_U01_63D = 1.0 / 9223372036854775808.0
static

Definition at line 66 of file u01.h.

const long double VSMC_RNGC_U01_63L = 1.0l / 9223372036854775808.0l
static

Definition at line 71 of file u01.h.

const double VSMC_RNGC_U01_64D = 1.0 / 18446744073709551616.0
static

Definition at line 67 of file u01.h.

const float VSMC_RNGC_U01_64F = 1.0f / 18446744073709551616.0f
static

Definition at line 60 of file u01.h.

const long double VSMC_RNGC_U01_64L = 1.0l / 18446744073709551616.0l
static

Definition at line 72 of file u01.h.

const double VSMC_RNGC_U01_65D = 1.0 / 36893488147419103232.0
static

Definition at line 68 of file u01.h.

const float VSMC_RNGC_U01_65F = 1.0f / 36893488147419103232.0f
static

Definition at line 61 of file u01.h.

const long double VSMC_RNGC_U01_65L = 1.0l / 36893488147419103232.0l
static

Definition at line 73 of file u01.h.