mtprng_rand_range(3f) - [M_random:MERSENNE TWISTER] Obtain a pseudo-random integer in the range [lo,hi] (LICENSE:CUSTOM OPEN)
Synopsis
Description
Options
Returns
Examples
function mtprng_rand_range(state, lo, hi) result(r)
type(mtprng_state), intent(inout) :: state integer, intent(in) :: lo integer, intent(in) :: hi integer(INT32) :: r
Obtain a pseudo-random integer in the range [lo,hi]
state generator state initialized by mtprng_init(3f) or mtprng_init_array(3f) lo lowest value in desired range of values to return hi highest value in desired range of values to return
r returned pseudo-random value in range from LO to HI
Sample program:
program demo_mtprng_rand_range use M_random, only : mtprng_state, mtprng_init, mtprng_rand_range use, intrinsic :: iso_fortran_env, only : int32 implicit none integer(INT32) :: seed type(mtprng_state) :: state GET_SEED: block integer :: count integer :: count_rate call system_clock(count, count_rate) seed = count endblock GET_SEED call mtprng_init(seed, state) write(*,*) mtprng_rand_range(state,20,30) end program demo_mtprng_rand_range
Nemo Release 3.1 | mtprng_rand_range (3) | February 23, 2025 |