vSMC
vSMC: Scalable Monte Carlo
Classes | Namespaces | Macros | Typedefs | Functions
mkl.hpp File Reference
#include <vsmc/rng/internal/common.hpp>

Go to the source code of this file.

Classes

class  vsmc::internal::MKLDiscard< BRNG, Bits >
 
class  vsmc::internal::MKLDiscard< VSL_BRNG_MCG59, Bits >
 
class  vsmc::internal::MKLDiscard< VSL_BRNG_MT19937, Bits >
 
class  vsmc::internal::MKLDiscard< VSL_BRNG_SFMT19937, Bits >
 
class  vsmc::internal::MKLDiscardGeneral< BRNG, Bits >
 
class  vsmc::internal::MKLDiscardSkipAhead
 
class  vsmc::internal::MKLOffset< MKL_INT >
 
class  vsmc::internal::MKLOffset< Dynamic >
 
class  vsmc::internal::MKLOffset< VSL_BRNG_MT2203 >
 
class  vsmc::internal::MKLOffset< VSL_BRNG_WH >
 
class  vsmc::internal::MKLOffsetDynamic< MaxOffset >
 
class  vsmc::internal::MKLOffsetZero
 
class  vsmc::internal::MKLResultTypeTrait< int >
 
class  vsmc::internal::MKLResultTypeTrait< 32 >
 
class  vsmc::internal::MKLResultTypeTrait< 64 >
 
class  vsmc::internal::MKLUniformBits< int >
 
class  vsmc::internal::MKLUniformBits< 32 >
 
class  vsmc::internal::MKLUniformBits< 64 >
 
class  vsmc::MKLEngine< BRNG, Bits >
 MKL RNG C++11 engine. More...
 

Namespaces

 vsmc
 
 vsmc::internal
 

Macros

#define VSMC_RUNTIME_ASSERT_RNG_MKL_OFFSET(offset)
 

Typedefs

using vsmc::MKL_MCG59 = MKLEngine< VSL_BRNG_MCG59, 32 >
 A 59-bits multiplicative congruential generator. More...
 
using vsmc::MKL_MCG59_64 = MKLEngine< VSL_BRNG_MCG59, 64 >
 A 59-bits multiplicative congruential generator (64-bits) More...
 
using vsmc::MKL_MT19937 = MKLEngine< VSL_BRNG_MT19937, 32 >
 A Mersenne-Twister pseudoranom number genertor. More...
 
using vsmc::MKL_MT19937_64 = MKLEngine< VSL_BRNG_MT19937, 64 >
 A Mersenne-Twister pseudoranom number genertor (64-bits) More...
 
using vsmc::MKL_MT2203 = MKLEngine< VSL_BRNG_MT2203, 32 >
 A set of 6024 Mersenne-Twister pseudoranom number genertor. More...
 
using vsmc::MKL_MT2203_64 = MKLEngine< VSL_BRNG_MT2203, 64 >
 A set of 6024 Mersenne-Twister pseudoranom number genertor (64-bits) More...
 
using vsmc::MKL_NONDETERM = MKLEngine< VSL_BRNG_NONDETERM, 32 >
 A non-determinstic random number generator. More...
 
using vsmc::MKL_NONDETERM_64 = MKLEngine< VSL_BRNG_NONDETERM, 64 >
 A non-determinstic random number generator (64-bits) More...
 
using vsmc::MKL_SFMT19937 = MKLEngine< VSL_BRNG_SFMT19937, 32 >
 A SIMD-oriented fast Mersenne-Twister pseudoranom number genertor. More...
 
using vsmc::MKL_SFMT19937_64 = MKLEngine< VSL_BRNG_SFMT19937, 64 >
 A SIMD-oriented fast Mersenne-Twister pseudoranom number genertor (64-bits) More...
 
template<int Bits>
using vsmc::internal::MKLResultType = typename MKLResultTypeTrait< Bits >::type
 

Functions

template<MKL_INT BRNG, int Bits>
void vsmc::beta_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::beta_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::cauchy_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::cauchy_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::exponential_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::exponential_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::extreme_value_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::extreme_value_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::gamma_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::gamma_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::laplace_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::laplace_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::lognormal_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::lognormal_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::normal_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *r, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::normal_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *r, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::normal_mv_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, std::size_t, const float *, const float *)
 
template<MKL_INT BRNG, int Bits>
void vsmc::normal_mv_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, std::size_t, const double *, const double *)
 
template<MKL_INT BRNG, int Bits>
void vsmc::rayleigh_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::rayleigh_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::rng_rand (MKLEngine< BRNG, Bits > &, std::size_t, typename MKLEngine< BRNG, Bits >::result_type *)
 
template<MKL_INT BRNG, int Bits>
void vsmc::u01_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *)
 
template<MKL_INT BRNG, int Bits>
void vsmc::u01_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *)
 
template<MKL_INT BRNG, int Bits>
void vsmc::uniform_real_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::uniform_real_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 
template<MKL_INT BRNG, int Bits>
void vsmc::weibull_distribution (MKLEngine< BRNG, Bits > &, std::size_t, float *, float, float)
 
template<MKL_INT BRNG, int Bits>
void vsmc::weibull_distribution (MKLEngine< BRNG, Bits > &, std::size_t, double *, double, double)
 

Macro Definition Documentation

#define VSMC_RUNTIME_ASSERT_RNG_MKL_OFFSET (   offset)
Value:
VSMC_RUNTIME_ASSERT((offset < max()), \
"**MKLOffsetDynamic** " \
"EXCESS MAXIMUM NUMBER OF INDEPDENT RNG STREAMS")
#define VSMC_RUNTIME_ASSERT(cond, msg)
Definition: assert.hpp:53

Definition at line 37 of file mkl.hpp.