rayleigh#
Class is used for generation of Rayleigh distributed real types random numbers.
Description
The class object is used in the oneapi::mkl::rng::generate() function to provide random numbers Rayleigh distributed with displacement \(a\), and scalefactor \((b, \beta)\), where \(a, \beta \in R; \beta > 0\).
The Rayleigh distribution is a special case of the weibull distribution, where the shape parameter alpha = 2 .
The probability distribution is given by:
The cumulative distribution function is as follows:
class rayleigh#
Syntax
namespace oneapi::mkl::rng {
template<typename RealType = float, typename Method = rayleigh_method::by_default>
class rayleigh {
public:
using method_type = Method;
using result_type = RealType;
rayleigh();
explicit rayleigh(RealType a, RealType b);
RealType a() const;
RealType b() const;
};
}
Template parameters
- typename RealType
- Type of the produced values. Supported types:
float
double
- typename Method = oneapi::mkl::rng::rayleigh_method::by_default
Transformation method, which will be used for generation. Supported types:
oneapi::mkl::rng::rayleigh_method::by_default
oneapi::mkl::rng::rayleigh_method::icdf
oneapi::mkl::rng::rayleigh_method::icdf_accurate
See description of the methods in Distributions methods template parameter.
Class Members
Routine |
Description |
---|---|
Default constructor |
|
Constructor with parameters |
|
Method to obtain displacement value |
|
Method to obtain scalefactor value |
Member types
rayleigh::method_type = Method
Description
The type which defines transformation method for generation.
rayleigh::result_type = RealType
Description
The type which defines type of generated random numbers.
Constructors
rayleigh::rayleigh()
Description
Default constructor for distribution, parameters set as a = 0.0, and b = 1.0.
explicit rayleigh::rayleigh(RealType a, RealType b)
Description
Constructor with parameters. a is a displacement value, b is a scalefactor value.
Throws
- oneapi::mkl::invalid_argument
Exception is thrown when \(b \leq\) static_cast<RealType>(0.0)
Characteristics
RealType rayleigh::a() const
Return Value
Returns the distribution parameter a - displacement value.
RealType rayleigh::b() const
Return Value
Returns the distribution parameter b - scalefactor value.
Parent topic: Distributions