To make regression testing possible we need APCEMM to generate deterministic results. There are two sources of "non-deterministicness" in APCEMM right now: the random temperature perturbations and multi-threading.
This PR adds a compilation option to:
Set a constant seed for the random number generator hardcoded in the binary
Enforce single threading regardless of user input
This is documented in the README for compiling in this mode as well as for compiling the binary with debug instructions.
Also untracks APCEMM.h which is regenerated every compilation by CMake using the APCEMM.h.in template as it changes depending on if the -DDEBUG flag is on.
To make regression testing possible we need APCEMM to generate deterministic results. There are two sources of "non-deterministicness" in APCEMM right now: the random temperature perturbations and multi-threading.
This PR adds a compilation option to:
This is documented in the README for compiling in this mode as well as for compiling the binary with debug instructions.
Also untracks APCEMM.h which is regenerated every compilation by CMake using the APCEMM.h.in template as it changes depending on if the -DDEBUG flag is on.