random number - bertdupe/Matjes GitHub Wiki

It is possible to use different random numbers generators. So far, 3 random numbers are implemented: the GNU, mtprng (internal) and the MKL. The different random numbers can be chosen in the input file with the flag

rnd_num_type 1, 2 or 3

The random numbers are all picked up at the same time and then read from a table. In the spin dynamics, they are picked up at each time step for the whole lattice.

the different and number generator

rnd_num_type 1 The GNU end number generator (default)

The GNU random number generator is initialized based on the normal one.

call random_number(r)

It is a normal distribution of random number between 0 and 1. several option can be chosen depending on what you want.

print_rnd .F. print the series of random numbers in files rnd_num_

rnd_noise .F. enforce random noise even if no temperature is given in the input. This is over-ruled if the a temperature is set in the input.

mean 0.0d0 mean of the distribution

sigma 1.0d0 sigma of the distribution

min_rnd_val 0.0d0 minimum value of the random number

max_rnd_val 1.0d0 maximum value of the random number

rnd_num_type 2 The MKL end number generator

rnd_num_type 3 The MTPRNG end number generator

The MTPRNG random number generator has the same option as the GNU.

The distribution

The different distribution can be chosen depending on the variable

name_rnd uniform|normal|exponential|gamma|chi square|inverse gamma|weibull|cauchy|student t|laplace|log-normal|beta

The library is inspired from: http://www.johndcook.com/julia_rng.html. Original author in julia : John D Cook coded : Sukhbinder in fortran Date : 28th Feb 2012