A newer version of this document is available. Customers should click here to go to the newest version.
exponential
Generates exponentially distributed random numbers.
Description
The exponential class object is used in generate function to provide random numbers with exponential distribution that has displacement a and scalefactor , where
.
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
namespace oneapi::mkl::rng {
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 |