Visible to Intel only — GUID: GUID-810B171B-EBCA-4A30-972E-174E0E599DC6
Visible to Intel only — GUID: GUID-810B171B-EBCA-4A30-972E-174E0E599DC6
gaussian
Generates normally distributed random numbers.
Description
The class object is used in generate function to provide random numbers with normal (Gaussian) distribution with mean (a) and standard deviation (stddev, σ), where .
The probability density function is given by:
The cumulative distribution function is as follows:
The cumulative distribution function can be expressed in terms of standard normal distribution as
API
Syntax
namespace oneapi::mkl::rng {
template<typename RealType = float,
typename Method = gaussian_method::by_default>
class gaussian {
public:
using method_type = Method;
using result_type = RealType;
gaussian(): gaussian(static_cast<RealType>(0.0), static_cast<RealType>(1.0)){}
explicit gaussian(RealType mean, RealType stddev);
explicit gaussian(const param_type& pt);
RealType mean() const;
RealType stddev() const;
param_type param() const;
void param(const param_type& pt);
};
}
Devices supported: CPU and GPU.
Include Files
oneapi/mkl/rng.hpp
Template Parameters
Name |
Description |
---|---|
typename RealType = float |
Type of the produced values. The specific values are as follows: float double |
typename Method = ``oneapi::mkl::rng::gaussian_method::by_default |
Generation method. The specific values are as follows: oneapi::mkl::rng::gaussian_method::box_muller oneapi::mkl::rng::gaussian_method::box_muller2 oneapi::mkl::rng::gaussian_method::icdf See brief descriptions of the methods in Distributions Template Parameter Method. |
Input Parameters
Name |
Type |
Description |
---|---|---|
mean |
RealType (float, double) |
Mean value a. |
stddev |
RealType (float, double) |
Standard deviation σ. |