1 #ifndef ERF_SIMPLIFIED_SEB_H_
2 #define ERF_SIMPLIFIED_SEB_H_
4 #include <AMReX_GpuControl.H>
5 #include <AMReX_Math.H>
6 #include <AMReX_FArrayBox.H>
63 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
71 if (!amrex::Math::isfinite(sw_net) || !amrex::Math::isfinite(lw_net) ||
72 !amrex::Math::isfinite(hfx) || !amrex::Math::isfinite(lh) || !amrex::Math::isfinite(grdflx)) {
80 amrex::Real seb_residual = r_net - hfx - lh - grdflx;
109 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
117 if (!amrex::Math::isfinite(seb_residual) || !amrex::Math::isfinite(t_s) ||
118 !amrex::Math::isfinite(t_deep) || !amrex::Math::isfinite(c_s) || !amrex::Math::isfinite(tau)) {
123 if (c_s <= 0.0 || tau <= 0.0) {
129 amrex::Real restore_term = (2.0 *
PI / tau) * (t_s - t_deep);
163 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
171 if (!amrex::Math::isfinite(le) || !amrex::Math::isfinite(q_s) ||
172 !amrex::Math::isfinite(q_deep) || !amrex::Math::isfinite(d_s) || !amrex::Math::isfinite(tau_q)) {
177 if (d_s <= 0.0 || tau_q <= 0.0) {
186 amrex::Real restore_term = (1.0 / tau_q) * (q_s - q_deep);
constexpr amrex::Real L_v
Definition: ERF_Constants.H:51
Physical constants and tuning parameters used only by the moisture and cloud-physics code.
constexpr amrex::Real rhor
Definition: ERF_MicrophysicsConstants.H:39
constexpr amrex::Real PI
Definition: ERF_NumericalConstants.H:39
amrex::Real Real
Definition: ERF_ShocInterface.H:19
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::Real diagnose_seb_residual(amrex::Real sw_net, amrex::Real lw_net, amrex::Real hfx, amrex::Real lh, amrex::Real grdflx)
Diagnose the surface energy balance residual.
Definition: ERF_SimplifiedSEB.H:64
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::Real prognostic_dqs_dt(amrex::Real le, amrex::Real q_s, amrex::Real q_deep, amrex::Real d_s, amrex::Real tau_q)
Compute prognostic surface moisture tendency using force-restore formulation.
Definition: ERF_SimplifiedSEB.H:164
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::Real prognostic_dTs_dt(amrex::Real seb_residual, amrex::Real t_s, amrex::Real t_deep, amrex::Real c_s, amrex::Real tau)
Compute prognostic surface temperature tendency using force-restore formulation.
Definition: ERF_SimplifiedSEB.H:110