Grackle Tests
Tests for the method that invokes Grackle. These tests set up a cooling test without hydrodynamics to run many one-zone models in Grackle, fully sampling the density, temperature, and metallicity parameter space over which the chemistry and cooling/heating tables are valid.
method_grackle_general
This test compares the summary statistics computed for several grackle fields after a certain period of time to previously archived values.
The simulation timesteps are much larger that the cooling/heating. This makes it more likely that separate processing elements will execute grackle routines at the same time (thus increasing the chances of exposing hypothetical problems related to Grackle & SMP mode).
This test is somewhat fragile given that upgrading Grackle versions could conceivably alter the field values. In the future it would be better to replace this with a test that:
checks out and builds a previous commit of Enzo-E
runs the simulation and saves the exact field values after running the simulations
checks out and builds a newer commit of Enzo-E (while leaving the build of Grackle unchanged)
runs the simulation and confirms that the Grackle related field values are identical to the field values from the earlier simulation.
method_grackle_cooling_dt
This test runs Grackle for a fixed number of cycles, and compares the final simulation time to a reference value. Each simulation timestep is set fraction of the minimum magnitude of the cooling/heating timestep.