oneapi::mkl::rng::exponential
Generates exponentially distributed random numbers.
Description
The
,
where
.
oneapi::mkl::rng::exponential
class object is used in oneapi::mkl::rng::generate
function
to provide random numbers with exponential distribution that has displacement a
and scalefactor 

The probability density function is given by:

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
template<typename RealType = float, typename Method = exponential_method::by_default>
class exponential {
public:
using method_type = Method;
using result_type = RealType;
exponential(): exponential((RealType)0.0, (RealType)1.0){}
explicit exponential(RealType mean, RealType stddev);
explicit exponential(const param_type& pt);
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
typename RealType = float | Type of the produced values. The specific values are as follows: float double |
typename Method = oneapi::mkl::rng::exponential_method::by_default | Generation method. The specific values are as follows: oneapi::mkl::rng::exponential_method::icdf oneapi::mkl::rng::exponential_method::icdf_accurate See brief descriptions of the methods in Distributions Template Parameter Method. |
Input Parameters
Name | Type | Description |
---|---|---|
a | RealType (float, double) | Displacement a . |
beta | RealType (float, double) | Scalefactor ![]() |