37 const DistributionMapping&
dm =
mf_cons->DistributionMap();
83 Real
eps = Real(1
e-20);
85 Box
bx =
mfi.tilebox();
139 Real
e_sat=std::pow(Real(10.0),
cff);
145 (
cff1*(Real(0.39)-Real(0.05)*std::sqrt(
vap_p))*
146 (
one-Real(0.6823)*cloud*cloud)+
184 std::exp(Real(17.502)*
TairC/(Real(240.97)+
TairC));
226 (Real(8.301e-6)-Real(4.84e-9)*
TairC)));
242 Real
ZoW=Real(0.0001);
248 Real
Ch10 =Real(0.00115);
281 if (
delW > Real(18.0)) {
283 }
else if ((Real(10.0) <
delW)
and (
delW <= Real(18.0))) {
284 charn=Real(0.011)+Real(0.125)*(Real(0.018)-Real(0.011))*(
delW-Real(10.0));
294 Real
ZoQ=std::min(Real(1.15e-4),Real(5.5e-5)/std::pow(
Rr,Real(0.6)));
329 Real
diffw=Real(2.11e-5)*std::pow(
TairK/Real(273.16),Real(1.94));
331 (Real(3.309e-3)-Real(1.44e-6)*
TairC))/
395 stflux(
i,
j,0,
Temp_comp)=(srflux*
Hscale2 +
lrflx(
i,
j,0) +
lhflx(
i,
j,0) +
shflx(
i,
j,0)) *
mskr(
i,
j,0);
constexpr amrex::Real one
constexpr amrex::Real zero
constexpr amrex::Real blk_Zabl
constexpr amrex::Real vonKar
constexpr amrex::Real rhow
constexpr amrex::Real blk_Rgas
constexpr amrex::Real blk_beta
constexpr amrex::Real emmiss
constexpr amrex::Real StefBo
constexpr amrex::Real blk_Cpa
constexpr amrex::Real blk_Cpw
mf_h setVal(geomdata.ProbHi(2))
amrex::Vector< std::unique_ptr< amrex::MultiFab > > vec_EminusP
evaporation minus precipitation [kg/m^2/s], defined at rho-points
amrex::Vector< std::unique_ptr< amrex::MultiFab > > vec_mskr
land/sea mask at cell centers (2D)
amrex::Vector< std::unique_ptr< amrex::MultiFab > > vec_rain
precipitation rate [kg/m^2/s]
amrex::Vector< std::unique_ptr< amrex::MultiFab > > vec_msku
land/sea mask at x-faces (2D)
amrex::Vector< std::unique_ptr< amrex::MultiFab > > vec_mskv
land/sea mask at y-faces (2D)
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real bulk_psiu(amrex::Real ZoL)
Evaluate stability function psi for wind speed.
static SolverChoice solverChoice
Container for algorithmic choices.
amrex::Vector< std::unique_ptr< amrex::MultiFab > > vec_cloud
cloud cover fraction [0-1], defined at rho-points
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real bulk_psit(amrex::Real ZoL)
Evaluate stability function psi for moisture and heat.
void bulk_fluxes(int lev, amrex::MultiFab *mf_cons, amrex::MultiFab *mf_uwind, amrex::MultiFab *mf_vwind, amrex::MultiFab *mf_Tair, amrex::MultiFab *mf_qair, amrex::MultiFab *mf_Pair, amrex::MultiFab *mf_srflx, amrex::MultiFab *mf_longwave_down, amrex::MultiFab *mf_evap, amrex::MultiFab *mf_sustr, amrex::MultiFab *mf_svstr, amrex::MultiFab *mf_stflux, amrex::MultiFab *mf_lrflx, amrex::MultiFab *mf_lhflx, amrex::MultiFab *mf_shflx, const int N)
Calculate bulk temperature, salinity, wind fluxes.
@ Qair
specific humidity [kg/kg]
int cons(int icomp) noexcept
@ EminusP
evaporation minus precipitation [m/s]
std::array< BulkForcingType, BulkFlux::NumTypes > bulk_flux_type