AMReX-Hydro
AMReX-based hydro routines for low Mach number flows
hydro_ebmol.H
Go to the documentation of this file.
1 /**
2  * \file hydro_ebmol.H
3  * \addtogroup EBMOL
4  * @{
5  *
6  */
7 
8 #ifndef HYDRO_EBMOL_H_
9 #define HYDRO_EBMOL_H_
10 
11 #include <AMReX_MultiFab.H>
12 #include <AMReX_BCRec.H>
13 
14 /**
15  * \namespace EBMOL
16  *
17  * The procedure for computing MAC velocities and edge states with EB-aware MOL does not
18  * involve any time derivatives. All slope computations use second-order limited slopes
19  * as described in
20  * <a href="https://amrex-codes.github.io/amrex/hydro_html/EBMOL.html#sec:slopes">[sec:slopes]</a>.
21  *
22  */
23 namespace EBMOL {
24 
25 void ComputeEdgeState ( amrex::Box const& bx,
27  amrex::Array4<amrex::Real> const& yedge,
28  amrex::Array4<amrex::Real> const& zedge),
30  int ncomp,
34  amrex::Box const& domain,
35  amrex::Vector<amrex::BCRec> const& bcs,
36  amrex::BCRec const* d_bcrec_ptr,
43  bool is_velocity );
44 
47  amrex::MultiFab& vmac,
48  amrex::MultiFab& wmac ),
49  const amrex::Geometry& a_geom,
50  amrex::Vector<amrex::BCRec> const& h_bcrec,
51  const amrex::BCRec* d_bcrec );
52 
54  amrex::Box const& vbx,
55  amrex::Box const& wbx ),
58  amrex::Array4<amrex::Real> const& w ),
66  const amrex::Geometry& geom,
67  amrex::Vector<amrex::BCRec> const& h_bcrec,
68  const amrex::BCRec* d_bcrec );
69 }
70 
71 #endif
72 /** @} */
#define AMREX_D_DECL(a, b, c)
void ExtrapVelToFacesBox(AMREX_D_DECL(amrex::Box const &ubx, amrex::Box const &vbx, amrex::Box const &wbx), AMREX_D_DECL(amrex::Array4< amrex::Real > const &u, amrex::Array4< amrex::Real > const &v, amrex::Array4< amrex::Real > const &w), amrex::Array4< amrex::Real const > const &vcc, amrex::Array4< amrex::EBCellFlag const > const &flag, AMREX_D_DECL(amrex::Array4< amrex::Real const > const &fcx, amrex::Array4< amrex::Real const > const &fcy, amrex::Array4< amrex::Real const > const &fcz), amrex::Array4< amrex::Real const > const &ccc, amrex::Array4< amrex::Real const > const &vfrac, const amrex::Geometry &geom, amrex::Vector< amrex::BCRec > const &h_bcrec, const amrex::BCRec *d_bcrec)
void ExtrapVelToFaces(const amrex::MultiFab &vel, AMREX_D_DECL(amrex::MultiFab &umac, amrex::MultiFab &vmac, amrex::MultiFab &wmac), const amrex::Geometry &a_geom, amrex::Vector< amrex::BCRec > const &h_bcrec, const amrex::BCRec *d_bcrec)
void ComputeEdgeState(amrex::Box const &bx, AMREX_D_DECL(amrex::Array4< amrex::Real > const &xedge, amrex::Array4< amrex::Real > const &yedge, amrex::Array4< amrex::Real > const &zedge), amrex::Array4< amrex::Real const > const &q, int ncomp, 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::Box const &domain, amrex::Vector< amrex::BCRec > const &bcs, amrex::BCRec const *d_bcrec_ptr, AMREX_D_DECL(amrex::Array4< amrex::Real const > const &fcx, amrex::Array4< amrex::Real const > const &fcy, amrex::Array4< amrex::Real const > const &fcz), amrex::Array4< amrex::Real const > const &ccc, amrex::Array4< amrex::Real const > const &vfrac, amrex::Array4< amrex::EBCellFlag const > const &flag, bool is_velocity)