A newer version of this document is available. Customers should click here to go to the newest version.
oneapi::mkl::rng::gaussian
Generates normally distributed random numbers.
Description
The class object is used in oneapi::mkl::rng::generate function to provide random numbers with normal (Gaussian) distribution with mean (a) and standard deviation (stddev, σ), where a, σ ∈ R ; σ > 0.
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
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: floatdouble  |  
       
typename Method = ``oneapi::mkl::rng::gaussian_method::by_default  |  
        Generation method. The specific values are as follows: oneapi::mkl::rng::gaussian_method::box_mulleroneapi::mkl::rng::gaussian_method::box_muller2oneapi::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 σ.  |