ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_Morrison_Advance_F.H File Reference

Go to the source code of this file.

Functions

 set_morrison_ndcnst_c (m_ndcnst)
 
FArrayBox qrcuten_fab (grown_box, 1, Arena_Used)
 
FArrayBox qscuten_fab (grown_box, 1, Arena_Used)
 
FArrayBox qicuten_fab (grown_box, 1, Arena_Used)
 
 ParallelFor (grown_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);})
 
FArrayBox rainprod_fab (grown_box, 1, Arena_Used)
 
FArrayBox evapprod_fab (grown_box, 1, Arena_Used)
 
FArrayBox qlsink_fab (grown_box, 1, Arena_Used)
 
FArrayBox precr_fab (grown_box, 1, Arena_Used)
 
FArrayBox preci_fab (grown_box, 1, Arena_Used)
 
FArrayBox precs_fab (grown_box, 1, Arena_Used)
 
FArrayBox precg_fab (grown_box, 1, Arena_Used)
 
 ParallelFor (grown_box, [=] AMREX_GPU_DEVICE(int i, int j, int k) { rainprod_arr(i, j, k)=Real(0);evapprod_arr(i, j, k)=Real(0);qlsink_arr(i, j, k)=Real(0);precr_arr(i, j, k)=Real(0);preci_arr(i, j, k)=Real(0);precs_arr(i, j, k)=Real(0);precg_arr(i, j, k)=Real(0);})
 
 mp_morr_two_moment_c (1, theta_arr.dataPtr(), qv_arr.dataPtr(), qcl_arr.dataPtr(), qpr_arr.dataPtr(), qci_arr.dataPtr(), qps_arr.dataPtr(), qpg_arr.dataPtr(), ni_arr.dataPtr(), ns_arr.dataPtr(), nr_arr.dataPtr(), ng_arr.dataPtr(), rho_arr.dataPtr(), pii_arr.dataPtr(), pres_arr.dataPtr(), dt, dz_arr.dataPtr(), w_arr.dataPtr(), rain_accum_arr.dataPtr(), rainncv_arr.dataPtr(), sr_arr.dataPtr(), snow_accum_arr.dataPtr(), snowncv_arr.dataPtr(), graup_accum_arr.dataPtr(), graupelncv_arr.dataPtr(), dummy_reflectivity_ptr, true, 0, qrcuten_arr.dataPtr(), qscuten_arr.dataPtr(), qicuten_arr.dataPtr(), flag_qndrop, nullptr, ilo, ihi, jlo, jhi, klo, khi, ilom, ihim, jlom, jhim, klom, khim, ilo, ihi, jlo, jhi, klo, khi, false, rainprod_arr.dataPtr(), evapprod_arr.dataPtr(), qlsink_arr.dataPtr(), precr_arr.dataPtr(), preci_arr.dataPtr(), precs_arr.dataPtr(), precg_arr.dataPtr())
 

Variables

double dummy_reflectivity = Real(0)
 
double * dummy_reflectivity_ptr = &dummy_reflectivity
 
const int ilom = grown_box.loVect()[0]
 
const int ihim = grown_box.hiVect()[0]
 
const int jlom = grown_box.loVect()[1]
 
const int jhim = grown_box.hiVect()[1]
 
const int klom = grown_box.loVect()[2]
 
const int khim = grown_box.hiVect()[2]
 
Arena * Arena_Used = The_Arena()
 
auto const & qrcuten_arr = qrcuten_fab.array()
 
auto const & qscuten_arr = qscuten_fab.array()
 
auto const & qicuten_arr = qicuten_fab.array()
 
bool flag_qndrop = false
 
auto const & rainprod_arr = rainprod_fab.array()
 
auto const & evapprod_arr = evapprod_fab.array()
 
auto const & qlsink_arr = qlsink_fab.array()
 
auto const & precr_arr = precr_fab.array()
 
auto const & preci_arr = preci_fab.array()
 
auto const & precs_arr = precs_fab.array()
 
auto const & precg_arr = precg_fab.array()
 

Function Documentation

◆ evapprod_fab()

FArrayBox evapprod_fab ( grown_box  ,
,
Arena_Used   
)

