vSMC  v3.0.0
Scalable Monte Carlo
Classes | Namespaces | Enumerations | Functions
gamma_distribution.hpp File Reference
#include <vsmc/rng/internal/common.hpp>
#include <vsmc/rng/normal_distribution.hpp>
#include <vsmc/rng/u01_distribution.hpp>

Go to the source code of this file.

Classes

class  vsmc::GammaDistribution< RealType >
 Gamma distribution. More...
 
class  vsmc::GammaDistribution< RealType >::param_type
 
class  vsmc::internal::GammaDistributionConstant< RealType >
 

Namespaces

 vsmc
 
 vsmc::internal
 

Enumerations

enum  vsmc::internal::GammaDistributionAlgorithm {
  vsmc::internal::GammaDistributionAlgorithmT,
  vsmc::internal::GammaDistributionAlgorithmW,
  vsmc::internal::GammaDistributionAlgorithmN,
  vsmc::internal::GammaDistributionAlgorithmE
}
 

Functions

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::gamma_distribution (RNGType &rng, std::size_t N, RealType *r, const typename GammaDistribution< RealType >::param_type &param)
 
template<typename RealType >
bool vsmc::internal::gamma_distribution_check_param (RealType alpha, RealType beta)
 
template<std::size_t K, typename RealType , typename RNGType >
std::size_t vsmc::internal::gamma_distribution_impl (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta, const GammaDistributionConstant< RealType > &constant)
 
template<std::size_t , typename RealType , typename RNGType >
std::size_t vsmc::internal::gamma_distribution_impl_e (RNGType &rng, std::size_t n, RealType *r, RealType, RealType beta, const GammaDistributionConstant< RealType > &)
 
template<std::size_t K, typename RealType , typename RNGType >
std::size_t vsmc::internal::gamma_distribution_impl_n (RNGType &rng, std::size_t n, RealType *r, RealType, RealType beta, const GammaDistributionConstant< RealType > &constant)
 
template<std::size_t K, typename RealType , typename RNGType >
std::size_t vsmc::internal::gamma_distribution_impl_t (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta, const GammaDistributionConstant< RealType > &constant)
 
template<std::size_t K, typename RealType , typename RNGType >
std::size_t vsmc::internal::gamma_distribution_impl_w (RNGType &rng, std::size_t n, RealType *r, RealType, RealType beta, const GammaDistributionConstant< RealType > &constant)
 
template<typename RealType , typename RNGType >
void vsmc::rand (RNGType &rng, GammaDistribution< RealType > &dist, std::size_t N, RealType *r)