1 #ifndef ERF_INTERPOLATE_UPW_H_
2 #define ERF_INTERPOLATE_UPW_H_
13 CENTERED2 (
const amrex::Array4<const amrex::Real>& phi,
87 amrex::Array4<const amrex::Real>
m_phi;
98 UPWIND3 (
const amrex::Array4<const amrex::Real>& phi,
110 const int& qty_index,
127 val_lo =
Evaluate(sp1,s,sm1,sm2,upw_lo);
136 const int& qty_index,
153 val_lo =
Evaluate(sp1,s,sm1,sm2,upw_lo);
162 const int& qty_index,
179 val_lo =
Evaluate(sp1,s,sm1,sm2,upw_lo);
203 AMREX_GPU_HOST_DEVICE
208 amrex::Array4<const amrex::Real>
m_phi;
220 AMREX_GPU_HOST_DEVICE
233 const int& qty_index,
260 const int& qty_index,
287 const int& qty_index,
318 return (sm1 +
myhalf * phi * (sm1 - sm2));
324 amrex::Array4<const amrex::Real>
m_phi;
336 AMREX_GPU_HOST_DEVICE
348 const int& qty_index,
368 const int& qty_index,
388 const int& qty_index,
421 amrex::Array4<const amrex::Real>
m_phi;
431 AMREX_GPU_HOST_DEVICE
433 UPWIND5 (
const amrex::Array4<const amrex::Real>& phi,
445 const int& qty_index,
464 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3,upw_lo);
473 const int& qty_index,
492 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3,upw_lo);
501 const int& qty_index,
520 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3,upw_lo);
548 AMREX_GPU_HOST_DEVICE
553 amrex::Array4<const amrex::Real>
m_phi;
565 AMREX_GPU_HOST_DEVICE
577 const int& qty_index,
590 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3);
599 const int& qty_index,
612 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3);
621 const int& qty_index,
634 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3);
659 amrex::Array4<const amrex::Real>
m_phi;
670 AMREX_GPU_HOST_DEVICE
684 const int& qty_index,
708 val_lo =
Evaluate(sp2,sp1,s,sm1,sm2,sm3,upw_lo,adv_type);
749 amrex::Array4<const amrex::Real>
m_phi;
constexpr amrex::Real three
Definition: ERF_Constants.H:9
constexpr amrex::Real myhalf
Definition: ERF_Constants.H:11
AdvType
Definition: ERF_IndexDefines.H:255
amrex::Real Real
Definition: ERF_ShocInterface.H:19
real(c_double), parameter a2
Definition: ERF_module_model_constants.F90:95
real(c_double), parameter a3
Definition: ERF_module_model_constants.F90:96
Definition: ERF_Interpolation_UPW.H:10
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &s, const amrex::Real &sm1) const
Definition: ERF_Interpolation_UPW.H:74
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInY(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:38
int GetUpwindCellNumber() const
Definition: ERF_Interpolation_UPW.H:84
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:56
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:87
static constexpr amrex::Real g1
Definition: ERF_Interpolation_UPW.H:88
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInX(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:20
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE CENTERED2(const amrex::Array4< const amrex::Real > &phi, const amrex::Real)
Definition: ERF_Interpolation_UPW.H:13
Definition: ERF_Interpolation_UPW.H:335
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:385
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInY(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:365
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:421
static constexpr amrex::Real g1
Definition: ERF_Interpolation_UPW.H:422
int GetUpwindCellNumber() const
Definition: ERF_Interpolation_UPW.H:418
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInX(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:345
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &sp1, const amrex::Real &s, const amrex::Real &sm1, const amrex::Real &sm2) const
Definition: ERF_Interpolation_UPW.H:405
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE CENTERED4(const amrex::Array4< const amrex::Real > &phi, const amrex::Real)
Definition: ERF_Interpolation_UPW.H:338
static constexpr amrex::Real g2
Definition: ERF_Interpolation_UPW.H:423
Definition: ERF_Interpolation_UPW.H:564
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInX(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:574
static constexpr amrex::Real g2
Definition: ERF_Interpolation_UPW.H:661
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE CENTERED6(const amrex::Array4< const amrex::Real > &phi, const amrex::Real)
Definition: ERF_Interpolation_UPW.H:567
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInY(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:596
int GetUpwindCellNumber() const
Definition: ERF_Interpolation_UPW.H:656
static constexpr amrex::Real g1
Definition: ERF_Interpolation_UPW.H:660
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:659
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real) const
Definition: ERF_Interpolation_UPW.H:618
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &sp2, const amrex::Real &sp1, const amrex::Real &s, const amrex::Real &sm1, const amrex::Real &sm2, const amrex::Real &sm3) const
Definition: ERF_Interpolation_UPW.H:640
static constexpr amrex::Real g3
Definition: ERF_Interpolation_UPW.H:662
Definition: ERF_Interpolation_UPW.H:219
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInX(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:230
static constexpr amrex::Real eps
Definition: ERF_Interpolation_UPW.H:325
int GetUpwindCellNumber() const
Definition: ERF_Interpolation_UPW.H:321
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &s, const amrex::Real &sm1, const amrex::Real &sm2) const
Definition: ERF_Interpolation_UPW.H:311
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE UPWIND3SL(const amrex::Array4< const amrex::Real > &phi, const amrex::Real)
Definition: ERF_Interpolation_UPW.H:222
static constexpr amrex::Real l1
Definition: ERF_Interpolation_UPW.H:326
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:284
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInY(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:257
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:324
static constexpr amrex::Real l2
Definition: ERF_Interpolation_UPW.H:327
Definition: ERF_Interpolation_UPW.H:95
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &sp1, const amrex::Real &s, const amrex::Real &sm1, const amrex::Real &sm2, const amrex::Real &upw) const
Definition: ERF_Interpolation_UPW.H:185
static constexpr amrex::Real g2
Definition: ERF_Interpolation_UPW.H:211
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void SetUpwinding(amrex::Real upw_frac)
Definition: ERF_Interpolation_UPW.H:205
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:159
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:208
static constexpr amrex::Real g1
Definition: ERF_Interpolation_UPW.H:210
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE UPWIND3(const amrex::Array4< const amrex::Real > &phi, const amrex::Real upw_frac)
Definition: ERF_Interpolation_UPW.H:98
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInY(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:133
int GetUpwindCellNumber() const
Definition: ERF_Interpolation_UPW.H:201
amrex::Real m_upw_frac
Definition: ERF_Interpolation_UPW.H:209
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInX(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:107
Definition: ERF_Interpolation_UPW.H:430
amrex::Real m_upw_frac
Definition: ERF_Interpolation_UPW.H:554
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE UPWIND5(const amrex::Array4< const amrex::Real > &phi, const amrex::Real upw_frac)
Definition: ERF_Interpolation_UPW.H:433
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &sp2, const amrex::Real &sp1, const amrex::Real &s, const amrex::Real &sm1, const amrex::Real &sm2, const amrex::Real &sm3, const amrex::Real &upw) const
Definition: ERF_Interpolation_UPW.H:526
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:553
static constexpr amrex::Real g2
Definition: ERF_Interpolation_UPW.H:556
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:498
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void SetUpwinding(amrex::Real upw_frac)
Definition: ERF_Interpolation_UPW.H:550
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInY(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:470
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInX(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo) const
Definition: ERF_Interpolation_UPW.H:442
int GetUpwindCellNumber() const
Definition: ERF_Interpolation_UPW.H:546
static constexpr amrex::Real g1
Definition: ERF_Interpolation_UPW.H:555
static constexpr amrex::Real g3
Definition: ERF_Interpolation_UPW.H:557
Definition: ERF_Interpolation_UPW.H:669
amrex::Array4< const amrex::Real > m_phi
Definition: ERF_Interpolation_UPW.H:749
static constexpr amrex::Real g1_5_6
Definition: ERF_Interpolation_UPW.H:753
static constexpr amrex::Real g1_3_4
Definition: ERF_Interpolation_UPW.H:751
amrex::Real m_upw_frac
Definition: ERF_Interpolation_UPW.H:750
static constexpr amrex::Real g2_3_4
Definition: ERF_Interpolation_UPW.H:752
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real Evaluate(const amrex::Real &sp2, const amrex::Real &sp1, const amrex::Real &s, const amrex::Real &sm1, const amrex::Real &sm2, const amrex::Real &sm3, const amrex::Real &upw, const AdvType adv_type) const
Definition: ERF_Interpolation_UPW.H:715
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE UPWINDALL(const amrex::Array4< const amrex::Real > &phi, const amrex::Real upw_frac)
Definition: ERF_Interpolation_UPW.H:672
static constexpr amrex::Real g3_5_6
Definition: ERF_Interpolation_UPW.H:755
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void InterpolateInZ(const int &i, const int &j, const int &k, const int &qty_index, amrex::Real &val_lo, amrex::Real upw_lo, const AdvType adv_type) const
Definition: ERF_Interpolation_UPW.H:681
static constexpr amrex::Real g2_5_6
Definition: ERF_Interpolation_UPW.H:754