◆ mp_morr_two_moment_c()

mp_morr_two_moment_c ( ,
theta_arr.  dataPtr(),
qv_arr.  dataPtr(),
qcl_arr.  dataPtr(),
qpr_arr.  dataPtr(),
qci_arr.  dataPtr(),
qps_arr.  dataPtr(),
qpg_arr.  dataPtr(),
ni_arr.  dataPtr(),
ns_arr.  dataPtr(),
nr_arr.  dataPtr(),
ng_arr.  dataPtr(),
rho_arr.  dataPtr(),
pii_arr.  dataPtr(),
pres_arr.  dataPtr(),
dt  ,
dz_arr.  dataPtr(),
w_arr.  dataPtr(),
rain_accum_arr.  dataPtr(),
rainncv_arr.  dataPtr(),
sr_arr.  dataPtr(),
snow_accum_arr.  dataPtr(),
snowncv_arr.  dataPtr(),
graup_accum_arr.  dataPtr(),
graupelncv_arr.  dataPtr(),
dummy_reflectivity_ptr  ,
true  ,
,
qrcuten_arr.  dataPtr(),
qscuten_arr.  dataPtr(),
qicuten_arr.  dataPtr(),
flag_qndrop  ,
nullptr  ,
ilo  ,
ihi  ,
jlo  ,
jhi  ,
klo  ,
khi  ,
ilom  ,
ihim  ,
jlom  ,
jhim  ,
klom  ,
khim  ,
ilo  ,
ihi  ,
jlo  ,
jhi  ,
klo  ,
khi  ,
false  ,
rainprod_arr.  dataPtr(),
evapprod_arr.  dataPtr(),
qlsink_arr.  dataPtr(),
precr_arr.  dataPtr(),
preci_arr.  dataPtr(),
precs_arr.  dataPtr(),
precg_arr.  dataPtr() 
)

◆ ParallelFor() [1/2]

ParallelFor ( grown_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);}   
)

