vSMC
vSMC: Scalable Monte Carlo
Classes | Typedefs | Functions

Distribution random varaites. More...

Classes

class  vsmc::BernoulliDistribution< IntType >
 Bernoulli distribution. More...
 
class  vsmc::BetaDistribution< RealType >
 beta distribution More...
 
class  vsmc::CauchyDistribution< RealType >
 Cauchy distribution. More...
 
class  vsmc::ChiSquaredDistribution< RealType >
 The \(\chi^2\) distribution. More...
 
class  vsmc::DiscreteDistribution< IntType >
 Draw a single sample given weights. More...
 
class  vsmc::ExponentialDistribution< RealType >
 Exponential distribution. More...
 
class  vsmc::ExtremeValueDistribution< RealType >
 ExtremeValue distribution. More...
 
class  vsmc::FisherFDistribution< RealType >
 Fisher-F distribution. More...
 
class  vsmc::GammaDistribution< RealType >
 Gamma distribution. More...
 
class  vsmc::LaplaceDistribution< RealType >
 Laplace distribution. More...
 
class  vsmc::LevyDistribution< RealType >
 Levy distribution. More...
 
class  vsmc::LogisticDistribution< RealType >
 Logistic distribution. More...
 
class  vsmc::LognormalDistribution< RealType >
 Lognormal distribution. More...
 
class  vsmc::NormalDistribution< RealType >
 Normal distribution. More...
 
class  vsmc::ParetoDistribution< RealType >
 Pareto distribution. More...
 
class  vsmc::RayleighDistribution< RealType >
 Rayleigh distribution. More...
 
class  vsmc::StudentTDistribution< RealType >
 Student-t distribution. More...
 
class  vsmc::U01LRDistribution< RealType, Left, Right >
 Standard uniform distribution with open/closed variants. More...
 
class  vsmc::UniformBitsDistribution< UIntType >
 Uniform bits distribution. More...
 
class  vsmc::UniformRealLRDistribution< RealType, Left, Right >
 Uniform real distribution with open/closed variants. More...
 
class  vsmc::WeibullDistribution< RealType >
 Weibull distribution. More...
 

Typedefs

template<typename RealType = double>
using vsmc::U01CCDistribution = U01LRDistribution< RealType, Closed, Closed >
 Standard uniform distribution on cloed-closed interval. More...
 
template<typename RealType = double>
using vsmc::U01CODistribution = U01LRDistribution< RealType, Closed, Open >
 Standard uniform distribution on open-closed interval. More...
 
template<typename RealType = double>
using vsmc::U01Distribution = U01CODistribution< RealType >
 Standard uniform distribution. More...
 
template<typename RealType = double>
using vsmc::U01OCDistribution = U01LRDistribution< RealType, Open, Closed >
 Standard uniform distribution on open-open interval. More...
 
template<typename RealType = double>
using vsmc::U01OODistribution = U01LRDistribution< RealType, Open, Open >
 Standard uniform distribution on cloed-open interval. More...
 
template<typename RealType = double>
using vsmc::UniformRealCCDistribution = UniformRealLRDistribution< RealType, Closed, Closed >
 Uniform real distribution on cloed-closed interval. More...
 
template<typename RealType = double>
using vsmc::UniformRealCODistribution = UniformRealLRDistribution< RealType, Closed, Open >
 Uniform real distribution on open-closed interval. More...
 
template<typename RealType = double>
using vsmc::UniformRealOCDistribution = UniformRealLRDistribution< RealType, Open, Closed >
 Uniform real distribution on open-open interval. More...
 
template<typename RealType = double>
using vsmc::UniformRealOODistribution = UniformRealLRDistribution< RealType, Open, Open >
 Uniform real distribution on cloed-open interval. More...
 

Functions

