Closed mabruzzo closed 8 months ago
This all looks good to me. In practice, I wouldn't worry too much about the timing - we can just add another timer for the timestep calculation, which would be more intuitive, but I appreciate you keeping it consistent for now while we are still running scaling tests.
This PR shifts some of the contents of from
Grid3D::Update_Grid
intoGrid3D::Update_Hydro_Grid
.Overall, I think that this is a useful organizational change. I also need to do something like this on a local branch and it would be convenient to get this merged upstream as soon as we can since this modification seems like it could easily introduce lots of merge-conflicts.
I would recommend that the reviewer review the changes commit-by-commit:
Grid3D::Update_Grid
into the body ofGrid3D::Update_Hydro_Grid
(after the spot where it callsGrid3D::Update_Grid
). I think this should be very non-controversial.Grid3D::Update_Grid
toGrid3D::Execute_Hydro_Integrator
, which is a more descriptive & self-explanatory name, (I'm obviously happy to name it something else).The 3rd commit moves Slow-Cell-Averaging & timestep-calculation to after the invocation of Grackle. They were already performed after other forms of cooling/chemistry; this is now more consistent and "correct". This is the only structural change to the control flow.
Hydro
timing-region (this includes theHydro_Integrator
timing-region). This is addressed in the next commitHydro
timing-region. The timing-regions are now consistent with the current version of dev.ifdef
regions down to 2.To summarize: commit 1 is the most important change & commit 3 makes the only change to the control-flow.
If you take issue with any of the changes, I'm happy to update the PR to just include the first commit (or first 2 commits)