Referenced by SHOCInterface::add_fast_tend(), SHOCInterface::add_slow_tend(), add_thin_body_sources(), AddPertToBckgnd(), Morrison::Advance(), WSM6::Advance(), NOAHMP::Advance_With_State(), Kessler::AdvanceKessler(), MM5::AdvanceMM5(), SatAdj::AdvanceSatAdj(), SLM::AdvanceSLM(), AdvectionSrcForMom(), AdvectionSrcForMom_ConstantDz(), AdvectionSrcForMom_EB(), AdvectionSrcForMom_StretchedDz(), AdvectionSrcForMom_TF(), AdvectionSrcForMomWrapper(), AdvectionSrcForMomWrapper_N(), AdvectionSrcForOpenBC_Normal(), AdvectionSrcForOpenBC_Tangent_Cons(), AdvectionSrcForOpenBC_Tangent_Xmom(), AdvectionSrcForOpenBC_Tangent_Ymom(), AdvectionSrcForOpenBC_Tangent_Zmom(), AdvectionSrcForRho(), AdvectionSrcForScalars(), AdvectionSrcForScalarsWrapper(), ERF::apply_gaussian_smoothing_to_perturbations(), TurbulentPerturbation::apply_tpi(), ApplyBndryForcing_Forecast(), ApplyInvertedMask(), ApplyMask(), ApplyNeumannBCs(), ERF::ApplyOceanSurfaceState(), ApplySpongeZoneBCsForCC(), ApplySpongeZoneBCsForMom(), ApplySpongeZoneBCsForMom_ReadFromFile(), ApplySurfaceTreatment_BulkCoeff_CC(), ApplySurfaceTreatment_BulkCoeff_Mom(), ERF::AverageDownTo(), br_shift(), ERF::build_fine_mask(), ERFFillPatcher::BuildMask(), TurbulentPerturbation::calc_tpi_meanMag_perBox(), ERF::check_for_low_temp(), ERF::check_for_negative_theta(), SAM::Cloud(), PlaneAverage::compute_averages(), SAM::Compute_Coefficients(), ERF::compute_divergence(), MOSTAverage::compute_eb_averages(), SurfaceLayer::compute_fluxes(), GeneralAD::compute_freestream_velocity(), SimpleAD::compute_freestream_velocity(), compute_gradp_interpz(), compute_gradp_xy(), compute_gradp_z(), ERF::compute_max_pressure_gradient_diagnostic(), MYNNPBLH::compute_pblh(), MOSTAverage::compute_plane_averages(), Fitch::compute_power_output(), EWP::compute_power_output(), MOSTAverage::compute_region_averages(), saturation_funcs::compute_saturation_pressure_H2O(), saturation_funcs::compute_saturation_vapfrac_H2O(), SurfaceLayer::compute_sfc_params_from_lsm_fluxes(), SurfaceLayer::compute_SurfaceLayer_bcs(), SurfaceLayer::compute_SurfaceLayer_bcs_EB(), ComputeDiffusivityMRF(), ComputeDiffusivityMYJ(), ComputeDiffusivityMYNN25(), ComputeDiffusivityMYNNEDMF(), ComputeDiffusivityYSU(), MM5::ComputeFluxes(), SLM::ComputeFluxes(), ComputeGlobalMinLocation(), ComputeStrain_EB(), ComputeStrain_N(), ComputeStrain_S(), ComputeStrain_T(), ComputeStressConsVisc_EB(), ComputeStressConsVisc_N(), ComputeStressConsVisc_S(), ComputeStressConsVisc_T(), ComputeStressVarVisc_EB(), ComputeStressVarVisc_N(), ComputeStressVarVisc_S(), ComputeStressVarVisc_T(), MM5::ComputeTsurf(), SLM::ComputeTsurf(), ComputeTurbulentViscosity(), ComputeTurbulentViscosityLES(), ComputeTurbulentViscosityLES_EB(), ComputeTurbulentViscosityRANS(), cons_to_prim(), ConvertForProjection(), Kessler::Copy_Micro_to_State(), Morrison::Copy_Micro_to_State(), SAM::Copy_Micro_to_State(), SatAdj::Copy_Micro_to_State(), WSM6::Copy_Micro_to_State(), Kessler::Copy_State_to_Micro(), Morrison::Copy_State_to_Micro(), SAM::Copy_State_to_Micro(), SatAdj::Copy_State_to_Micro(), WSM6::Copy_State_to_Micro(), copy_surface_tau_for_implicit(), correct_outflow(), eb_aux_::define(), ForestDrag::define_drag_field(), ERF::derive_diag_profiles(), ERF::derive_diag_profiles_stag(), ERF::derive_stress_profiles(), ERF::derive_stress_profiles_stag(), DiffusionSrcForMom(), DiffusionSrcForMom_EB(), DiffusionSrcForState_EB(), DiffusionSrcForState_N(), DiffusionSrcForState_S(), DiffusionSrcForState_T(), EBAdvectionSrcForMomWrapper(), EBAdvectionSrcForRho(), EBAdvectionSrcForScalars(), EBAdvectionSrcForScalarsWrapper(), derived::erf_derenstrophysq(), derived::erf_derhelicity(), derived::erf_derlocalhelicity(), derived::erf_dermagvel(), derived::erf_dermagvelsq(), derived::erf_dermaxreflectivity(), derived::erf_dermoisttemp(), derived::erf_dermucape(), derived::erf_derprecipitable(), derived::erf_derreflectivity(), derived::erf_derrhodivide(), derived::erf_dersoundspeed(), derived::erf_dertemp(), derived::erf_dervortx(), derived::erf_dervorty(), derived::erf_dervortz(), ERF::erf_enforce_hse(), erf_init_const_dens_and_linear_th_hse(), erf_init_const_dens_hse(), erf_init_dens_hse_dry(), erf_init_dens_hse_moist(), erf_make_tau_terms(), erf_slow_rhs_post(), erf_slow_rhs_pre(), erf_substep_MT(), erf_substep_NS(), erf_substep_T(), ERF::ErrorEst(), ERF::fill_from_bndryregs(), WindFarm::fill_Nturb_multifab(), SurfaceLayer::fill_qsurf_with_qsat(), WindFarm::fill_SMark_multifab(), WindFarm::fill_SMark_multifab_mesoscale_models(), SurfaceLayer::fill_tsurf_with_sst_and_tsk(), ERF::FillBdyCCVels(), ERF::FillForecastStateMultiFabs(), ERF::FillSurfaceStateMultiFabs(), FillZeroAreaFaceFluxes(), ERF::FindInitialEye(), fine_compute_interior_ghost_rhs(), for(), SurfaceLayer::get_lsm_tsurf(), LineSampler::get_sample_data(), PlaneSampler::get_sample_data(), ReadBndryPlanes::get_tendency(), HurricaneEyeTrackerInitial(), HurricaneEyeTrackerNotInitial(), HurricaneMaxVelTracker(), HurricaneMinPressureTracker(), SAM::IceFall(), if(), ImplicitDiffForMomLU_N(), ImplicitDiffForMomLU_S(), ImplicitDiffForMomLU_T(), ImplicitDiffForStateLU_N(), ImplicitDiffForStateLU_S(), ImplicitDiffForStateLU_T(), ERFPhysBCFunct_base::impose_lateral_basestate_bcs(), ERFPhysBCFunct_cons::impose_lateral_cons_bcs(), ERFPhysBCFunct_u::impose_lateral_xvel_bcs(), ERFPhysBCFunct_v::impose_lateral_yvel_bcs(), ERFPhysBCFunct_w::impose_lateral_zvel_bcs(), ERFPhysBCFunct_base::impose_vertical_basestate_bcs(), ERFPhysBCFunct_cons::impose_vertical_cons_bcs(), ERFPhysBCFunct_u::impose_vertical_xvel_bcs(), ERFPhysBCFunct_v::impose_vertical_yvel_bcs(), ERFPhysBCFunct_w::impose_vertical_zvel_bcs(), ERF::ImposeBCsOnPhi(), init_bx_scalars_from_input_sounding(), init_bx_scalars_from_input_sounding_hse(), init_bx_velocities_from_input_sounding(), ERF::init_custom(), init_default_zphys(), ERF::init_from_hse(), ERF::init_immersed_forcing(), init_my_custom_terrain(), SurfaceLayer::init_tke_from_ustar(), init_which_terrain_grid(), InterpolateToFineMF(), Radiation::kokkos_buffers_to_mf(), SHOCInterface::kokkos_buffers_to_mf(), make_areas(), make_buoyancy(), make_fast_coeffs(), make_gradp_pert(), make_J(), make_mom_sources(), make_sources(), make_terrain_fitted_coords(), make_zcc(), ERF::MakeDiagnosticAverage(), MakeFinalMultiFabs(), ERF::MakeHorizontalAverages(), SHOCInterface::mf_to_kokkos_buffers(), Radiation::mf_to_kokkos_buffers(), MomentumToVelocity(), TurbulentPerturbation::netZeroBuoyantAdd(), TurbulentPerturbation::netZeroBuoyantAdjust(), NumericalDiffusion_Scal(), NumericalDiffusion_Xmom(), NumericalDiffusion_Ymom(), ERF::PackAtmosphericStates(), ERF::poisson_wall_dist(), Radiation::populateDatalogMF(), ERF::post_timestep(), SAM::Precip(), SAM::PrecipFall(), ERF::project_momenta(), ERF::project_velocity_tb(), TurbulentPerturbation::pseudoRandomPert(), SurfaceLayer::read_custom_roughness(), ProblemBase::read_custom_terrain(), ReadBndryPlanes::read_file(), ERF::ReadCheckpointFile(), realbdy_compute_interior_ghost_rhs(), realbdy_compute_relaxation(), redistribute_term(), eb_::set_connection_flags(), SHOCInterface::set_diff_stresses(), MOSTAverage::set_eb_normalization(), SHOCInterface::set_eddy_diffs(), MOSTAverage::set_k_indices_T(), MOSTAverage::set_norm_indices_T(), MOSTAverage::set_norm_positions_T(), MOSTAverage::set_rotated_fields(), MOSTAverage::set_z_positions_T(), ERF::solve_with_gmres(), EWP::source_terms_cellcentered(), Fitch::source_terms_cellcentered(), GeneralAD::source_terms_cellcentered(), SimpleAD::source_terms_cellcentered(), ERF::sum_derived_quantities(), ERF::sum_energy_quantities(), tag_on_distance_from_eye(), thinbody_wall_dist(), Time_Avg_Vel_atCC(), GeneralAD::update(), SimpleAD::update(), EWP::update(), Fitch::update(), SurfaceLayer::update_fluxes(), ProblemBase::update_rhoqt_sources(), ProblemBase::update_rhotheta_sources(), VelocityToMomentum(), ERF::volWgtColumnSum(), ERF::volWgtSumMF(), ERF::Write2DPlotFile(), ERF::Write3DPlotFile(), Radiation::write_rrtmgp_fluxes(), ERF::WriteCheckpointFile(), and TurbulentPerturbation::zero_amp().

◆ ParallelFor() [2/2]

ParallelFor ( grown_box  ,
[=] AMREX_GPU_DEVICE(int i, int j, int k) { rainprod_arr(i, j, k)=Real(0);evapprod_arr(i, j, k)=Real(0);qlsink_arr(i, j, k)=Real(0);precr_arr(i, j, k)=Real(0);preci_arr(i, j, k)=Real(0);precs_arr(i, j, k)=Real(0);precg_arr(i, j, k)=Real(0);}   
)

◆ precg_fab()

FArrayBox precg_fab ( grown_box  ,
,
Arena_Used   
)

◆ preci_fab()

FArrayBox preci_fab ( grown_box  ,
,
Arena_Used   
)

◆ precr_fab()

FArrayBox precr_fab ( grown_box  ,
,
Arena_Used   
)

◆ precs_fab()

FArrayBox precs_fab ( grown_box  ,
,
Arena_Used   
)

◆ qicuten_fab()

FArrayBox qicuten_fab ( grown_box  ,
,
Arena_Used   
)

◆ qlsink_fab()

FArrayBox qlsink_fab ( grown_box  ,
,
Arena_Used   
)

◆ qrcuten_fab()

FArrayBox qrcuten_fab ( grown_box  ,
,
Arena_Used   
)

