WJFK2JGGVKQN4LVHZNB4SOKH2GAE5BODBU2D6Y4CO76EIHSW6EVAC
WRITES: primitive(everywhere)
} "Calculate pressure"
SCHEDULE HydroToyAMReX_Fluxes AT initial AFTER HydroToyAMReX_Pressure
{
LANG: C
READS: conserved(everywhere)
READS: primitive(everywhere)
WRITES: flux_x(interior) flux_y(interior) flux_z(interior)
SYNC: flux_x flux_y flux_z
} "Calculate the hydro fluxes"
SCHEDULE HydroToyAMReX_EstimateError AT postinitial AFTER HydroToyAMReX_Boundaries
{
LANG: C
READS: conserved(everywhere)
SCHEDULE HydroToyAMReX_Fluxes AT postregrid AFTER HydroToyAMReX_Pressure
SCHEDULE HydroToyAMReX_Pressure IN HydroToyAMReX_OutputGroup
{
LANG: C
READS: conserved(everywhere)
WRITES: primitive(everywhere)
} "Calculate pressure"
SCHEDULE HydroToyAMReX_Fluxes IN HydroToyAMReX_OutputGroup AFTER HydroToyAMReX_Pressure
{
LANG: C
READS: conserved(everywhere)
READS: primitive(everywhere)
WRITES: flux_x(interior) flux_y(interior) flux_z(interior)
} "Calculate the hydro fluxes"
SCHEDULE HydroToyAMReX_Output IN HydroToyAMReX_OutputGroup AFTER HydroToyAMReX_Fluxes
{
LANG: C
READS: conserved(interior)
READS: flux_x(interior) flux_y(interior) flux_z(interior)
READS: AMReX::regrid_error(interior)
} "Output grid data"
SCHEDULE HydroToyAMReX_EstimateError AT poststep
# SCHEDULE HydroToyAMReX_Output AT poststep
# {
# LANG: C
# READS: conserved(everywhere)
# } "Output grid data"
SCHEDULE HydroToyAMReX_EstimateError AT poststep
{
LANG: C
READS: conserved(everywhere)
WRITES: AMReX::regrid_error(interior)
} "Estimate local error for regridding during evolution"
# Time stepping
SCHEDULE HydroToyAMReX_Evolve AT evol
SCHEDULE HydroToyAMReX_Evolve AT evol AFTER HydroToyAMReX_Fluxes
READS: conserved_p(everywhere)
READS: flux_x(everywhere) flux_y(everywhere) flux_z(everywhere)
WRITES: conserved(everywhere)
READS: conserved_p(interior)
READS: flux_x(interior) flux_y(interior) flux_z(interior)
WRITES: conserved(interior)
SYNC: conserved
extern "C" void HydroToyAMReX_CopyConserved(CCTK_ARGUMENTS) {
DECLARE_CCTK_ARGUMENTS_HydroToyAMReX_CopyConserved;
DECLARE_CCTK_PARAMETERS;
const Loop::GF3D<const CCTK_REAL, 1, 1, 1> rho_p_(cctkGH, rho_p);
const Loop::GF3D<const CCTK_REAL, 1, 1, 1> momx_p_(cctkGH, momx_p);
const Loop::GF3D<const CCTK_REAL, 1, 1, 1> momy_p_(cctkGH, momy_p);
const Loop::GF3D<const CCTK_REAL, 1, 1, 1> momz_p_(cctkGH, momz_p);
const Loop::GF3D<const CCTK_REAL, 1, 1, 1> etot_p_(cctkGH, etot_p);
const Loop::GF3D<CCTK_REAL, 1, 1, 1> rho_(cctkGH, rho);
const Loop::GF3D<CCTK_REAL, 1, 1, 1> momx_(cctkGH, momx);
const Loop::GF3D<CCTK_REAL, 1, 1, 1> momy_(cctkGH, momy);
const Loop::GF3D<CCTK_REAL, 1, 1, 1> momz_(cctkGH, momz);
const Loop::GF3D<CCTK_REAL, 1, 1, 1> etot_(cctkGH, etot);
Loop::loop_all<1, 1, 1>(cctkGH, [&](const Loop::PointDesc &p) {
rho_(p.I) = rho_p_(p.I);
momx_(p.I) = momx_p_(p.I);
momy_(p.I) = momy_p_(p.I);
momz_(p.I) = momz_p_(p.I);
etot_(p.I) = etot_p_(p.I);
});
}