Skip to content
Snippets Groups Projects
Commit 2c4eb2d8 authored by Folkert Nobels's avatar Folkert Nobels
Browse files

Add documentation to the main function in testRandom.c to explain shortly what the function does

parent 2ebdff41
No related branches found
No related tags found
1 merge request!742Fix the random number generator
......@@ -55,6 +55,24 @@ double pearsonfunc(double mean1, double mean2, double total12, double var1, doub
return fabs(correlation);
}
/**
* @brief Test to check that the pseodo-random numbers in SWIFT are random
* enough for our purpose.
*
* The test initializes with the current time and than creates 20 ID numbers
* it runs the test using these 20 ID numbers. Using these 20 ID numbers it
* Checks 4 different things:
* 1. The mean and variance are correct for random numbers generated by this
* ID number.
* 2. The random numbers from this ID number do not cause correlation in time.
* 3. A small offset in ID number of 2, doesn't cause correlation between
* the two sets of random numbers and the mean and variance of this set is
* also correct.
* 4. Different physical processes in random.h are also uncorrelated and
* produce the correct mean and variance as expected.
*
* @param none
*/
int main(int argc, char* argv[]) {
/* Initialize CPU frequency, this also starts time. */
......@@ -205,7 +223,7 @@ int main(int argc, char* argv[]) {
* distribution */
const double tolmean = 2e-4;
const double tolvar = 1e-3;
const double tolcorr = 3e-4;
const double tolcorr = 4e-4;
if ((fabs(mean - 0.5) / 0.5 > tolmean) ||
(fabs(var - 1. / 12.) / (1. / 12.) > tolvar) ||
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment