mtprng_init(3f) - [M_random:MERSENNE TWISTER] Initialize the Mersenne Twister random number generator with "seed" (LICENSE:CUSTOM OPEN)
Synopsis
Description
Options
Example
subroutine mtprng_init(seed, state)
integer(INT32), intent(in) :: seed type(mtprng_state), intent(out) :: state
Initializes the Mersenne Twister random number generator with "seed"
seed A seed value is used to start a specific sequence of pseudo-random numbers state generator state initialized by mtprng_init(3f) or mtprng_init_array(3f)
Sample program:
program demo_mtprng_init use M_random, only : mtprng_state, mtprng_init, mtprng_rand64 use, intrinsic :: iso_fortran_env, only : int32, int64 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) ! returns a INT64 integer with a range in 0 .. 2^32-1 write(*,*) mtprng_rand64(state) end program demo_mtprng_initSample Results:
867010878
Nemo Release 3.1 | mtprng_init (3m_random) | April 12, 2023 |