oneapi::mkl::rng::device::mrg32k3a¶
Description¶
The combined multiple recursive pseudorandom number generator MRG32k3a [L’Ecuyer99a].
API¶
Syntax¶
template<std::int32_t VecSize = 1>
class mrg32k3a {
public:
static constexpr std::uint32_t default_seed = 1;
static constexpr std::int32_t vec_size = VecSize;
mrg32k3a() : mrg32k3a(default_seed) {}
mrg32k3a(std::uint32_t seed, std::uint64_t offset = 0);
mrg32k3a(std::initializer_list<std::uint32_t> seed, std::uint64_t offset = 0);
mrg32k3a(std::uint32_t seed, std::initializer_list<std::uint64_t> offset);
mrg32k3a(std::initializer_list<std::uint32_t> seed, std::initializer_list<std::uint64_t> offset);
};
Include Files¶
oneapi/mkl/rng/device.hpp
Template Parameters¶
Name |
Type |
Description |
---|---|---|
VecSize |
|
Describes the size of vector which will be produced by generate function by this engine. VecSize values may be 1, 2, 3, 4, 8, 16 as |
Constructors Input Parameters¶
Name |
Type |
Description |
---|---|---|
seed |
|
Initial conditions of the engine state. |
offset |
|
number of skipped elements, for |
See VS Notes for detailed descriptions.