AMReX-Hydro
AMReX-based hydro routines for low Mach number flows
hydro_godunov_ppm.H File Reference
#include <AMReX_MultiFab.H>
#include <AMReX_BCRec.H>
#include <AMReX_BC_TYPES.H>
#include <hydro_constants.H>
Include dependency graph for hydro_godunov_ppm.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  PPM::nolimiter
 
struct  PPM::vanleer
 
struct  PPM::wenoz
 
struct  PPM::weno_js
 
struct  PPM::upwind
 
struct  PPM::minmod
 

Namespaces

 PPM
 

Enumerations

enum  PPM::limiters {
  PPM::VanLeer , PPM::WENOZ , PPM::WENO_JS , PPM::NoLimiter ,
  PPM::UPWIND , PPM::MINMOD
}
 

Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void minmod_fn (const amrex::Real sm1, const amrex::Real s0, const amrex::Real sp1, amrex::Real &dsm, amrex::Real &dsp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Godunov_minmod_bc_lo (const int n, const amrex::Real sm1, const amrex::Real s0, const amrex::Real vel_edge, amrex::Real &dsm, const int bclo, const int domlo)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Godunov_minmod_bc_hi (const int n, const amrex::Real s0, const amrex::Real sp1, const amrex::Real vel_edge, amrex::Real &dsp, const int bchi, const int domhi)
 
template<typename Limiter >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void PPM::SetXBCs (const int i, const int j, const int k, const int n, amrex::Real &sm, amrex::Real &sp, amrex::Real &sedge1, amrex::Real &sedge2, const amrex::Array4< const amrex::Real > &s, const amrex::Real velm, const amrex::Real velp, const int bclo, const int bchi, const int domlo, const int domhi)
 
template<typename Limiter >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void PPM::SetYBCs (const int i, const int j, const int k, const int n, amrex::Real &sm, amrex::Real &sp, amrex::Real &sedge1, amrex::Real &sedge2, const amrex::Array4< const amrex::Real > &s, const amrex::Real velm, const amrex::Real velp, const int bclo, const int bchi, const int domlo, const int domhi)
 
template<typename Limiter >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void PPM::PredictVelOnXFace (const int i, const int j, const int k, const int n, const amrex::Real dtdx, const amrex::Real v_ad, const amrex::Array4< const amrex::Real > &S, const amrex::Array4< amrex::Real > &Im, const amrex::Array4< amrex::Real > &Ip, const amrex::BCRec bc, const int domlo, const int domhi, const Limiter &)
 
template<typename Limiter >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void PPM::PredictVelOnYFace (const int i, const int j, const int k, const int n, const amrex::Real dtdy, const amrex::Real v_ad, const amrex::Array4< const amrex::Real > &S, const amrex::Array4< amrex::Real > &Im, const amrex::Array4< amrex::Real > &Ip, const amrex::BCRec bc, const int domlo, const int domhi, const Limiter &)
 
template<typename Limiter >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void PPM::PredictStateOnXFace (const int i, const int j, const int k, const int n, const amrex::Real dt, const amrex::Real dx, amrex::Real &Im, amrex::Real &Ip, const amrex::Array4< const amrex::Real > &S, const amrex::Array4< const amrex::Real > &vel_edge, const amrex::BCRec bc, const int domlo, const int domhi, const Limiter &, int limiter_type)
 
template<typename Limiter >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void PPM::PredictStateOnYFace (const int i, const int j, const int k, const int n, const amrex::Real dt, const amrex::Real dx, amrex::Real &Im, amrex::Real &Ip, const amrex::Array4< const amrex::Real > &S, const amrex::Array4< const amrex::Real > &vel_edge, const amrex::BCRec bc, const int domlo, const int domhi, const Limiter &, int limiter_type)
 
template<typename Limiter >
void PPM::PredictVelOnFaces (amrex::Box const &bx, AMREX_D_DECL(amrex::Array4< amrex::Real > const &Imx, amrex::Array4< amrex::Real > const &Imy, amrex::Array4< amrex::Real > const &Imz), AMREX_D_DECL(amrex::Array4< amrex::Real > const &Ipx, amrex::Array4< amrex::Real > const &Ipy, amrex::Array4< amrex::Real > const &Ipz), amrex::Array4< amrex::Real const > const &q, amrex::Array4< amrex::Real const > const &vel, amrex::Geometry geom, amrex::Real dt, amrex::BCRec const *pbc, const Limiter &limiter)
 
template<typename Limiter >
void PPM::PredictStateOnFaces (amrex::Box const &bx, AMREX_D_DECL(amrex::Array4< amrex::Real > const &Imx, amrex::Array4< amrex::Real > const &Imy, amrex::Array4< amrex::Real > const &Imz), AMREX_D_DECL(amrex::Array4< amrex::Real > const &Ipx, amrex::Array4< amrex::Real > const &Ipy, amrex::Array4< amrex::Real > const &Ipz), AMREX_D_DECL(amrex::Array4< amrex::Real const > const &umac, amrex::Array4< amrex::Real const > const &vmac, amrex::Array4< amrex::Real const > const &wmac), amrex::Array4< amrex::Real const > const &q, amrex::Geometry geom, amrex::Real l_dt, amrex::BCRec const *pbc, const int ncomp, const Limiter &limiter, int limiter_type)
 

Variables

static constexpr int PPM::default_limiter = VanLeer
 

Function Documentation

◆ Godunov_minmod_bc_hi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Godunov_minmod_bc_hi ( const int  n,
const amrex::Real  s0,
const amrex::Real  sp1,
const amrex::Real  vel_edge,
amrex::Real &  dsp,
const int  bchi,
const int  domhi 
)
Here is the caller graph for this function:

◆ Godunov_minmod_bc_lo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Godunov_minmod_bc_lo ( const int  n,
const amrex::Real  sm1,
const amrex::Real  s0,
const amrex::Real  vel_edge,
amrex::Real &  dsm,
const int  bclo,
const int  domlo 
)
Here is the caller graph for this function:

◆ minmod_fn()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void minmod_fn ( const amrex::Real  sm1,
const amrex::Real  s0,
const amrex::Real  sp1,
amrex::Real &  dsm,
amrex::Real &  dsp 
)
Here is the caller graph for this function: