CCPP SciDoc v7.0.0  v7.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches
Radiation Clouds Module

This module computes cloud related quantities for radiation computations.Knowledge of cloud properties and their vertical structure is important for meteorological studies due to their impact on both the Earth's radiation budget and adiabatic heating within the atmosphere. Cloud properties in the US National Oceanic and Atmospheric Administration National Centers for Environmental Prediction Global Forecast System (GFS) include (i) cloud liquid/ice water path; (ii) the fraction of clouds; (iii) effective radius of water/ice droplet: More...

Modules

module  module_radiation_clouds
 This module computes cloud related quantities for radiation computations.
 

Functions/Subroutines

subroutine, public module_radiation_clouds::cld_init (si, nlay, imp_physics, me, con_g, con_rd, errflg, errmsg)
 This subroutine is an initialization program for cloud-radiation calculations and sets up boundary layer cloud top.
 
subroutine, public module_radiation_clouds::radiation_clouds_prop (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, ccnd, ncndl, cnvw, cnvc, tracer1, xlat, xlon, slmsk, dz, delp, ix, lm, nlay, nlp1, deltaq, sup, dcorr_con, me, icloud, kdt, ntrac, ntcw, ntiw, ntrw, ntsw, ntgl, ntclamt, imp_physics, imp_physics_nssl, imp_physics_fer_hires, imp_physics_gfdl, imp_physics_thompson, imp_physics_wsm6, imp_physics_zhao_carr, imp_physics_zhao_carr_pdf, imp_physics_mg, iovr, iovr_rand, iovr_maxrand, iovr_max, iovr_dcorr, iovr_exp, iovr_exprand, idcor, idcor_con, idcor_hogan, idcor_oreopoulos, lcrick, lcnorm, imfdeepcnv, imfdeepcnv_gf, imfdeepcnv_c3, do_mynnedmf, lgfdlmprad, xr_cnvcld, uni_cld, lmfshal, lmfdeep2, cldcov, clouds1, effrl, effri, effrr, effrs, effr_in, effrl_inout, effri_inout, effrs_inout, lwp_ex, iwp_ex, lwp_fc, iwp_fc, dzlay, latdeg, julian, yearlen, gridkm, top_at_1, si, con_ttp, con_pi, con_g, con_rd, con_thgni, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow, clds, mtop, mbot, de_lgth, alpha)
 Subroutine radiation_clouds_prop computes cloud related quantities for different cloud microphysics schemes.
 
