ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
Go to the source code of this file.
Functions | |
template<typename InterpType_H , typename InterpType_V > | |
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real | AdvectionSrcForXMom (int i, int j, int k, const amrex::Array4< const amrex::Real > &rho_u, const amrex::Array4< const amrex::Real > &rho_v, const amrex::Array4< const amrex::Real > &Omega, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &ax, const amrex::Array4< const amrex::Real > &, const amrex::Array4< const amrex::Real > &az, const amrex::Array4< const amrex::Real > &detJ, InterpType_H interp_u_h, InterpType_V interp_u_v, const amrex::Real upw_frac_h, const amrex::Real upw_frac_v, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mf_u_inv, const amrex::Array4< const amrex::Real > &mf_v_inv) |
template<typename InterpType_H , typename InterpType_V > | |
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real | AdvectionSrcForYMom (int i, int j, int k, const amrex::Array4< const amrex::Real > &rho_u, const amrex::Array4< const amrex::Real > &rho_v, const amrex::Array4< const amrex::Real > &Omega, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &, const amrex::Array4< const amrex::Real > &ay, const amrex::Array4< const amrex::Real > &az, const amrex::Array4< const amrex::Real > &detJ, InterpType_H interp_v_h, InterpType_V interp_v_v, const amrex::Real upw_frac_h, const amrex::Real upw_frac_v, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mf_u_inv, const amrex::Array4< const amrex::Real > &mf_v_inv) |
template<typename InterpType_H , typename InterpType_V , typename WallInterpType > | |
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real | AdvectionSrcForZMom (int i, int j, int k, const amrex::Array4< const amrex::Real > &rho_u, const amrex::Array4< const amrex::Real > &rho_v, const amrex::Array4< const amrex::Real > &Omega, const amrex::Array4< const amrex::Real > &w, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &, const amrex::Array4< const amrex::Real > &, const amrex::Array4< const amrex::Real > &az, const amrex::Array4< const amrex::Real > &detJ, InterpType_H interp_omega_h, InterpType_V interp_omega_v, WallInterpType interp_omega_wall, const amrex::Real upw_frac_h, const amrex::Real upw_frac_v, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mf_m, const amrex::Array4< const amrex::Real > &mf_u_inv, const amrex::Array4< const amrex::Real > &mf_v_inv, const AdvType vert_adv_type, const int lo_z_face, const int hi_z_face) |
template<typename InterpType_H , typename InterpType_V , typename WallInterpType > | |
void | AdvectionSrcForMomWrapper (const amrex::Box &bxx, const amrex::Box &bxy, const amrex::Box &bxz, const amrex::Array4< amrex::Real > &rho_u_rhs, const amrex::Array4< amrex::Real > &rho_v_rhs, const amrex::Array4< amrex::Real > &rho_w_rhs, const amrex::Array4< const amrex::Real > &rho_u, const amrex::Array4< const amrex::Real > &rho_v, const amrex::Array4< const amrex::Real > &Omega, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &w, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &ax, const amrex::Array4< const amrex::Real > &ay, const amrex::Array4< const amrex::Real > &az, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mf_m, const amrex::Array4< const amrex::Real > &mf_u_inv, const amrex::Array4< const amrex::Real > &mf_v_inv, const amrex::Real upw_frac_h, const amrex::Real upw_frac_v, const AdvType vert_adv_type, const int lo_z_face, const int hi_z_face) |
template<typename InterpType_H > | |
void | AdvectionSrcForMomVert (const amrex::Box &bxx, const amrex::Box &bxy, const amrex::Box &bxz, const amrex::Array4< amrex::Real > &rho_u_rhs, const amrex::Array4< amrex::Real > &rho_v_rhs, const amrex::Array4< amrex::Real > &rho_w_rhs, const amrex::Array4< const amrex::Real > &rho_u, const amrex::Array4< const amrex::Real > &rho_v, const amrex::Array4< const amrex::Real > &Omega, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &w, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &ax, const amrex::Array4< const amrex::Real > &ay, const amrex::Array4< const amrex::Real > &az, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mf_m, const amrex::Array4< const amrex::Real > &mf_u_inv, const amrex::Array4< const amrex::Real > &mf_v_inv, const amrex::Real upw_frac_h, const amrex::Real upw_frac_v, const AdvType vert_adv_type, const int lo_z_face, const int hi_z_face) |
void AdvectionSrcForMomVert | ( | const amrex::Box & | bxx, |
const amrex::Box & | bxy, | ||
const amrex::Box & | bxz, | ||
const amrex::Array4< amrex::Real > & | rho_u_rhs, | ||
const amrex::Array4< amrex::Real > & | rho_v_rhs, | ||
const amrex::Array4< amrex::Real > & | rho_w_rhs, | ||
const amrex::Array4< const amrex::Real > & | rho_u, | ||
const amrex::Array4< const amrex::Real > & | rho_v, | ||
const amrex::Array4< const amrex::Real > & | Omega, | ||
const amrex::Array4< const amrex::Real > & | u, | ||
const amrex::Array4< const amrex::Real > & | v, | ||
const amrex::Array4< const amrex::Real > & | w, | ||
const amrex::Array4< const amrex::Real > & | z_nd, | ||
const amrex::Array4< const amrex::Real > & | ax, | ||
const amrex::Array4< const amrex::Real > & | ay, | ||
const amrex::Array4< const amrex::Real > & | az, | ||
const amrex::Array4< const amrex::Real > & | detJ, | ||
const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > & | cellSizeInv, | ||
const amrex::Array4< const amrex::Real > & | mf_m, | ||
const amrex::Array4< const amrex::Real > & | mf_u_inv, | ||
const amrex::Array4< const amrex::Real > & | mf_v_inv, | ||
const amrex::Real | upw_frac_h, | ||
const amrex::Real | upw_frac_v, | ||
const AdvType | vert_adv_type, | ||
const int | lo_z_face, | ||
const int | hi_z_face | ||
) |
Wrapper function for computing the advective tendency w/ spatial order > 2.
void AdvectionSrcForMomWrapper | ( | const amrex::Box & | bxx, |
const amrex::Box & | bxy, | ||
const amrex::Box & | bxz, | ||
const amrex::Array4< amrex::Real > & | rho_u_rhs, | ||
const amrex::Array4< amrex::Real > & | rho_v_rhs, | ||
const amrex::Array4< amrex::Real > & | rho_w_rhs, | ||
const amrex::Array4< const amrex::Real > & | rho_u, | ||
const amrex::Array4< const amrex::Real > & | rho_v, | ||
const amrex::Array4< const amrex::Real > & | Omega, | ||
const amrex::Array4< const amrex::Real > & | u, | ||
const amrex::Array4< const amrex::Real > & | v, | ||
const amrex::Array4< const amrex::Real > & | w, | ||
const amrex::Array4< const amrex::Real > & | z_nd, | ||
const amrex::Array4< const amrex::Real > & | ax, | ||
const amrex::Array4< const amrex::Real > & | ay, | ||
const amrex::Array4< const amrex::Real > & | az, | ||
const amrex::Array4< const amrex::Real > & | detJ, | ||
const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > & | cellSizeInv, | ||
const amrex::Array4< const amrex::Real > & | mf_m, | ||
const amrex::Array4< const amrex::Real > & | mf_u_inv, | ||
const amrex::Array4< const amrex::Real > & | mf_v_inv, | ||
const amrex::Real | upw_frac_h, | ||
const amrex::Real | upw_frac_v, | ||
const AdvType | vert_adv_type, | ||
const int | lo_z_face, | ||
const int | hi_z_face | ||
) |
Wrapper function for computing the advective tendency w/ spatial order > 2.
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real AdvectionSrcForXMom | ( | int | i, |
int | j, | ||
int | k, | ||
const amrex::Array4< const amrex::Real > & | rho_u, | ||
const amrex::Array4< const amrex::Real > & | rho_v, | ||
const amrex::Array4< const amrex::Real > & | Omega, | ||
const amrex::Array4< const amrex::Real > & | z_nd, | ||
const amrex::Array4< const amrex::Real > & | ax, | ||
const amrex::Array4< const amrex::Real > & | , | ||
const amrex::Array4< const amrex::Real > & | az, | ||
const amrex::Array4< const amrex::Real > & | detJ, | ||
InterpType_H | interp_u_h, | ||
InterpType_V | interp_u_v, | ||
const amrex::Real | upw_frac_h, | ||
const amrex::Real | upw_frac_v, | ||
const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > & | cellSizeInv, | ||
const amrex::Array4< const amrex::Real > & | mf_u_inv, | ||
const amrex::Array4< const amrex::Real > & | mf_v_inv | ||
) |
Function for computing the advective tendency for the x-component of momentum with metric terms and for spatial order > 2
[in] | i,j,k | indices of x-face at which to create tendency |
[in] | rho_u | x-component of momentum |
[in] | rho_v | y-component of momentum |
[in] | Omega | component of the momentum normal to the z-coordinate surface |
[in] | z_nd | height coordinate at nodes |
[in] | ax | Area fractions on x-faces |
[in] | ay | Area fractions on y-faces |
[in] | az | Area fractions on z-faces |
[in] | detJ | Jacobian of the metric transformation (= 1 if use_terrain is false) |
[in] | cellSizeInv | inverse of the mesh spacing |
[in] | mf_u | map factor on x-faces |
[in] | mf_v | map factor on y-faces |
Referenced by AdvectionSrcForMomWrapper().
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real AdvectionSrcForYMom | ( | int | i, |
int | j, | ||
int | k, | ||
const amrex::Array4< const amrex::Real > & | rho_u, | ||
const amrex::Array4< const amrex::Real > & | rho_v, | ||
const amrex::Array4< const amrex::Real > & | Omega, | ||
const amrex::Array4< const amrex::Real > & | z_nd, | ||
const amrex::Array4< const amrex::Real > & | , | ||
const amrex::Array4< const amrex::Real > & | ay, | ||
const amrex::Array4< const amrex::Real > & | az, | ||
const amrex::Array4< const amrex::Real > & | detJ, | ||
InterpType_H | interp_v_h, | ||
InterpType_V | interp_v_v, | ||
const amrex::Real | upw_frac_h, | ||
const amrex::Real | upw_frac_v, | ||
const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > & | cellSizeInv, | ||
const amrex::Array4< const amrex::Real > & | mf_u_inv, | ||
const amrex::Array4< const amrex::Real > & | mf_v_inv | ||
) |
Function for computing the advective tendency for the y-component of momentum with metric terms and for spatial order > 2
[in] | i,j,k | indices of y-face at which to create tendency |
[in] | rho_u | x-component of momentum |
[in] | rho_v | y-component of momentum |
[in] | Omega | component of the momentum normal to the z-coordinate surface |
[in] | z_nd | height coordinate at nodes |
[in] | ax | Area fractions on x-faces |
[in] | ay | Area fractions on y-faces |
[in] | az | Area fractions on z-faces |
[in] | detJ | Jacobian of the metric transformation (= 1 if use_terrain is false) |
[in] | cellSizeInv | inverse of the mesh spacing |
[in] | mf_u | map factor on x-faces |
[in] | mf_v | map factor on y-faces |
Referenced by AdvectionSrcForMomWrapper().
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real AdvectionSrcForZMom | ( | int | i, |
int | j, | ||
int | k, | ||
const amrex::Array4< const amrex::Real > & | rho_u, | ||
const amrex::Array4< const amrex::Real > & | rho_v, | ||
const amrex::Array4< const amrex::Real > & | Omega, | ||
const amrex::Array4< const amrex::Real > & | w, | ||
const amrex::Array4< const amrex::Real > & | z_nd, | ||
const amrex::Array4< const amrex::Real > & | , | ||
const amrex::Array4< const amrex::Real > & | , | ||
const amrex::Array4< const amrex::Real > & | az, | ||
const amrex::Array4< const amrex::Real > & | detJ, | ||
InterpType_H | interp_omega_h, | ||
InterpType_V | interp_omega_v, | ||
WallInterpType | interp_omega_wall, | ||
const amrex::Real | upw_frac_h, | ||
const amrex::Real | upw_frac_v, | ||
const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > & | cellSizeInv, | ||
const amrex::Array4< const amrex::Real > & | mf_m, | ||
const amrex::Array4< const amrex::Real > & | mf_u_inv, | ||
const amrex::Array4< const amrex::Real > & | mf_v_inv, | ||
const AdvType | vert_adv_type, | ||
const int | lo_z_face, | ||
const int | hi_z_face | ||
) |
Function for computing the advective tendency for the z-component of momentum with metric terms and for spatial order > 2
[in] | i,j,k | indices of z-face at which to create tendency |
[in] | rho_u | x-component of momentum |
[in] | rho_v | y-component of momentum |
[in] | Omega | component of the momentum normal to the z-coordinate surface |
[in] | w | z-component of velocity |
[in] | z_nd | height coordinate at nodes |
[in] | ax | Area fractions on x-faces |
[in] | ay | Area fractions on y-faces |
[in] | az | Area fractions on z-faces |
[in] | detJ | Jacobian of the metric transformation (= 1 if use_terrain is false) |
[in] | cellSizeInv | inverse of the mesh spacing |
[in] | mf_m | map factor on cell centers |
[in] | mf_u | map factor on x-faces |
[in] | mf_v | map factor on y-faces |
[in] | vert_adv_type | int that defines advection stencil |
[in] | lo_z_face | minimum k value (z-face-centered)_in the domain at this level |
[in] | hi_z_face | maximum k value (z-face-centered) in the domain at this level |
Referenced by AdvectionSrcForMomWrapper().