Skip to content

Releases: AMReX-Astro/Castro

Castro 20.01

01 Jan 18:47
Compare
Choose a tag to compare

20.01

  • A new option castro.limit_fluxes_on_large_vel has been added. It
    is similar to the existing option limit_fluxes_on_small_dens --
    fluxes are limited to prevent the velocity in any zone from
    getting too high. The largest legal speed is set by
    castro.speed_limit. (#712) This is more general than the previous
    solution proposed by castro.riemann_speed_limit, so that
    parameter has been removed. (#714)

  • The AMR parameter amr.compute_new_dt_on_regrid is now on by
    default. This avoids crashes that result from the CFL number
    being too large after regridding, because we update the
    timestep after seeing that larger velocity. You can still opt
    to set this off if you want to in your inputs file. (#720)

  • We have added calls into Hypre that only exist as of version
    2.15.0, so that is the new minimum requirement for Castro
    radiation. Note that Hypre is now hosted on GitHub at
    https://github.com/hypre-space/hypre.

  • A new option castro.limit_fluxes_on_large_vel has been added. It
    is similar to the existing option limit_fluxes_on_small_dens --
    fluxes are limited to prevent the velocity in any zone from
    getting too high. The largest legal speed is set by
    castro.riemann_speed_limit. (#712)

  • A new option castro.apply_sources_consecutively has been
    added. By default we add all source terms together at once. This
    option, if enabled, adds the sources one at a time, so that each
    source sees the effect of the previously added sources. This can
    matter, as an example, for the sponge source term, which may be
    more effective if it is added after source terms such as gravity
    that update the velocity. (#710)

  • A new option castro.ext_src_implicit has been added. The external
    source terms were previously only implemented as an explicit
    predictor-corrector scheme. The new option, if turned on, changes
    the handling of the external source terms to allow an implicit
    solve. This is done by subtracting the full old-time source and
    adding the full new-time source in the corrector, rather than
    -0.5 and +0.5 of each, respectively. It is still up to the
    individual problem to make sure it is consistent with this scheme
    if the option is turned on. (#709)

  • Add option for using monopole BCs in 3D. By setting
    gravity.max_multipole_order to a negative number, you can use
    monopole gravity to fill the boundary conditions, rather than the
    multiple BCs. This is useful for debugging purposes. To make the
    behavior consistent, we now use multipole BCs by default in 2D as
    well. (#716)

Castro 19.12

02 Dec 14:20
Compare
Choose a tag to compare
  • The use_retry mechanism has been enabled for the simplified
    SDC time integration method. (#695)

  • A case where use_retry could result in a very small last
    subcycle has been avoided. (#701)

  • We no longer allocate memory for sources for the species
    in the conserved state unless PRIM_SPECIES_HAVE_SOURCES is set
    (#699)

  • A subroutine eos_on_host has been added to the EOS module.
    This is a wrapper for the EOS that must be used for CUDA
    builds if the EOS is being called in probinit or other
    places that don't run on the GPU. (#693)

  • We now use VODE90 instead of VODE by default. (#677)

  • A new unit test was added, model_burner, which reads in a 1-d
    initial model and calls the reaction network on it. This can
    be used to test tolerances, etc.

Castro 19.11

01 Nov 11:40
Compare
Choose a tag to compare
  • The density flux limiter was simplified and fixes a race condition
    (#646)

  • The SDC algorithm can now use Radau quadrature instead of
    Gauss-Lobatto quadrature. (#666)

  • The option castro.ppm_reference_eigenvectors has been removed. This
    is now used by default with the CTU PPM solver.

Castro 19.10

01 Oct 13:37
Compare
Choose a tag to compare

-- The SDC algorithm now implements the burning conditionals
depending on rho and T (react_rho_min, react_rho_max,
react_T_min, react_T_max) (#598, #654)

-- The SDC/MOL PLM reconstruction now implements reflecting BCs on
the interface states (#652, #654)

-- A well-balanced scheme has been added to the piecewise linear SDC
method, enabled with castro.plm_well_balanaced=1. At the moment
it only supports constant gravity. (#294, $654))

-- The weighting of the time-node fluxes stored in the flux registers
for SDC has been fixed (#654, #658)

-- As before, we can choose the reconstruction with PLM using the
castro.plm_iorder flag: 1 = piecewise constant, 2 = piecewise
linear slopes. Now we added a way to specify the limiter used
with the linear slopes. castro.plm_limiter = 1 will use the 2nd
order MC limiter and castro.plm_limiter = 2 will use the default
4th order MC limiter (previously there was no way to select the
2nd order limiter). (#654)

-- The Runge-Kutta based method-of-lines integration method has
been removed in favor of the SDC integration. (#657)

-- A new way of specifying the problem runtime parameters has been
introduced. They can now be specified in a plain text file,
_prob_params, and at compile time, the probdata_module is
automatically created. This automates the creation of the
probdata variables, the namelist for reading them, setting them
as managed for CUDA, and adds the ability to output the values to
a file (like job_info). This feature is opt-in. You need to set
USE_PROB_PARAMS in your GNUmakefile and then define the problem
parameters in a file _prob_params in the problem directory.
(#234, #619, #673)

-- The time to output is now stored in the job_info file (#365)

-- The SDC time advancement method has been documented

-- The job_info file now reports the number of GPUs being used.

Castro 19.09

03 Sep 07:11
Compare
Choose a tag to compare

-- You can now type ./Castro.gnu.ex --describe to see the list of
modules / compilers the code was built with (#660)

-- The reaction quantities are now computed as proper 4th order
averages for the plotfile, when using sdc_order = 4 (#647)

-- The velerr tagging now takes the abs() of the velocity component
to ensure we tag large positive and negative velocities.

Castro 19.08.1

02 Aug 19:52
Compare
Choose a tag to compare

-- Fix CUDA compilation

-- Remove special treatment of 4th order outflow BCs (see #648)

Castro 19.08

01 Aug 22:53
Compare
Choose a tag to compare
Castro 19.08

Castro 19.07

16 Jul 20:51
Compare
Choose a tag to compare
Castro 19.07

Castro 19.06

03 Jun 15:27
Compare
Choose a tag to compare
Castro 19.06

Castro 19.05

01 May 12:59
Compare
Choose a tag to compare
Castro 19.05