27 #ifndef ERF_SAT_METHOD_H_
28 #define ERF_SAT_METHOD_H_
50 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
67 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
90 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
102 es = std::min(es,
p);
113 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
125 es = std::min(es,
p);
135 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
158 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
181 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
213 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
228 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
242 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
256 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
282 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
292 auto f = f1 + f2 + f3 + f4 + f5;
301 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
306 return amrex::Real(575.185606e10)*exp(-(term1 + term2 + term3));
322 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
constexpr amrex::Real tboil
Definition: ERF_Constants.H:132
constexpr amrex::Real epsilo
Definition: ERF_Constants.H:134
constexpr amrex::Real tmelt
Definition: ERF_Constants.H:130
constexpr amrex::Real ttrice
Definition: ERF_Constants.H:133
constexpr amrex::Real omeps
Definition: ERF_Constants.H:135
constexpr amrex::Real h2otrip
Definition: ERF_Constants.H:131
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int idx(int i, int j, int k, int nx, int ny)
Definition: ERF_InitForEnsemble.cpp:365
amrex::Real Real
Definition: ERF_ShocInterface.H:19
Methods for estimating the saturation vapor pressure of water.
Definition: ERF_SatMethods.H:40
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE void wv_sat_qsat_trans(const amrex::Real &t, const amrex::Real &p, amrex::Real &es, amrex::Real &qs, const int idx=1)
Calculate transition SVP and saturation specific humidity.
Definition: ERF_SatMethods.H:114
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real Bolton_svp_water(const amrex::Real &t)
Bolton (1980) saturation vapor pressure over water.
Definition: ERF_SatMethods.H:323
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real OldGoffGratch_svp_ice(const amrex::Real &t)
Old CAM implementation of Goff & Gratch (1946) SVP over ice.
Definition: ERF_SatMethods.H:302
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real wv_sat_svp_water(const amrex::Real &t, const int idx=1)
Dispatcher for saturation vapor pressure over water.
Definition: ERF_SatMethods.H:136
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real wv_sat_svp_to_qsat(const amrex::Real &es, const amrex::Real &p)
Get saturation specific humidity given pressure and SVP.
Definition: ERF_SatMethods.H:51
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real GoffGratch_svp_water(const amrex::Real &t)
Goff & Gratch (1946) saturation vapor pressure over water.
Definition: ERF_SatMethods.H:214
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE void wv_sat_qsat_water(const amrex::Real &t, const amrex::Real &p, amrex::Real &es, amrex::Real &qs, const int idx=1)
Calculate SVP over water and saturation specific humidity.
Definition: ERF_SatMethods.H:68
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE void wv_sat_qsat_ice(const amrex::Real &t, const amrex::Real &p, amrex::Real &es, amrex::Real &qs, const int idx=1)
Calculate SVP over ice and saturation specific humidity.
Definition: ERF_SatMethods.H:91
Type
Definition: ERF_SatMethods.H:333
@ MurphyKoop
Definition: ERF_SatMethods.H:337
@ Invalid
Definition: ERF_SatMethods.H:334
@ Bolton
Definition: ERF_SatMethods.H:338
@ GoffGratch
Definition: ERF_SatMethods.H:336
@ OldGoffGratch
Definition: ERF_SatMethods.H:335
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real OldGoffGratch_svp_water(const amrex::Real &t)
Old CAM implementation of Goff & Gratch (1946) SVP over water.
Definition: ERF_SatMethods.H:283
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real MurphyKoop_svp_ice(const amrex::Real &t)
Murphy & Koop (2005) saturation vapor pressure over ice.
Definition: ERF_SatMethods.H:257
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real GoffGratch_svp_ice(const amrex::Real &t)
Goff & Gratch (1946) saturation vapor pressure over ice.
Definition: ERF_SatMethods.H:229
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real MurphyKoop_svp_water(const amrex::Real &t)
Murphy & Koop (2005) saturation vapor pressure over water.
Definition: ERF_SatMethods.H:243
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real wv_sat_svp_trans(const amrex::Real &t, const int idx=1)
Calculate transition saturation vapor pressure.
Definition: ERF_SatMethods.H:182
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE amrex::Real wv_sat_svp_ice(const amrex::Real &t, const int idx=1)
Dispatcher for saturation vapor pressure over ice.
Definition: ERF_SatMethods.H:159
@ qs
Definition: ERF_WDM6.H:29
@ t
Definition: ERF_WSM6.H:183
@ p
Definition: ERF_WSM6.H:191
real(c_double), parameter c2
Definition: ERF_module_model_constants.F90:35
real(c_double), private c1
Definition: ERF_module_mp_morr_two_moment.F90:212