subroutine, public module_radiation_clouds::progcld_zhao_carr (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, clw, xlat, xlon, slmsk, dz, delp, ix, nlay, nlp1, uni_cld, lmfshal, lmfdeep2, cldcov, effrl, effri, effrr, effrs, effr_in, dzlay, cldtot, cldcnv, lcrick, lcnorm, con_ttp, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine computes cloud related quantities using zhao/moorthi's prognostic cloud microphysics scheme.
 
subroutine, public module_radiation_clouds::progcld_zhao_carr_pdf (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, clw, cnvw, cnvc, xlat, xlon, slmsk, dz, delp, ix, nlay, nlp1, deltaq, sup, kdt, me, dzlay, cldtot, cldcnv, lcrick, lcnorm, con_thgni, con_ttp, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine computes cloud related quantities using zhao/moorthi's prognostic cloud microphysics scheme + pdfcld.
 
subroutine, public module_radiation_clouds::progcld_gfdl_lin (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, clw, cnvw, cnvc, xlat, xlon, slmsk, cldtot, dz, delp, ix, nlay, nlp1, dzlay, cldtot1, cldcnv, lcrick, lcnorm, con_ttp, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine computes cloud related quantities using GFDL Lin MP prognostic cloud microphysics scheme.
 
subroutine, public module_radiation_clouds::progcld_fer_hires (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, clw, xlat, xlon, slmsk, dz, delp, ntrac, ntcw, ntiw, ntrw, ix, nlay, nlp1, icloud, uni_cld, lmfshal, lmfdeep2, cldcov, re_cloud, re_ice, re_snow, dzlay, cldtot, cldcnv, lcnorm, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine computes cloud related quantities using Ferrier-Aligo cloud microphysics scheme.
 
subroutine, public module_radiation_clouds::progcld_thompson_wsm6 (plyr, plvl, tlyr, qlyr, qstl, rhly, clw, xlat, xlon, slmsk, dz, delp, ntrac, ntcw, ntiw, ntrw, ntsw, ntgl, con_ttp, xr_cnvcld, ix, nlay, nlp1, uni_cld, lmfshal, lmfdeep2, cldcov, cnvw, re_cloud, re_ice, re_snow, lwp_ex, iwp_ex, lwp_fc, iwp_fc, dzlay, cldtot, cldcnv, lcnorm, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine is used by Thompson/WSM6/NSSL cloud microphysics (EMC)
 
subroutine, public module_radiation_clouds::progcld_thompson (plyr, plvl, tlyr, qlyr, qstl, rhly, clw, xlat, xlon, slmsk, dz, delp, ntrac, ntcw, ntiw, ntrw, ntsw, ntgl, ix, nlay, nlp1, uni_cld, lmfshal, lmfdeep2, cldcov, re_cloud, re_ice, re_snow, lwp_ex, iwp_ex, lwp_fc, iwp_fc, dzlay, gridkm, top_at_1, cldtot, cldcnv, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine added by G. Thompson specifically to account for explicit (microphysics-produced) cloud liquid water, cloud ice, and snow with 100% cloud fraction. Also, a parameterization for cloud fraction less than 1.0 but greater than 0.0 follows Mocko and Cotton (1996) from Sundqvist et al. (1989) with cloud fraction increasing as RH increases above a critical value. In locations with non-zero (but less than 1.0) cloud fraction, there MUST be a value assigned to cloud liquid water and ice or else there is zero impact in the RRTMG radiation scheme.
 
subroutine, public module_radiation_clouds::progclduni (plyr, plvl, tlyr, tvly, ccnd, ncnd, xlat, xlon, slmsk, dz, delp, ix, nlay, nlp1, cldtot, effrl, effri, effrr, effrs, effr_in, dzlay, cldtot1, cldcnv, lcrick, lcnorm, con_ttp, cld_frac, cld_lwp, cld_reliq, cld_iwp, cld_reice, cld_rwp, cld_rerain, cld_swp, cld_resnow)
 This subroutine computes cloud related quantities using for unified cloud microphysics scheme.
 
subroutine, public module_radiation_clouds::gethml (plyr, ptop1, cldtot, cldcnv, dz, de_lgth, alpha, ix, nlay, iovr, iovr_rand, iovr_maxrand, iovr_max, iovr_dcorr, iovr_exp, iovr_exprand, top_at_1, si, clds, mtop, mbot)
 This subroutine computes high, mid, low, total, and boundary cloud fractions and cloud top/bottom layer indices for model diagnostic output. The three cloud domain boundaries are defined by ptopc. The cloud overlapping method is defined by control flag 'iovr', which is also used by LW and SW radiation programs.
 
subroutine, public module_radiation_clouds::cal_cldfra3 (cldfra, qv, qc, qi, qs, dz, p, t, xland, gridkm, modify_qvapor, max_relh, kts, kte, debug_flag)
 Cloud fraction scheme by G. Thompson (NCAR-RAL), not intended for combining with any cumulus or shallow cumulus parameterization scheme cloud fractions. This is intended as a stand-alone for cloud fraction and is relatively good at getting widespread stratus and stratoCu without caring whether any deep/shallow Cu param schemes is making sub-grid-spacing clouds/precip. Under the hood, this scheme follows Mocko and Cotton (1995) in application of the Sundqvist et al (1989) scheme but using a grid-scale dependent RH threshold, one each for land v. ocean points based on experiences with HWRF testing.
 
subroutine, public module_radiation_clouds::find_cloudlayers (qvs1d, cfr1d, t1d, p1d, dz1d, entrmnt, debugfl, qc1d, qi1d, qs1d, kts, kte)
 From cloud fraction array, find clouds of multi-level depth and compute a reasonable value of LWP or IWP that might be contained in that depth, unless existing LWC/IWC is already there.
 
subroutine, public module_radiation_clouds::adjust_cloudice (cfr, qi, qs, qvs, t, dz, entr, k1, k2, kts, kte)
 
subroutine, public module_radiation_clouds::adjust_cloudh2o (cfr, qc, qvs, t, dz, entr, k1, k2, kts, kte)
 
subroutine, public module_radiation_clouds::adjust_cloudfinal (cfr, qc, qi, rho, dz, kts, kte)
 Do not alter any grid-explicitly resolved hydrometeors, rather only the supposed amounts due to the cloud fraction scheme.
 
subroutine module_radiation_clouds::cloud_fraction_xurandall (ix, nlay, plyr, clwf, rhly, qstl, cldtot)
 This subroutine computes the Xu-Randall cloud fraction scheme.
 
subroutine module_radiation_clouds::cloud_fraction_mass_flx_1 (ix, nlay, lmfdeep2, xrc3, plyr, clwf, rhly, qstl, cldtot)
 
subroutine module_radiation_clouds::cloud_fraction_mass_flx_2 (ix, nlay, lmfdeep2, xrc3, plyr, clwf, rhly, qstl, cldtot)
 
subroutine module_microphysics::rsipath2 (plyr, plvl, tlyr, qlyr, qcwat, qcice, qrain, rrime, im, levs, iflip, flgmin, cwatp, cicep, rainp, snowp, recwat, rerain, resnow, snden)
 This program is a modified version of Ferrier's original "rshipath" subprogram. It computes layer's cloud liquid, ice, rain, and snow water condensate path and the partical effective radius for liquid droplet, rain drop, and snow flake.
 

Variables

real(kind=kind_phys) module_radiation_clouds::gfac
 
real(kind=kind_phys) module_radiation_clouds::gord
 
integer, parameter, public module_radiation_clouds::nf_clds = 9
 number of fields in cloud array
 
integer, parameter, public module_radiation_clouds::nk_clds = 3
 number of cloud vertical domains
 
real(kind=kind_phys), dimension(nk_clds+1, 2), save module_radiation_clouds::ptopc
 pressure limits of cloud domain interfaces (low, mid, high) in mb (0.1kPa)
 
real(kind=kind_phys), parameter module_radiation_clouds::climit = 0.001
 
real(kind=kind_phys), parameter module_radiation_clouds::climit2 =0.05
 
real(kind=kind_phys), parameter module_radiation_clouds::ovcst = 1.0 - 1.0e-8
 
real(kind=kind_phys), parameter module_radiation_clouds::reliq_def = 10.0
 default liq radius to 10 micron
 
real(kind=kind_phys), parameter module_radiation_clouds::reice_def = 50.0
 default ice radius to 50 micron
 
real(kind=kind_phys), parameter module_radiation_clouds::rrain_def = 1000.0
 default rain radius to 1000 micron
 
real(kind=kind_phys), parameter module_radiation_clouds::rsnow_def = 250.0
 default snow radius to 250 micron
 
real(kind=kind_phys), parameter module_radiation_clouds::cldssa_def = 0.99
 default cld single scat albedo
 
real(kind=kind_phys), parameter module_radiation_clouds::cldasy_def = 0.84
 default cld asymmetry factor
 
integer module_radiation_clouds::llyr = 2
 upper limit of boundary layer clouds
 
real(kind=kind_phys), dimension(95), parameter module_radiation_clouds::retab =(/ 5.92779, 6.26422, 6.61973, 6.99539, 7.39234, 7.81177, 8.25496, 8.72323, 9.21800, 9.74075, 10.2930, 10.8765, 11.4929, 12.1440, 12.8317, 13.5581, 14.2319, 15.0351, 15.8799, 16.7674, 17.6986, 18.6744, 19.6955, 20.7623, 21.8757, 23.0364, 24.2452, 25.5034, 26.8125, 27.7895, 28.6450, 29.4167, 30.1088, 30.7306, 31.2943, 31.8151, 32.3077, 32.7870, 33.2657, 33.7540, 34.2601, 34.7892, 35.3442, 35.9255, 36.5316, 37.1602, 37.8078, 38.4720, 39.1508, 39.8442, 40.5552, 41.2912, 42.0635, 42.8876, 43.7863, 44.7853, 45.9170, 47.2165, 48.7221, 50.4710, 52.4980, 54.8315, 57.4898, 60.4785, 63.7898, 65.5604, 71.2885, 75.4113, 79.7368, 84.2351, 88.8833, 93.6658, 98.5739, 103.603, 108.752, 114.025, 119.424, 124.954, 130.630, 136.457, 142.446, 148.608, 154.956, 161.503, 168.262, 175.248, 182.473, 189.952, 197.699, 205.728, 214.055, 222.694, 231.661, 240.971, 250.639/)
 

Detailed Description

Cloud overlapping method (namelist control parameter - IOVR)
IOVR=0: randomly overlapping vertical cloud layers
IOVR=1: maximum-random overlapping vertical cloud layers
IOVR=2: maximum overlapping vertical cloud layers
IOVR=3: decorrelation length overlapping vertical cloud layers
IOVR=4: exponential overlapping vertical cloud layers
IOVR=5: exponential-random overlapping vertical cloud layers

Sub-grid cloud approximation (namelist control parameter - ISUBC_LW=2, ISUBC_SW=2)
ISUBC=0: grid averaged quantities, without sub-grid cloud approximation
ISUBC=1: with McICA sub-grid approximation (use prescribed permutation seeds)
ISUBC=2: with McICA sub-grid approximation (use random permutation seeds)