The MYNN-EDMF scheme (Olson et al. 2019 [137]) represents the local mixing using an eddy-diffusivity approach tied to turbulent kinetic energy (TKE). The nonlocal mixing, important for convective boundary layers, is represented using a mass-flux approach. The scheme can be run with either a 2.5 or 3.0 closure and includes a partial-condensation scheme, commonly referred to as a cloud PDF or statistical-cloud scheme, to represent the effects of subgrid-scale (SGS) clouds on buoyancy. This module was originally translated from Nakanishi and Niino (2009) [132] and put into the WRF model by Mariusz Pagowski NOAA/GSD and CIRA/CSU in 2008. It was extensively modified by Joseph Olson and Jaymes Kenyon of NOAA/GSD and CU/CIRES. More...
Changes to original code introduced by M. Pagowski in 2008:
Further modifications implemented by J. Olson and J. Kenyon:
Departures from original MYNN (Nakanish and Niino (2009) [132])
Changes made in various versions of the WRF model:
Many of these changes are now documented in Olson et al. (2019, NOAA Technical Memorandum)
Modules | |
GSD mynnrad_pre_run Module | |
This interstitial code adds the subgrid clouds to the resolved-scale clouds if there is no resolved-scale clouds in that particular grid box. | |
GSD mynnrad_post_run Module | |
This interstitial code restores the original resolved-scale clouds (qc and qi). | |
Modules | |
module | mynnedmf_wrapper |
The following references best describe the code within Olson et al. (2018, NOAA Technical Memorandum) Nakanishi and Niino (2009 ) [132]. | |
Functions/Subroutines | |
subroutine | module_bl_mynn::mym_level2 (kts, kte, dz, u, v, thl, qw, ql, vt, vq, dtl, dqw, dtv, gm, gh, sm, sh) |
This subroutine calculates the level 2, non-dimensional wind shear \(G_M\) and vertical temperature gradient \(G_H\) as well as the level 2 stability funcitons \(S_h\) and \(S_m\). More... | |
subroutine | module_bl_mynn::mym_length ( kts, kte, dz, zw, rmo, flt, flq, vt, vq, qke, dtv, el, zi, theta, qkw, Psig_bl, cldfra_bl1D, bl_mynn_mixlength, edmf_w1, edmf_a1, edmf_qc1, bl_mynn_edmf) |
This subroutine calculates the mixing lengths. More... | |
subroutine | module_bl_mynn::boulac_length0 (k, kts, kte, zw, dz, qtke, theta, lb1, lb2) |
This subroutine was taken from the BouLac scheme in WRF-ARW and modified for integration into the MYNN PBL scheme. WHILE loops were added to reduce the computational expense. This subroutine computes the length scales up and down and then computes the min, average of the up/down length scales, and also considers the distance to the surface. More... | |
subroutine | module_bl_mynn::boulac_length (kts, kte, zw, dz, qtke, theta, lb1, lb2) |
This subroutine was taken from the BouLac scheme in WRF-ARW and modified for integration into the MYNN PBL scheme. WHILE loops were added to reduce the computational expense. This subroutine computes the length scales up and down and then computes the min, average of the up/down length scales, and also considers the distance to the surface. More... | |
subroutine | module_bl_mynn::mym_turbulence ( kts, kte, levflag, dz, zw, u, v, thl, ql, qw, qke, tsq, qsq, cov, vt, vq, rmo, flt, flq, zi, theta, sh, El, Dfm, Dfh, Dfq, Tcd, Qcd, Pdk, Pdt, Pdq, Pdc, qWT1D, qSHEAR1D, qBUOY1D, qDISS1D, bl_mynn_tkebudget, Psig_bl, Psig_shcu, cldfra_bl1D, bl_mynn_mixlength, edmf_w1, edmf_a1, edmf_qc1, bl_mynn_edmf, TKEprodTD, spp_pbl, rstoch_col) |
This subroutine calculates the vertical diffusivity coefficients and the production terms for the turbulent quantities. More... | |
subroutine | module_bl_mynn::mym_predict (kts, kte, levflag, delt, dz, ust, flt, flq, pmz, phh, el, dfq, pdk, pdt, pdq, pdc, qke, tsq, qsq, cov, s_aw, s_awqke, bl_mynn_edmf_tke ) |
This subroutine predicts the turbulent quantities at the next step. More... | |
subroutine | module_bl_mynn::mym_condensation (kts, kte, dx, dz, zw, thl, qw, p, exner, tsq, qsq, cov, Sh, el, bl_mynn_cloudpdf, qc_bl1D, cldfra_bl1D, PBLH1, HFX1, Vt, Vq, th, sgm, rmo, spp_pbl, rstoch_col ) |
This subroutine calculates the nonconvective component of the subgrid cloud fraction and mixing ratio as well as the functions used to calculate the buoyancy flux. Different cloud PDFs can be selected by use of the namelist parameter bl_mynn_cloudpdf . More... | |
subroutine | module_bl_mynn::mynn_tendencies (kts, kte, levflag, grav_settling, delt, dz, rho, u, v, th, tk, qv, qc, qi, qnc, qni, p, exner, thl, sqv, sqc, sqi, sqw, qnwfa, qnifa, ust, flt, flq, flqv, flqc, wspd, qcg, uoce, voce, tsq, qsq, cov, tcd, qcd, dfm, dfh, dfq, Du, Dv, Dth, Dqv, Dqc, Dqi, Dqnc, Dqni, Dqnwfa, Dqnifa, vdfg1, diss_heat, s_aw, s_awthl, s_awqt, s_awqv, s_awqc, s_awu, s_awv, s_awqnc, s_awqni, s_awqnwfa, s_awqnifa, FLAG_QC, FLAG_QI, FLAG_QNC, FLAG_QNI, FLAG_QNWFA, FLAG_QNIFA, cldfra_bl1d, ztop_shallow, ktop_shallow, bl_mynn_cloudmix, bl_mynn_mixqt, bl_mynn_edmf, bl_mynn_edmf_mom, bl_mynn_mixscalars ) |
This subroutine solves for tendencies of U, V, \(\theta\), qv, qc, and qi. More... | |
subroutine | module_bl_mynn::mynn_mix_chem (kts, kte, levflag, grav_settling, delt, dz, nchem, kdvel, ndvel, num_vert_mix, chem1, vd1, qnc, qni, p, exner, thl, sqv, sqc, sqi, sqw, ust, flt, flq, flqv, flqc, wspd, qcg, uoce, voce, tsq, qsq, cov, tcd, qcd, dfm, dfh, dfq, s_aw, s_awchem, bl_mynn_cloudmix) |
subroutine | module_bl_mynn::retrieve_exchange_coeffs (kts, kte, dfm, dfh, dz, K_m, K_h) |
subroutine | module_bl_mynn::tridiag (n, a, b, c, d) |
subroutine | module_bl_mynn::tridiag2 (n, a, b, c, d, x) |
subroutine | module_bl_mynn::tridiag3 (kte, a, b, c, d, x) |
subroutine | module_bl_mynn::mynn_bl_init_driver ( RUBLTEN, RVBLTEN, RTHBLTEN, RQVBLTEN, RQCBLTEN, RQIBLTEN,QKE, TKE_PBL, EXCH_H |
subroutine | module_bl_mynn::dmp_mf ( kts, kte, dt, zw, dz, p, momentum_opt, tke_opt, scalar_opt, u, v, w, th, thl, thv, tk, qt, qv, qc, qke, qnc, qni, qnwfa, qnifa, exner, vt, vq, sgm, ust, flt, flq, flqv, flqc, pblh, kpbl, DX, landsea, ts, |
This subroutine is the Dynamic Multi-Plume (DMP) Mass-Flux Scheme. More... | |
subroutine | module_bl_mynn::condensation_edmf (QT, THL, P, zagl, THV, QC) |
This subroutine. More... | |
subroutine | module_bl_mynn::scale_aware (dx, PBL1, Psig_bl, Psig_shcu) |
This subroutine calculates the similarity functions, \(P_{\sigma-PBL}\) and \(P_{\sigma-shcu}\), to control the scale-adaptive behavior for the local and nonlocal components, respectively. More... | |
real function | module_bl_mynn::esat_blend (t) |
real function | module_bl_mynn::qsat_blend (t, P, waterice) |
This function extends function "esat" and returns a "blended" saturation mixing ratio. More... | |
real function | module_bl_mynn::xl_blend (t) |
This function interpolates the latent heats of vaporization and sublimation into a single, temperature-dependent, "blended" value, following Chaboureau and Bechtold (2002) [29], Appendix. More... | |
subroutine | module_bl_mynn::mym_initialize ( kts, kte, dz, zw, u, v, thl, qw, |
This subroutine initializes the mixing length, TKE, \(\theta^{'2}\), \(q^{'2}\), and \(\theta^{'}q^{'}\). More... | |
subroutine | module_bl_mynn::mynn_bl_driver (WRF_CHEM) |
This subroutine is the GSD MYNN-EDNF PBL driver routine,which encompassed the majority of the subroutines that comprise the procedures that ultimately solve for tendencies of \(U, V, \theta, q_v, q_c, and q_i\). More... | |
subroutine | module_bl_mynn::get_pblh (KTS, KTE, zi, thetav1D, qke1D, zw1D, dz1D, landsea, kzi) |
This subroutine calculates hybrid diagnotic boundary-layer height (PBLH). More... | |