Visible to Intel only — GUID: GUID-62A42E6A-5741-468C-8B3F-83249AEEB0C3
Visible to Intel only — GUID: GUID-62A42E6A-5741-468C-8B3F-83249AEEB0C3
gaussian
Generates normally distributed random numbers.
Description
The gaussian class object is used in the 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::device {
template<typename RealType, typename Method>
class gaussian {
public:
using method_type = Method;
using result_type = RealType;
gaussian(): gaussian((RealType)0.0, (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);
};
}
Include Files
oneapi/mkl/rng/device.hpp
Template Parameters
typename Type |
Type of the produced values. The specific values are as follows:
|
typename Method |
Generation method. The specific values are as follows:
See brief descriptions of the methods in Distributions Template Parameter Method. |
Note: To enable oneapi::mkl::rng::device::gaussian_method::box_muller2 based on Vector Math functions, define the MKL_RNG_USE_BINARY_CODE macro and link static oneMKL libraries according to the output produced by Intel® oneAPI Math Kernel Library Link Line Advisor. It may improve performance on some hardware.
Note: oneapi::mkl::rng::device::gaussian_method::icdf is available only if the MKL_RNG_USE_BINARY_CODE macro is defined. Also link static oneMKL libraries according to the output produced by Intel® oneAPI Math Kernel Library Link Line Advisor.
Input Parameters
Name |
Type |
Description |
---|---|---|
mean |
RealType (float, double) |
Mean value a. |
stddev |
RealType (float, double) |
Standard deviation . |