Return true with probability ppm in a million.
ppm is clamped to [0, PPM_ONE], so 0 never fires and 1000000
always does, and no value in between can be mistyped into an error.
Parts per million rather than a real probability because this reaches
simulation state: an incident either happened or it did not, and two
runs must agree on which.
True with probability ppm in a million, from a splitmix64_t generator.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(splitmix64_t), | intent(inout) | :: | gen |
Generator, advanced by the draw unless |
||
| integer(kind=default_int), | intent(in) | :: | ppm |
Probability in parts per million, clamped to |
True with probability ppm in a million, from a pcg32_t generator.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(pcg32_t), | intent(inout) | :: | gen |
Generator, advanced by the draw unless |
||
| integer(kind=default_int), | intent(in) | :: | ppm |
Probability in parts per million, clamped to |