10 BL_PROFILE(
"slow_rhs_post_limit");
16 const bool l_sbm = (solverChoice.moisture_type == MoistureType::SBM);
22 (m_SurfaceLayer[Orientation(Direction::z, Orientation::low)] !=
nullptr) );
23 const int l_klo = fine_geom.Domain().smallEnd(2);
40 #pragma omp parallel if (Gpu::notInLaunchRegion())
42 for ( MFIter mfi(S_new[
IntVars::cons],TilingIfNotGPU()); mfi.isValid(); ++mfi)
44 const Box& tbx = mfi.tilebox();
49 ParallelFor(tbx, [=] AMREX_GPU_DEVICE (
int i,
int j,
int k) noexcept
51 if (skip_klo && k ==
l_klo) {
return; }
62 cons(i,j,k,n) = amrex::max(
cons(i,j,k,n), zero_d);
#define Rho_comp
Definition: ERF_IndexDefines.H:53
#define RhoQ1_comp
Definition: ERF_IndexDefines.H:66
#define RhoKE_comp
Definition: ERF_IndexDefines.H:55
ParallelFor(fab_box, [=] AMREX_GPU_DEVICE(int i, int j, int k) { qrcuten_arr(i, j, k)=Real(0);qscuten_arr(i, j, k)=Real(0);qicuten_arr(i, j, k)=Real(0);})
constexpr amrex::Real zero
Definition: ERF_NumericalConstants.H:36
const bool l_sbm
Definition: ERF_ScalarLimitPost.H:16
const int l_klo
Definition: ERF_ScalarLimitPost.H:23
const Real l_eps
Definition: ERF_ScalarLimitPost.H:26
const DiffChoice l_diff_choice
Definition: ERF_ScalarLimitPost.H:17
const bool l_dirichlet_k
Definition: ERF_ScalarLimitPost.H:21
const TurbChoice & l_tc
Definition: ERF_ScalarLimitPost.H:12
const bool l_limit_KE
Definition: ERF_ScalarLimitPost.H:14
const int l_nq
Definition: ERF_ScalarLimitPost.H:31
const bool l_limit_Q
Definition: ERF_ScalarLimitPost.H:15
const Real l_tke_floor
Definition: ERF_ScalarLimitPost.H:25
amrex::Real Real
Definition: ERF_ShocInterface.H:19
@ cons
Definition: ERF_IndexDefines.H:272
@ None
Definition: ERF_LSM_Types.H:6
@ nn
Definition: ERF_WDM6.H:33
@ cons
Definition: ERF_IndexDefines.H:254
void require_host_write_range_allowed(const bool sbm_active, const int start_component, const int num_components, const HostWritePath path)
Definition: ERF_SBMOwnership.cpp:47
real(c_double), parameter epsilon
Definition: ERF_module_model_constants.F90:12
Definition: ERF_DiffStruct.H:24
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE bool host_transports(int n) const noexcept
Definition: ERF_DiffStruct.H:121
Definition: ERF_TurbStruct.H:119
bool use_tke
Whether any TKE or QKE closure is active.
Definition: ERF_TurbStruct.H:983
RANSType rans_type
Selected RANS closure.
Definition: ERF_TurbStruct.H:877
amrex::Real tke_floor
Definition: ERF_TurbStruct.H:884
bool dirichlet_k
Whether TKE uses Dirichlet boundary treatment.
Definition: ERF_TurbStruct.H:879