Updates to GitHub:
Added GitHub Actions workflow for automatic testing of the software.
Updates to code:
-
New logical argument "verbose" (def. TRUE) in buildmetadata(). When TRUE, messages are given for each variate, explaining the internal heuristics and guessing to determine the various metadata values.
-
Modified handling of rounded continuous variates, now more consistent according to discussion in issue #50.
-
Elimination of type-"L" variates in Monte Carlo sampling. The type "D" handles both rounded continuous variates and ordinal variates having domain with more than 10 values. samplesFdistribution() and other functions have been updated accordingly.
-
Rewritten plotFsamples(). Now it goes through every variate type in turn, and should be easier to understand.
-
Modified the information contained in the internal "auxmetadata" object, and accordingly modified all functions that use this object.
Performed tests:
- Performed a battery of tests against many datasets available in base-R. This lead to the unveiling and fixing of several small bugs.
The tests were performed to check the working of buildmetadata(), buildauxmetadata(), samplesFdistribution(), plotFsamples().
-
With the mentioned datasets, samplesFdistribution() has been checked against a clearer (but much slower), for-loop-based script -- written from scratch -- to calculate the various probabilities. This script also uses mathematical formulae that are theoretically identical but numerically different when it comes to finite-precision arithmetic. Some bugs have been fixed
-
The latter test also shows that errors coming from finite-precision arithmetic are all below 10^-15.