MCKL
Monte Carlo Kernel Library
Classes | Namespaces | Enumerations | Functions
gamma_distribution.hpp File Reference
#include <mckl/random/internal/common.hpp>
#include <mckl/random/normal_distribution.hpp>
#include <mckl/random/u01_distribution.hpp>

Go to the source code of this file.

Classes

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

Namespaces

 mckl
 
 mckl::internal
 

Enumerations

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

Functions

template<typename RealType , typename RNGType >
void mckl::gamma_distribution (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta)
 
template<typename RealType , typename RNGType >
void mckl::gamma_distribution (RNGType &rng, std::size_t n, RealType *r, const typename GammaDistribution< RealType >::param_type &param)
 
template<typename RealType >
bool mckl::internal::gamma_distribution_check_param (RealType alpha, RealType beta)
 
template<std::size_t K, typename RealType , typename RNGType >
std::size_t mckl::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 mckl::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 mckl::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 mckl::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 mckl::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 mckl::rand (RNGType &rng, GammaDistribution< RealType > &distribution, std::size_t N, RealType *r)