◆ qscuten_fab()

FArrayBox qscuten_fab ( grown_box  ,
,
Arena_Used   
)

◆ rainprod_fab()

FArrayBox rainprod_fab ( grown_box  ,
,
Arena_Used   
)

◆ set_morrison_ndcnst_c()

set_morrison_ndcnst_c ( m_ndcnst  )

Variable Documentation

◆ Arena_Used

Arena* Arena_Used = The_Arena()

◆ dummy_reflectivity

double dummy_reflectivity = Real(0)

◆ dummy_reflectivity_ptr

double* dummy_reflectivity_ptr = &dummy_reflectivity

◆ evapprod_arr

auto const& evapprod_arr = evapprod_fab.array()

Referenced by ParallelFor().

◆ flag_qndrop

bool flag_qndrop = false

◆ ihim

const int ihim = grown_box.hiVect()[0]

◆ ilom

const int ilom = grown_box.loVect()[0]

◆ jhim

const int jhim = grown_box.hiVect()[1]

◆ jlom

const int jlom = grown_box.loVect()[1]

◆ khim

const int khim = grown_box.hiVect()[2]

◆ klom

const int klom = grown_box.loVect()[2]

◆ precg_arr

auto const& precg_arr = precg_fab.array()

Referenced by ParallelFor().

◆ preci_arr

auto const& preci_arr = preci_fab.array()

Referenced by ParallelFor().

◆ precr_arr

auto const& precr_arr = precr_fab.array()

Referenced by ParallelFor().

◆ precs_arr

auto const& precs_arr = precs_fab.array()

Referenced by ParallelFor().

◆ qicuten_arr

auto const& qicuten_arr = qicuten_fab.array()

Referenced by ParallelFor().

◆ qlsink_arr

auto const& qlsink_arr = qlsink_fab.array()

Referenced by ParallelFor().

◆ qrcuten_arr

auto const& qrcuten_arr = qrcuten_fab.array()

Referenced by ParallelFor().

◆ qscuten_arr

auto const& qscuten_arr = qscuten_fab.array()

Referenced by ParallelFor().

◆ rainprod_arr

auto const& rainprod_arr = rainprod_fab.array()

Referenced by ParallelFor().