Supplies reproducible MPI-aware random streams for collisions and sources.
More...
#include "random_coll.hpp"
|
| static void | genere_random (std::vector< Real > &rand, int npart, int choice) |
| | Fill rand with npart independent variates.
|
| |
| static void | init_random_coll () |
| | Parse/broadcast the configured seed and initialize the rank-local stream.
|
| |
|
| static constexpr int | RAN_C = 34 |
| | Recurrence offset used by the reference stream.
|
| |
| static constexpr int | RAN_K = 100 |
| | Lag/working-array parameter of the reference generator.
|
| |
| static constexpr int | RAN_S = 8 |
| | Number of integer seed words.
|
| |
Supplies reproducible MPI-aware random streams for collisions and sources.
The stream is seeded from ORB5X input and rank state, then consumed in marker order. Reproducibility therefore assumes the same backend, MPI decomposition, and particle ordering.
- Fortran reference
random_coll.F90, module random_coll.
◆ genere_random()
| static void orb5x::RandomColl::genere_random |
( |
std::vector< Real > & |
rand, |
|
|
int |
npart, |
|
|
int |
choice |
|
) |
| |
|
static |
Fill rand with npart independent variates.
- Parameters
-
| [out] | rand | Resized/output random-number vector. |
| [in] | npart | Number of requested samples. |
| [in] | choice | 1 standardized uniform, 2 standard normal, and—with CURAND support—3 device uniform or 4 device Gaussian. |
◆ init_random_coll()
| static void orb5x::RandomColl::init_random_coll |
( |
| ) |
|
|
static |
Parse/broadcast the configured seed and initialize the rank-local stream.
◆ RAN_C
| constexpr int orb5x::RandomColl::RAN_C = 34 |
|
staticconstexpr |
Recurrence offset used by the reference stream.
◆ RAN_K
| constexpr int orb5x::RandomColl::RAN_K = 100 |
|
staticconstexpr |
Lag/working-array parameter of the reference generator.
◆ RAN_S
| constexpr int orb5x::RandomColl::RAN_S = 8 |
|
staticconstexpr |
Number of integer seed words.
The documentation for this class was generated from the following file: