gamma#
Generates gamma distributed random values.
Description#
The gamma class object is used in the generate function to provide random numbers with gamma
distribution that has shape parameter \(\alpha\), displacement a, and scale parameter \(\beta\),
where \(\alpha, \beta, a \in R ; \alpha > 0, \beta > 0\).
The probability density function is given by:
where \(\Gamma \left ( \alpha \right )\) is the complete gamma function.
The cumulative distribution function is as follows:
Product and Performance Information |
|---|
Performance varies by use, configuration and other factors. Learn more at https://www.intel.com/PerformanceIndex. Notice revision #20201201 |
API#
Syntax#
namespace oneapi::mkl::rng {
template<typename RealType = float,
typename Method = gamma_method::by_default>
class gamma {
public:
using method_type = Method;
using result_type = RealType;
gamma(): gamma((RealType)1.0, (RealType)0.0, (RealType)1.0){}
explicit gamma(RealType alpha, RealType a, RealType beta);
explicit gamma(const param_type& pt);
RealType alpha() const;
RealType a() const;
RealType beta() const;
param_type param() const;
void param(const param_type& pt);
};
}
Devices supported: CPU and GPU.
Include Files#
oneapi/mkl/rng.hpp
Template Parameters#
|
Type of the produced values. The specific values are as follows:
|
|
Generation method. The specific values are as follows:
See brief descriptions of the methods in Distributions Template Parameter Method. |
Input Parameters#
Name |
Type |
Description |
|---|---|---|
alpha |
|
Shape α |
a |
|
Displacement |
beta |
|
Scalefactor |