Skip to content

Release 22.05

Compare
Choose a tag to compare
@github-actions github-actions released this 02 May 17:47
  • A new option castro.hydro_memory_footprint_ratio has been added which
    can help limit the amount of memory used in GPU builds. (#2153)

  • In #1379, for the 21.04 release, Castro added a check that issued
    an abort if any species mass fraction was found to be invalid (defined
    by being less than -0.01 or greater than 1.01). This helps us catch
    unintended code errors that do not properly normalize updates to the
    species. (This was originally only enabled for CPU builds, but in the
    22.04 release was extended for GPU builds, as noted below.) However,
    as observed in #2096, this issue can legitimately be triggered in
    regions of sharp composition and density gradients as an unavoidable
    consequence of how the multi-dimensional CTU solver is designed. An
    example would be a helium shell around a C/O white dwarf at low to
    moderate spatial resolution. This was causing the code to abort in
    a couple of science problems, so several improvements were added to
    the code in this release to address it. In #2121, we turned this
    situation into a retry after a hydro update rather than an abort,
    so that the code has more chances to recover by doing an advance
    with a smaller timestep. However, this will not always allow you
    to recover, particularly if you are in an area where density resets
    are occurring and/or you are using castro.limit_fluxes_on_small_dens,
    so we also added a new option castro.abundance_failure_rho_cutoff in
    #2124, which allows you to set a density threshold below which invalid
    mass fractions will be silently ignored (and reset to valid values
    between 0 and 1). We also turned the invalid mass fraction threshold
    into a runtime parameter castro.abundance_failure_tolerance (#2131),
    so that you can optionally loosen or tighten the strictness of this
    check.

    Since this scenario was sometimes occurring during the reflux step
    in AMR simulations, we also improved the reflux code to avoid doing
    the flux correction locally in zones where it would cause an invalid
    mass fraction (#2123).

    While doing these changes we noticed also that the option
    castro.limit_fluxes_on_small_dens was sometimes inadvertently
    aggravating this problem by creating physically implausible fluxes of
    the species, so we simplified the algorithm to avoid that. (#2134)

  • The option castro.limit_fluxes_on_large_vel has been removed. (#2132)