32 #ifndef VSMC_RNGC_U01_H    33 #define VSMC_RNGC_U01_H    38 #define VSMC_RNGC_U01_23F (1.0f / 8388608.0f)    39 #define VSMC_RNGC_U01_24F (1.0f / 16777216.0f)    40 #define VSMC_RNGC_U01_31F (1.0f / 2147483648.0f)    41 #define VSMC_RNGC_U01_32F (1.0f / 4294967296.0f)    42 #define VSMC_RNGC_U01_33F (1.0f / 8589934592.0f)    43 #define VSMC_RNGC_U01_64F (1.0f / 18446744073709551616.0f)    44 #define VSMC_RNGC_U01_65F (1.0f / 36893488147419103232.0f)    45 #if VSMC_HAS_OPENCL_DOUBLE    46 #define VSMC_RNGC_U01_32D (1.0 / 4294967296.0)    47 #define VSMC_RNGC_U01_33D (1.0 / 8589934592.0)    48 #define VSMC_RNGC_U01_52D (1.0 / 4503599627370496.0)    49 #define VSMC_RNGC_U01_53D (1.0 / 9007199254740992.0)    50 #define VSMC_RNGC_U01_63D (1.0 / 9223372036854775808.0)    51 #define VSMC_RNGC_U01_64D (1.0 / 18446744073709551616.0)    52 #define VSMC_RNGC_U01_65D (1.0 / 36893488147419103232.0)    53 #endif // VSMC_HAS_OPENCL_DOUBLE    90 #if !defined(VSMC_OPENCL) || VSMC_HAS_OPENCL_DOUBLE   106 #endif // !defined(VSMC_OPENCL) || VSMC_HAS_OPENCL_DOUBLE   124 #endif // VSMC_OPENCL   199 #if !defined(VSMC_OPENCL) || VSMC_HAS_OPENCL_DOUBLE   262 #endif // !defined(VSMC_OPENCL) || VSMC_HAS_OPENCL_DOUBLE   338 #endif // VSMC_OPENCL   340 #endif // VSMC_RNGC_U01_H static const float VSMC_RNGC_U01_31F
 
static float vsmc_u01_oc_u64f(uint64_t u)
Converting 64-bits unsigned to single precision uniform . 
 
static long double vsmc_u01_oo_u64l(uint64_t u)
Converting 64-bits unsigned to long double precision uniform . 
 
static long double vsmc_u01_oc_u64l(uint64_t u)
Converting 64-bits unsigned to long double precision uniform . 
 
static long double vsmc_u01_co_u64l(uint64_t u)
Converting 64-bits unsigned to long double precision uniform . 
 
static long double vsmc_u01_cc_u32l(uint32_t u)
Converting 32-bits unsigned to long double precision uniform . 
 
static const long double VSMC_RNGC_U01_64L
 
static float vsmc_u01_co_u32f(uint32_t u)
Converting 32-bits unsigned to single precision uniform . 
 
static float vsmc_u01_oo_u32f(uint32_t u)
Converting 32-bits unsigned to single precision uniform . 
 
static float vsmc_u01_cc_u32f(uint32_t u)
Converting 32-bits unsigned to single precision uniform . 
 
static const double VSMC_RNGC_U01_52D
 
static const double VSMC_RNGC_U01_53D
 
static long double vsmc_u01_cc_u64l(uint64_t u)
Converting 64-bits unsigned to long double precision uniform . 
 
static const float VSMC_RNGC_U01_23F
 
static double vsmc_u01_oc_u64d(uint64_t u)
Converting 64-bits unsigned to double precision uniform . 
 
static const long double VSMC_RNGC_U01_63L
 
static double vsmc_u01_oo_u64d(uint64_t u)
Converting 64-bits unsigned to double precision uniform . 
 
static const double VSMC_RNGC_U01_32D
 
static double vsmc_u01_cc_u64d(uint64_t u)
Converting 64-bits unsigned to double precision uniform . 
 
static double vsmc_u01_u32d(uint32_t u)
Converting 32-bits unsigned to double precision uniform . 
 
static long double vsmc_u01_u32l(uint32_t u)
Converting 32-bits unsigned to long double precision uniform . 
 
static const double VSMC_RNGC_U01_33D
 
static const long double VSMC_RNGC_U01_32L
 
static const float VSMC_RNGC_U01_33F
 
static const float VSMC_RNGC_U01_24F
 
static double vsmc_u01_oc_u32d(uint32_t u)
Converting 32-bits unsigned to double precision uniform . 
 
static float vsmc_u01_co_u64f(uint64_t u)
Converting 64-bits unsigned to single precision uniform . 
 
static const float VSMC_RNGC_U01_65F
 
static float vsmc_u01_oc_u32f(uint32_t u)
Converting 32-bits unsigned to single precision uniform . 
 
static const double VSMC_RNGC_U01_63D
 
static float vsmc_u01_u64f(uint64_t u)
Converting 64-bits unsigned to single precision uniform . 
 
static const double VSMC_RNGC_U01_64D
 
static double vsmc_u01_co_u32d(uint32_t u)
Converting 32-bits unsigned to double precision uniform . 
 
static long double vsmc_u01_u64l(uint64_t u)
Converting 64-bits unsigned to long double precision uniform . 
 
static const double VSMC_RNGC_U01_65D
 
static long double vsmc_u01_oc_u32l(uint32_t u)
Converting 32-bits unsigned to long double precision uniform . 
 
static const float VSMC_RNGC_U01_64F
 
static double vsmc_u01_cc_u32d(uint32_t u)
Converting 32-bits unsigned to double precision uniform . 
 
static double vsmc_u01_u64d(uint64_t u)
Converting 64-bits unsigned to double precision uniform . 
 
static long double vsmc_u01_co_u32l(uint32_t u)
Converting 32-bits unsigned to long double precision uniform . 
 
static const long double VSMC_RNGC_U01_65L
 
static float vsmc_u01_u32f(uint32_t u)
Converting 32-bits unsigned to single precision uniform . 
 
static double vsmc_u01_oo_u32d(uint32_t u)
Converting 32-bits unsigned to double precision uniform . 
 
static const float VSMC_RNGC_U01_32F
 
static float vsmc_u01_oo_u64f(uint64_t u)
Converting 64-bits unsigned to single precision uniform . 
 
static const long double VSMC_RNGC_U01_33L
 
static long double vsmc_u01_oo_u32l(uint32_t u)
Converting 32-bits unsigned to long double precision uniform . 
 
static double vsmc_u01_co_u64d(uint64_t u)
Converting 64-bits unsigned to double precision uniform . 
 
static float vsmc_u01_cc_u64f(uint64_t u)
Converting 64-bits unsigned to single precision uniform .