template<typename IntType , typename RNGType >
void vsmc::bernoulli_distribution (RNGType &rng, std::size_t n, IntType *r, IntType p)
 Generating bernoulli random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::beta_distribution (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta)
 Generating beta random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::cauchy_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating cauchy random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::chi_squared_distribution (RNGType &rng, std::size_t n, RealType *r, RealType df)
 Generating \(\chi^2\) random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::exponential_distribution (RNGType &rng, std::size_t n, RealType *r, RealType lambda)
 Generating exponential random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::extreme_value_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating extreme_value random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::fisher_f_distribution (RNGType &rng, std::size_t n, RealType *r, RealType df1, RealType df2)
 Generating Fisher-F random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::gamma_distribution (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta)
 Generating gamma random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::laplace_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating laplace random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::levy_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating levy random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::logistic_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating logistic random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::lognormal_distribution (RNGType &rng, std::size_t n, RealType *r, RealType logmean, RealType logstddev)
 Generating lognormal random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::normal_distribution (RNGType &rng, std::size_t n, RealType *r, RealType mean, RealType stddev)
 Generating normal random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::pareto_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating pareto random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::rayleigh_distribution (RNGType &rng, std::size_t n, RealType *r, RealType sigma)
 Generating rayleigh random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::student_t_distribution (RNGType &rng, std::size_t n, RealType *r, RealType df)
 Generating student-t random variates. More...
 
template<typename RealType , typename RNGType >
void vsmc::u01_cc_distribution (RNGType &rng, std::size_t n, RealType *r)
 Generate standard uniform random variates on closed-closed interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::u01_co_distribution (RNGType &rng, std::size_t n, RealType *r)
 Generate standard uniform random variates on closed-open interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::u01_distribution (RNGType &rng, std::size_t n, RealType *r)
 Generate standard uniform random variates. More...
 
template<typename RealType , typename Left , typename Right , typename RNGType >
void vsmc::u01_lr_distribution (RNGType &rng, std::size_t n, RealType *r)
 Generate standard uniform random variates with open/closed variants. More...
 
template<typename RealType , typename RNGType >
void vsmc::u01_oc_distribution (RNGType &rng, std::size_t n, RealType *r)
 Generate standard uniform random variates on open-closed interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::u01_oo_distribution (RNGType &rng, std::size_t n, RealType *r)
 Generate standard uniform random variates on open-open interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::uniform_real_cc_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generate uniform real random variates on closed-closed interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::uniform_real_co_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generate uniform real random variates on closed-open interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::uniform_real_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generate uniform real random variates. More...
 
template<typename RealType , typename Left , typename Right , typename RNGType >
void vsmc::uniform_real_lr_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generate uniform real random variates with open/closed variants. More...
 
template<typename RealType , typename RNGType >
void vsmc::uniform_real_oc_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generate uniform real random variates on open-closed interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::uniform_real_oo_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generate uniform real random variates on open-open interval. More...
 
template<typename RealType , typename RNGType >
void vsmc::weibull_distribution (RNGType &rng, std::size_t n, RealType *r, RealType a, RealType b)
 Generating weibull random variates. More...
 

Detailed Description

Distribution random varaites.

Typedef Documentation

template<typename RealType = double>
using vsmc::U01CCDistribution = typedef U01LRDistribution<RealType, Closed, Closed>

Standard uniform distribution on cloed-closed interval.

Definition at line 161 of file u01_distribution.hpp.

template<typename RealType = double>
using vsmc::U01CODistribution = typedef U01LRDistribution<RealType, Closed, Open>

Standard uniform distribution on open-closed interval.

Definition at line 171 of file u01_distribution.hpp.

template<typename RealType = double>
using vsmc::U01Distribution = typedef U01CODistribution<RealType>

Standard uniform distribution.

Definition at line 181 of file u01_distribution.hpp.

template<typename RealType = double>
using vsmc::U01OCDistribution = typedef U01LRDistribution<RealType, Open, Closed>

Standard uniform distribution on open-open interval.

Definition at line 176 of file u01_distribution.hpp.

template<typename RealType = double>
using vsmc::U01OODistribution = typedef U01LRDistribution<RealType, Open, Open>

Standard uniform distribution on cloed-open interval.

Definition at line 166 of file u01_distribution.hpp.

template<typename RealType = double>
using vsmc::UniformRealCCDistribution = typedef UniformRealLRDistribution<RealType, Closed, Closed>

Uniform real distribution on cloed-closed interval.

Definition at line 195 of file uniform_real_distribution.hpp.

