Exponential deviate from a PCG32 generator.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(pcg32_t), | intent(inout) | :: | gen |
Generator, advanced by one draw. |
||
| real(kind=dp), | intent(in) | :: | mean |
Mean of the distribution. |
function pcg32_next_exponential_dp(gen, mean) result(r) !! Exponential deviate from a PCG32 generator. type(pcg32_t), intent(inout) :: gen !! Generator, advanced by one draw. real(dp), intent(in) :: mean !! Mean of the distribution. real(dp) :: r r = -mean*log(1.0_dp - next_real_dp(gen)) end function pcg32_next_exponential_dp