File ppm.H

Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int check_trace_source (Array4< Real const > const &srcQ, const int idir, const int i, const int j, const int k, const int ncomp)
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ppm_reconstruct (const Real *s, const Real flatn, Real &sm, Real &sp)

Compute the coefficients of a parabolic reconstruction of the data in a zone. This uses the standard PPM limiters described in Colella & Woodward (1984)

Parameters:
  • s – Real(\nslp) the state to be reconstructed in zones i-2, i-1, i, i+1, i+2

  • flatn – The flattening coefficient

  • sm – The value of the parabola on the left edge of the zone

  • sp – The value of the parabola on the right edge of the zone

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ppm_reconstruct_pslope (const Real *rho, const Real *p, const Real *src, const Real flatn, const Real dx, Real &sm, Real &sp)

Compute the coefficients of a parabolic reconstruction of the pressure by first subtracting off the hydrostatic pressure. This should better balance the gravitational force by only limiting on the wave-generating pressure. This uses the standard PPM limiters described in Colella & Woodward (1984)

Parameters:
  • rho – Real(\nslp) giving the density in zones i-2, i-1, i, i+1, i+2

  • p – Real(\nslp) giving the pressure in zones i-2, i-1, i, i+1, i+2

  • src – Real(\nslp) the source in the velocity equation (e.g. g) in zones i-2, i-1, i, i+2, i+2

  • flatn – flattening coefficient

  • lo_bc_test – true if a physical boundary is just to the left of this zone

  • hi_bc_test – true if a physical boundary is just to the right of this zone

  • sm – The value of the parabola on the left edge of the zone

  • sp – The value of the parabola on the right edge of the zone

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ppm_int_profile (const Real sm, const Real sp, const Real sc, const Real u, const Real c, const Real dtdx, Real *Ip, Real *Im)

Integrate under the parabola using from the left and right edges with the wave speeds u-c, u, u+c

Parameters:
  • sm – The parabola value on the left edge of the zone

  • sp – The parabola value on the right edge of the zone

  • sc – The state value at the zone center

  • u – The fluid velocity

  • c – The sound speed

  • dtdx – dt/dx (timestep / cell width)

  • Ip – Real(\3), the integrals under the parabola over the 3 waves from the right zone edge

  • Im – Real(\3), the integrals under the parabola over the 3 waves from the left zone edge

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ppm_int_profile_single (const Real sm, const Real sp, const Real sc, const Real lam, const Real dtdx, Real &Ip, Real &Im)

Integrate under the parabola from the left and right edges for a single wave speed

Parameters:
  • sm – The parabola value on the left edge of the zone

  • sp – The parabola value on the right edge of the zone

  • sc – The state value at the zone center

  • lam – The wave speed

  • dtdx – dt/dx (timestep / cell width)

  • Ip – integral under the parabola from the right zone edge

  • Im – integral under the parabola from the left zone edge