template<typename RealType = double>
using vsmc::UniformRealCODistribution = typedef UniformRealLRDistribution<RealType, Closed, Open>

Uniform real distribution on open-closed interval.

Definition at line 207 of file uniform_real_distribution.hpp.

template<typename RealType = double>
using vsmc::UniformRealOCDistribution = typedef UniformRealLRDistribution<RealType, Open, Closed>

Uniform real distribution on open-open interval.

Definition at line 213 of file uniform_real_distribution.hpp.

template<typename RealType = double>
using vsmc::UniformRealOODistribution = typedef UniformRealLRDistribution<RealType, Open, Open>

Uniform real distribution on cloed-open interval.

Definition at line 201 of file uniform_real_distribution.hpp.

Function Documentation

template<typename IntType , typename RNGType >
void vsmc::bernoulli_distribution ( RNGType &  rng,
std::size_t  n,
IntType *  r,
IntType  p 
)
inline

Generating bernoulli random variates.

Definition at line 104 of file bernoulli_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::beta_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  alpha,
RealType  beta 
)
inline

Generating beta random variates.

Definition at line 554 of file beta_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::cauchy_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating cauchy random variates.

Definition at line 104 of file cauchy_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::chi_squared_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  df 
)
inline

Generating \(\chi^2\) random variates.

Definition at line 89 of file chi_squared_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::exponential_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  lambda 
)
inline

Generating exponential random variates.

Definition at line 98 of file exponential_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::extreme_value_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating extreme_value random variates.

Definition at line 103 of file extreme_value_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::fisher_f_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  df1,
RealType  df2 
)
inline

Generating Fisher-F random variates.

Definition at line 113 of file fisher_f_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::gamma_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  alpha,
RealType  beta 
)
inline

Generating gamma random variates.

Definition at line 389 of file gamma_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::laplace_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating laplace random variates.

Definition at line 118 of file laplace_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::levy_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating levy random variates.

Definition at line 102 of file levy_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::logistic_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating logistic random variates.

Definition at line 105 of file logistic_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::lognormal_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  logmean,
RealType  logstddev 
)
inline

Generating lognormal random variates.

Definition at line 97 of file lognormal_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::normal_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  mean,
RealType  stddev 
)
inline

Generating normal random variates.

Definition at line 179 of file normal_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::pareto_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating pareto random variates.

Definition at line 98 of file pareto_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::rayleigh_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  sigma 
)
inline

Generating rayleigh random variates.

Definition at line 99 of file rayleigh_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::student_t_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  df 
)
inline

Generating student-t random variates.

Definition at line 120 of file student_t_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::u01_cc_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Generate standard uniform random variates on closed-closed interval.

Definition at line 216 of file u01_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::u01_co_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Generate standard uniform random variates on closed-open interval.

Definition at line 224 of file u01_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::u01_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Generate standard uniform random variates.

Definition at line 248 of file u01_distribution.hpp.

template<typename RealType , typename Left , typename Right , typename RNGType >
void vsmc::u01_lr_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Generate standard uniform random variates with open/closed variants.

Definition at line 201 of file u01_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::u01_oc_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Generate standard uniform random variates on open-closed interval.

Definition at line 232 of file u01_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::u01_oo_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Generate standard uniform random variates on open-open interval.

Definition at line 240 of file u01_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::uniform_real_cc_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generate uniform real random variates on closed-closed interval.

Definition at line 252 of file uniform_real_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::uniform_real_co_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generate uniform real random variates on closed-open interval.

Definition at line 261 of file uniform_real_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::uniform_real_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generate uniform real random variates.

Definition at line 288 of file uniform_real_distribution.hpp.

template<typename RealType , typename Left , typename Right , typename RNGType >
void vsmc::uniform_real_lr_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generate uniform real random variates with open/closed variants.

Definition at line 235 of file uniform_real_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::uniform_real_oc_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generate uniform real random variates on open-closed interval.

Definition at line 270 of file uniform_real_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::uniform_real_oo_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generate uniform real random variates on open-open interval.

Definition at line 279 of file uniform_real_distribution.hpp.

template<typename RealType , typename RNGType >
void vsmc::weibull_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Generating weibull random variates.

Definition at line 108 of file weibull_distribution.hpp.