Monte Carlo Integration Library 1.0
High-performance Monte Carlo methods for numerical integration and optimization
Namespaces | Functions
rng_factory.cpp File Reference

Implementation of RNG factory functions. More...

#include "rng_factory.hpp"
#include "rng_global.hpp"
#include <iterator>
Include dependency graph for rng_factory.cpp:

Go to the source code of this file.

Namespaces

namespace  mc
 
namespace  mc::rng
 
namespace  mc::rng::detail
 

Functions

std::uint64_t mc::rng::detail::splitmix64_mix (std::uint64_t x)
 
std::uint64_t mc::rng::detail::combine_seeds (std::uint64_t base_seed, std::uint64_t stream_id, std::uint64_t thread_id)
 
std::mt19937 mc::rng::detail::create_mt19937 (std::uint64_t seed)
 Create mt19937 from a 64-bit seed.
 
std::mt19937 mc::rng::make_engine (std::uint64_t stream_id=0)
 Create a deterministic RNG engine for a specific stream.
 
std::mt19937 mc::rng::make_thread_engine (std::uint64_t stream_id=0)
 Create a deterministic RNG engine for the current thread (OpenMP if available)
 
std::mt19937 mc::rng::make_engine_with_seed (std::optional< std::uint32_t > base_seed, std::uint64_t stream_id)
 Create a deterministic RNG engine with explicit seed override (optional)
 

Detailed Description

Implementation of RNG factory functions.

Date
2026-01-21

DESIGN:

Definition in file rng_factory.cpp.