File riemann_solvers.H
Functions
- AMREX_GPU_HOST_DEVICE AMREX_INLINE void compute_flux_q (const int i, const int j, const int k, const int idir, const GeometryData &geomdata, const RiemannState &qint, Array4< Real > const &F, Array4< Real > const &rF, Array4< Real > const &qgdnv, const bool store_full_state)
- AMREX_GPU_HOST_DEVICE AMREX_INLINE void riemanncg (const RiemannState &ql, const RiemannState &qr, const RiemannAux &raux, RiemannState &qint)
The Colella-Glaz Riemann solver for pure hydrodynamics. This is a two shock approximate state Riemann solver.
- Parameters:
bx – the box to operate over
ql – the left interface state
qr – the right interface state
qaux_arr – the auxiliary state
qint – the full Godunov state on the interface
idir – coordinate direction for the solve (0 = x, 1 = y, 2 = z)
- AMREX_GPU_HOST_DEVICE AMREX_INLINE void riemannus (const RiemannState &ql, const RiemannState &qr, const RiemannAux &raux, RiemannState &qint)
The Colella-Glaz-Ferguson Riemann solver for hydrodynamics and radiation hydrodynamics. This is a two shock approximate state Riemann solver.
- Parameters:
bx – the box to operate over
ql – the left interface state
qr – the right interface state
qaux_arr – the auxiliary state
qint – the full Godunov state on the interface
lambda_int – the radiation flux limiter on the interface
- AMREX_GPU_HOST_DEVICE AMREX_INLINE void HLL (const Real *ql, const Real *qr, const Real cl, const Real cr, const int idir, const int coord, Real *flux_hll)
A simple HLL Riemann solver for pure hydrodynamics. This takes just a single interface’s data and returns the HLL flux
- Parameters:
ql – the left interface state
qr – the right interface state
cl – sound speed on the left interface
cr – sound speed on the right interface
idir – coordinate direction for the solve (0 = x, 1 = y, 2 = z)
coord – geometry type (0 = Cartesian, 1 = axisymmetric, 2 = spherical)
f – the HLL fluxes
- AMREX_GPU_HOST_DEVICE AMREX_INLINE void HLLC (const int i, const int j, const int k, const int idir, Array4< Real const > const &ql, Array4< Real const > const &qr, Array4< Real const > const &qaux_arr, Array4< Real > const &uflx, Array4< Real > const &qgdnv, const bool store_full_state, const GeometryData &geom, const bool special_bnd_lo, const bool special_bnd_hi, GpuArray< int, 3 > const &domlo, GpuArray< int, 3 > const &domhi)
A HLLC Riemann solver for pure hydrodynamics
- Parameters:
ql – the left interface state
qr – the right interface state
qaux_arr – the auxiliary state
uflx – the flux through the interface
qint – an approximate Godunov state on the interface
idir – coordinate direction for the solve (0 = x, 1 = y, 2 = z)
- AMREX_GPU_HOST_DEVICE AMREX_INLINE void riemann_state (const int i, const int j, const int k, const int idir, Array4< Real > const &qm, Array4< Real > const &qp, Array4< Real const > const &qaux_arr, RiemannState &qint, const bool special_bnd_lo, const bool special_bnd_hi, GpuArray< int, 3 > const &domlo, GpuArray< int, 3 > const &domhi)