![]() |
libSUFR
a LIBrary of Some Useful Fortran Routines
|
Procedures to generate random numbers. More...
Functions/Subroutines | |
integer function | get_ran_seed (degree, date_array) |
Use the system clock to get a random initialisation seed (i.e., negative integer) for a random-numbed generator. | |
real(double) function | ran_unif (seed) |
Generate a pseudo-random number from a uniform distribution 0 < r < 1. | |
real(double) function | ran_gauss (seed) |
Generate a pseudo-random number from a Gaussian distribution with mean 0 and standard deviation 1. | |
subroutine | ran_str (seed, str) |
Generate a pseudo-random number from a uniform distribution 0 < r < 1. | |
Procedures to generate random numbers.
integer function sufr_random_numbers::get_ran_seed | ( | integer, intent(in) | degree, |
integer, dimension(8), intent(in), optional | date_array ) |
Use the system clock to get a random initialisation seed (i.e., negative integer) for a random-numbed generator.
degree | Degree of randomness: 0-completely (same result for a ms), 1-same result during a clock hour, 2-same result during a calendar day (int) |
date_array | Provide a date/time array as provided by date_and_time() to generate a non-random seed, e.g. for reproduction purposes ([year,month,day, (tz), hour,minute,second,millisecond]; optional) |
get_ran_seed | Randon-number seed: -1e6 < seed < 0 (int) |
Definition at line 40 of file random_numbers.f90.
References get_ran_seed().
Referenced by sufr_system::execute_command_line_and_return_str(), and get_ran_seed().
real(double) function sufr_random_numbers::ran_gauss | ( | integer, intent(inout) | seed | ) |
Generate a pseudo-random number from a Gaussian distribution with mean 0 and standard deviation 1.
seed | The seed to generate the random number from |
ran_gauss | The random number, using a Gaussian distribution |
Definition at line 148 of file random_numbers.f90.
References sufr_kinds::double, ran_gauss(), and ran_unif().
Referenced by ran_gauss().
subroutine sufr_random_numbers::ran_str | ( | integer, intent(inout) | seed, |
character, dimension(*), intent(inout) | str ) |
Generate a pseudo-random number from a uniform distribution 0 < r < 1.
seed | The seed to generate the random number from. Set seed<0 to initialise the generator; seed is updated between calls (int). |
str | The random string (I/O: output str has length of input str, filled with random characters) |
Definition at line 188 of file random_numbers.f90.
References ran_unif().
real(double) function sufr_random_numbers::ran_unif | ( | integer, intent(inout) | seed | ) |
Generate a pseudo-random number from a uniform distribution 0 < r < 1.
seed | The seed to generate the random number from. Set seed<0 to initialise the generator; seed is updated between calls (int). |
ran_unif | The random number, uniformely generated between 0 < r < 1 (double). |
Definition at line 80 of file random_numbers.f90.
References sufr_kinds::dbl, sufr_kinds::double, and ran_unif().
Referenced by sufr_system::execute_command_line_and_return_str(), ran_gauss(), ran_str(), and ran_unif().