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 \(a, \sigma \in R; \sigma > 0\).
The probability density function is given by:
The cumulative distribution function is as follows:
The cumulative distribution function \(Fa,\sigma (x)\) can be expressed in terms of standard normal distribution \(\phi(x)\) as \(Fa, \sigma ( \,x) \, = \phi( \, ( \, x-a) \, / \sigma ) \,\)
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 |
---|---|
|
Type of the produced values. The specific values are as follows:
|
|
Generation method. The specific values are as follows:
See brief descriptions of the methods in Distributions Template Parameter Method. |
Input Parameters#
Name |
Type |
Description |
---|---|---|
mean |
|
Mean value |
stddev |
|
Standard deviation |