AMReX-Astro / Castro

Castro (Compressible Astrophysics): An adaptive mesh, astrophysical compressible (radiation-, magneto-) hydrodynamics simulation code for massively parallel CPU and GPU architectures.

Home Page:http://amrex-astro.github.io/Castro

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

for retry after burning fail, we can use the time from burn_t

zingale opened this issue · comments

When we run with use_retry and we encounter a burn failure, we can estimate the number of retries needed simply by looking at dt / burn_t burn_state.time. This might be more reliable than the current method. To implement this, we'd need to compute that ratio in a reduction clause in the burner loop when we fail.

This wouldn't be that hard to try. I don't have a good prediction about whether it would help; sometimes cutting the step by 2 will be just fine for new-time Strang burns simply because the burning is so non-linear that changing the hydro input can "fix" the problem, so cutting it by more than that might be overkill.

It seems worth experimenting with empirically.

This can be supported by adding a suggested_dt member to advance_status, if react_state returns that as desired then it should be straightforward to experiment with this. And we might have other cases where we want to suggest a dt, like the estTimeStep call that occurs at the end of the CTU advance.

closing this, since the retry with swapped Jacobians in Microphysics seems to be the main thing we needed