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

Go to the source code of this file.

Functions

ParmParse pp_for_pert_vels ("prob")
 
pp_for_pert_vels query ("U_0", U_0)
 
pp_for_pert_vels query ("V_0", V_0)
 
pp_for_pert_vels query ("W_0", W_0)
 
pp_for_pert_vels query ("z0", z0)
 
pp_for_pert_vels query ("zRef", zRef)
 
pp_for_pert_vels query ("uRef", uRef)
 
pp_for_pert_vels query ("prob_type", prob_type)
 
 ParallelFor (xbx, [=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { const Real *prob_lo=geomdata.ProbLo();const Real *dx=geomdata.CellSize();const Real z=prob_lo[2]+(k+myhalf) *dx[2];if(uRef !=zero) { x_vel_pert(i, j, k)=U_0+uRef *std::log((z+z0)/z0)/std::log((zRef+z0)/z0);} else { x_vel_pert(i, j, k)=U_0;} })
 
 ParallelFor (ybx, [=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { y_vel_pert(i, j, k)=V_0;})
 
 ParallelFor (zbx, [=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { z_vel_pert(i, j, k)=W_0;})
 

Variables

Real U_0 = zero
 
Real V_0 = zero
 
Real W_0 = zero
 
Real z0 = amrex::Real(0.1)
 
Real zRef = amrex::Real(80.0)
 
Real uRef = zero
 
int prob_type = -1
 

Function Documentation

◆ ParallelFor() [1/3]

ParallelFor ( xbx  ,
[=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { const Real *prob_lo=geomdata.ProbLo();const Real *dx=geomdata.CellSize();const Real z=prob_lo[2]+(k+myhalf) *dx[2];if(uRef !=zero) { x_vel_pert(i, j, k)=U_0+uRef *std::log((z+z0)/z0)/std::log((zRef+z0)/z0);} else { x_vel_pert(i, j, k)=U_0;} }   
)

◆ ParallelFor() [2/3]

ParallelFor ( ybx  ,
[=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { y_vel_pert(i, j, k)=V_0;}   
)

◆ ParallelFor() [3/3]

ParallelFor ( zbx  ,
[=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { z_vel_pert(i, j, k)=W_0;}   
)

◆ pp_for_pert_vels()

ParmParse pp_for_pert_vels ( "prob"  )

◆ query() [1/7]

pp_for_pert_vels query ( "prob_type"  ,
prob_type   
)

◆ query() [2/7]

pp_for_pert_vels query ( "U_0"  ,
U_0   
)

◆ query() [3/7]

pp_for_pert_vels query ( "uRef"  ,
uRef   
)

◆ query() [4/7]

pp_for_pert_vels query ( "V_0"  ,
V_0   
)

◆ query() [5/7]

pp_for_pert_vels query ( "W_0"  ,
W_0   
)

◆ query() [6/7]

pp_for_pert_vels query ( "z0"  ,
z0   
)

◆ query() [7/7]

pp_for_pert_vels query ( "zRef"  ,
zRef   
)

Variable Documentation

◆ prob_type

int prob_type = -1

◆ U_0

Real U_0 = zero

Referenced by ParallelFor().

◆ uRef

Real uRef = zero

Referenced by ParallelFor().

◆ V_0

Real V_0 = zero

Referenced by ParallelFor().

◆ W_0

Real W_0 = zero

Referenced by ParallelFor().

◆ z0

Real z0 = amrex::Real(0.1)

Referenced by erf_surface_moisture::aerodynamic_resistance(), ib_stability::capped_psi(), Charnock_roughness(), COARE3_roughness(), compute_if_most_target_vel(), Compute_roughness(), IBFaceSet::compute_sensible(), ComputeDiffusivityYSU(), ComputeDiffusivityYSUNew(), Donelan_roughness(), near_surface_diagnostics::fill(), WindFarm::fill_SMark_multifab(), ImmersedForcingBuildings_Scalar(), ImmersedForcingBuildings_Xmom(), ImmersedForcingBuildings_Ymom(), ImmersedForcingBuildings_Zmom(), ImmersedForcingTerrain_Scalar(), ImmersedForcingTerrain_Xmom(), ImmersedForcingTerrain_Ymom(), ERF::InitData_post(), interpolate_column_metgrid_linear(), adiabatic_mod_charnock::iterate_flux(), adiabatic_charnock::iterate_flux(), adiabatic_donelan::iterate_flux(), adiabatic_wave_coupled::iterate_flux(), surface_flux_charnock::iterate_flux(), surface_flux_mod_charnock::iterate_flux(), surface_flux_donelan::iterate_flux(), surface_temp_charnock::iterate_flux(), surface_temp_mod_charnock::iterate_flux(), surface_temp_donelan::iterate_flux(), surface_flux_wave_coupled::iterate_flux(), surface_temp_wave_coupled::iterate_flux(), surface_temp::iterate_flux(), surface_temp_eb::iterate_flux(), Mod_Charnock_roughness(), ParallelFor(), ib_stability::psi_cap(), ib_stability::psi_m_for_ustar(), quad_interp_1d(), ibseb::ray_blocked(), ibseb::ray_hit(), SurfaceLayer::set_default_roughness(), erf_surface_moisture::surface_layer_aerodynamic_resistance(), thinbody_wall_dist(), erf_cloud_chamber::wall_roughness_geometry_error(), and WaveCoupled_roughness().

◆ zRef

Real zRef = amrex::Real(80.0)

Referenced by ParallelFor().