uniform (discrete)#
Class is used for generation of uniformly distributed integer types random numbers.
Description
The class object is used in the oneapi::mkl::rng::generate() function to provide random numbers uniformly distributed over the interval \([a, b)\), where \(a\), \(b\) are the left and right bounds of the interval, respectively, and \(a, b \in R; a < b\).
The probability distribution is given by:
The cumulative distribution function is as follows:
class uniform#
Syntax
namespace oneapi::mkl::rng {
template<typename Method = uniform_method::by_default>
class uniform<std::int32_t, Method> {
public:
    using method_type = Method;
    using result_type = std::int32_t;
    uniform();
    explicit uniform(std::int32_t a, std::int32_t b);
    std::int32_t a() const;
    std::int32_t b() const;
};
}
Template parameters
- typename Method = oneapi::mkl::rng::uniform_method::by_default
 Transformation method, which will be used for generation. Supported types:
oneapi::mkl::rng::uniform_method::by_defaultoneapi::mkl::rng::uniform_method::standard
See description of the methods in Distributions methods template parameter.
Class Members
Routine  | 
Description  | 
|---|---|
Default constructor  | 
|
Constructor with parameters  | 
|
Method to obtain left bound a  | 
|
Method to obtain right bound b  | 
Member types
method_type = Method
Description
The type which defines transformation method for generation.
result_type = std::int32_t
Description
The type which defines type of generated random numbers.
Constructors
uniform()
Description
Default constructor for distribution, parameters set as a = 0, b = std::numeric_limits<std::int32_t>::max().
uniform(std::int32_t a, std::int32_t b)
Description
Constructor with parameters. a is a left bound, b is a right bound, assume \(a < b\).
Throws
- oneapi::mkl::invalid_argument
 Exception is thrown when \(a \ge b\)
Characteristics
a() const
Return Value
Returns the distribution parameter a - left bound.
b() const
Return Value
Returns the distribution parameter b - right bound.
Parent topic: Host Distributions