[material][tabulation] IAPWS tabulation causes tests to sometimes fail locally
Testing dumux 3.6 and dune 2.8 the Tabulation test `test_tabulation` as well as `test_1pnc_dispersion_scheidegger` sometimes fails when compiled locally (gcc 11.2.0). The behavior is consistent between multiple runs of the same executable, also for `DUMUX_NUM_THREADS = 1`, but compiling with slight changes to the source (even just comments) leads to different outcomes such as: - While testing within the allowed range of temperatures and pressures a pressure outside the range is requested. The requested value is the same for at least two machines (@IvBu you are probably using the same compiler, right?) ``` terminate called after throwing an instance of 'Dumux::NumericalProblem' what(): NumericalProblem [checkValidityRange:dumux/material/components/iapws/region1.hh:71]: Density of water is only implemented for temperatures below 623.15K and pressures below 100MPa. (T=622.15, p=1.14455e+08) ``` - Testing `fluidPressure` returns incorrect value Compiling with debug options seems to hide the erroneous behavior, making it difficult to track down. Running with valgrind reveals reads of uninitialized values during initialization. Possibly related to #1185. The added check to only use lazy initialization if using `Multithreading::Serial` (default) seems odd as we check this during compilation time and can then later run applications in parallel.
issue