Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
SWIFTsim
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
SWIFT
SWIFTsim
Commits
2c4eb2d8
Commit
2c4eb2d8
authored
6 years ago
by
Folkert Nobels
Browse files
Options
Downloads
Patches
Plain Diff
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
!742
Fix the random number generator
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
tests/testRandom.c
+19
-1
19 additions, 1 deletion
tests/testRandom.c
with
19 additions
and
1 deletion
tests/testRandom.c
+
19
−
1
View file @
2c4eb2d8
...
...
@@ -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
=
3
e-4
;
const
double
tolcorr
=
4
e-4
;
if
((
fabs
(
mean
-
0
.
5
)
/
0
.
5
>
tolmean
)
||
(
fabs
(
var
-
1
.
/
12
.)
/
(
1
.
/
12
.)
>
tolvar
)
||
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment