fix PhysiCell constants for more compilers
This may be premature, but would like to at least suggest it get merged in this release. This addresses compiler errors with PhysiCell_constants{.h,.cpp} for certain compilers (I had mentioned clang++ when I need to do serious debugging, and issue https://github.com/MathCancer/PhysiCell/issues/236 mentioned the error on nvc++, as did @clasqui to @vincent-noel for PhysiBoSS).
I've only tested with the "compile all the sample projects" script. Obviously, it would be good to test with actual simulations (EDIT: see next comment).
I used the 3 scripts discussed in https://github.com/MathCancer/PhysiCell/pull/247 to verify that the results generated using the modified versions of core/PhysiCell_constants.{h,cpp} in this PR's repo matched (bitwise) the simulation results using the core/PhysiCell_constants.{h,cpp} in 1.13.1
Specifically, I ran this 3rd script (after running its 2 predecessor scripts to generate simulation results):
M1P~/git/new-build-test$ python beta/test_diffs_svg.py ~/git/new-build-test/samples_test ~/git/fix-constants/samples_test
and it confirmed that the (early) .svg results were bitwise reproducible for these sample models:
# note that we omit 'output_physimess' only because, currently, it fails the recursive copy of
# additional files needed in config/subdirs (until the Makefiles and "make load PROJ" is updated)
for out_dir in ['output_template','output_biorobots','output_cancer_biorobots','output_celltypes3',
'output_heterog','output_interaction','output_mechano','output_pred_prey','output_virus_mac',
'output_worm','output_rules','output_cancer_immune']:
I also confirmed that nvc++ compiles without any errors (on Ubuntu). It's actually enlightening to see the warnings that it returns which hint at some code cleanup that could be done.
Works on my ubuntu too