CAM
micro_mg1_5.F90 File Reference

Modules

module  micro_mg1_5
 

Functions/Subroutines

subroutine, public micro_mg1_5::micro_mg_init (kind, gravit, rair, rh2o, cpair, tmelt_in, latvap, latice, rhmini_in, micro_mg_dcs, micro_mg_dcs_tdep, microp_uniform_in, do_cldice_in, use_hetfrz_classnuc_in, micro_mg_precip_frac_method_in, micro_mg_berg_eff_factor_in, errstring)
 
subroutine, public micro_mg1_5::micro_mg_tend (mgncol, nlev, deltatin, t, q, qcn, qin, ncn, nin, relvar, accre_enhan, p, pdel, pint, cldn, liqcldf, icecldf, qcsinksum_rate1ord, naai, npccn, rndst, nacon, tlat, qvlat, qctend, qitend, nctend, nitend, effc, effc_fn, effi, prect, preci, nevapr, evapsnow, prain, prodsnow, cmeout, deffi, pgamrad, lamcrad, qsout, dsout, rflx, sflx, qrout, reff_rain, reff_snow, qcsevap, qisevap, qvres, cmeitot, vtrmc, vtrmi, qcsedten, qisedten, pratot, prctot, mnuccctot, mnuccttot, msacwitot, psacwstot, bergstot, bergtot, melttot, homotot, qcrestot, prcitot, praitot, qirestot, mnuccrtot, pracstot, meltsdttot, frzrdttot, mnuccdtot, nrout, nsout, refl, arefl, areflz, frefl, csrfl, acsrfl, fcsrfl, rercld, ncai, ncal, qrout2, qsout2, nrout2, nsout2, drout2, dsout2, freqs, freqr, nfice, qcrat, errstring, tnd_qsnow, tnd_nsnow, re_ice, prer_evap, frzimm, frzcnt, frzdep)
 
elemental real(r8) function micro_mg1_5::calc_ab (t, qv, xxl)
 
elemental subroutine micro_mg1_5::size_dist_param_liq (qcic, ncic, cdnl, rho, nadjflag, pgam, lamc)
 
elemental subroutine micro_mg1_5::size_dist_param_ice (qiic, dcst, niic, lami, n0i)
 
elemental subroutine micro_mg1_5::size_dist_param_rain (qric, nric, lamr, n0r)
 
elemental subroutine micro_mg1_5::size_dist_param_snow (qsic, nsic, lams, n0s)
 
real(r8) elemental function micro_mg1_5::avg_diameter (q, n, rho_air, rho_sub)
 
real(r8) elemental function micro_mg1_5::var_coef (relvar, a)
 
elemental subroutine micro_mg1_5::ice_deposition_sublimation (deltat, t, qv, qc, qi, ni, lcldm, icldm, naai, rho, dv, qvl, qvi, dcst, berg, vap_dep, ice_sublim)
 
elemental subroutine micro_mg1_5::kk2000_liq_autoconversion (qcic, ncic, rho, relvar, prc, nprc, nprc1)
 
elemental subroutine micro_mg1_5::ice_autoconversion (t, qiic, lami, n0i, dcst, prci, nprci)
 
elemental subroutine micro_mg1_5::immersion_freezing (t, pgam, lamc, cdist1, qcic, relvar, mnuccc, nnuccc)
 
pure subroutine micro_mg1_5::contact_freezing (t, p, rndst, nacon, pgam, lamc, cdist1, qcic, relvar, mnucct, nnucct)
 
elemental subroutine micro_mg1_5::snow_self_aggregation (t, rho, asn, qsic, nsic, nsagg)
 
elemental subroutine micro_mg1_5::accrete_cloud_water_snow (t, rho, asn, uns, mu, qcic, ncic, qsic, pgam, lamc, lams, n0s, psacws, npsacws)
 
elemental subroutine micro_mg1_5::secondary_ice_production (t, psacws, msacwi, nsacwi)
 
elemental subroutine micro_mg1_5::accrete_rain_snow (t, rho, umr, ums, unr, uns, qric, qsic, lamr, n0r, lams, n0s, pracs, npracs)
 
elemental subroutine micro_mg1_5::heterogeneous_rain_freezing (t, qric, nric, lamr, mnuccr, nnuccr)
 
elemental subroutine micro_mg1_5::accrete_cloud_water_rain (qric, qcic, ncic, relvar, accre_enhan, pra, npra)
 
elemental subroutine micro_mg1_5::self_collection_rain (rho, qric, nric, nragg)
 
elemental subroutine micro_mg1_5::accrete_cloud_ice_snow (t, rho, asn, qiic, niic, qsic, lams, n0s, prai, nprai)
 
elemental subroutine micro_mg1_5::evaporate_sublimate_precip (deltat, t, p, rho, dv, mu, sc, q, qvl, qvi, lcldm, cldmax, arn, asn, qcic, qiic, qric, qsic, lamr, n0r, lams, n0s, pre, prds)
 
elemental subroutine micro_mg1_5::bergeron_process_snow (t, rho, dv, mu, sc, qvl, qvi, asn, qcic, qsic, lams, n0s, bergs)
 
elemental subroutine micro_mg1_5::calc_rercld (lamr, n0r, lamc, cdist1, pgam, dumr, qcic, rercld)
 
pure subroutine, public micro_mg1_5::micro_mg_get_cols (ncol, nlev, top_lev, qcn, qin, mgncol, mgcols)
 
subroutine micro_mg1_5::get_dcst (ncol, pver, temp, dcst)
 
pure real(r8) function, dimension(size(orig_val, 1), size(orig_val, 2) -1) micro_mg1_5::interp_to_mid (orig_val, weights)
 

Variables

logical, parameter, public micro_mg1_5::nccons = .false.
 
logical, parameter, public micro_mg1_5::nicons = .false.
 
integer, parameter micro_mg1_5::r8 = selected_real_kind(12)
 
real(r8), parameter micro_mg1_5::pi = 3.14159265358979323846_r8
 
real(r8), parameter micro_mg1_5::omsm = 0.99999_r8
 
real(r8), parameter micro_mg1_5::ncnst = 100.e6_r8
 
real(r8), parameter micro_mg1_5::ninst = 0.1e6_r8
 
real(r8), parameter micro_mg1_5::rhosn = 250._r8
 
real(r8), parameter micro_mg1_5::rhoi = 500._r8
 
real(r8), parameter micro_mg1_5::rhow = 1000._r8
 
real(r8), parameter micro_mg1_5::ac = 3.e7_r8
 
real(r8), parameter micro_mg1_5::bc = 2._r8
 
real(r8), parameter micro_mg1_5::as = 11.72_r8
 
real(r8), parameter micro_mg1_5::bs = 0.41_r8
 
real(r8), parameter micro_mg1_5::ai = 700._r8
 
real(r8), parameter micro_mg1_5::bi = 1._r8
 
real(r8), parameter micro_mg1_5::ar = 841.99667_r8
 
real(r8), parameter micro_mg1_5::br = 0.8_r8
 
real(r8), parameter micro_mg1_5::dsph = 3._r8
 
real(r8), parameter micro_mg1_5::f1s = 0.86_r8
 
real(r8), parameter micro_mg1_5::f2s = 0.28_r8
 
real(r8), parameter micro_mg1_5::f1r = 0.78_r8
 
real(r8), parameter micro_mg1_5::f2r = 0.308_r8
 
real(r8), parameter micro_mg1_5::eii = 0.1_r8
 
real(r8) micro_mg1_5::dcs
 
logical micro_mg1_5::dcs_tdep
 
real(r8), parameter micro_mg1_5::qsmall = 1.e-18_r8
 
real(r8), parameter micro_mg1_5::icsmall = 1.e-8_r8
 
real(r8), parameter micro_mg1_5::bimm = 100._r8
 
real(r8), parameter micro_mg1_5::aimm = 0.66_r8
 
real(r8), parameter micro_mg1_5::mi0 = 4._r8/3._r8*pi*rhoi*(10.e-6_r8)**3
 
real(r8), parameter micro_mg1_5::mi0l_min = 4._r8/3._r8*pi*rhow*(4.e-6_r8)**3
 
real(r8), parameter micro_mg1_5::csmin = -30._r8
 
real(r8), parameter micro_mg1_5::csmax = 26._r8
 
real(r8), parameter micro_mg1_5::mindbz = -99._r8
 
real(r8), parameter micro_mg1_5::minrefl = 1.26e-10_r8
 
real(r8) micro_mg1_5::g
 
real(r8) micro_mg1_5::r
 
real(r8) micro_mg1_5::rv
 
real(r8) micro_mg1_5::cpp
 
real(r8) micro_mg1_5::tmelt
 
real(r8) micro_mg1_5::xxlv
 
real(r8) micro_mg1_5::xlf
 
real(r8) micro_mg1_5::xxls
 
real(r8) micro_mg1_5::rhmini
 
logical micro_mg1_5::microp_uniform
 
logical micro_mg1_5::do_cldice
 
logical micro_mg1_5::use_hetfrz_classnuc
 
real(r8) micro_mg1_5::rhosu
 
real(r8) micro_mg1_5::icenuct
 
real(r8) micro_mg1_5::snowmelt
 
real(r8) micro_mg1_5::rainfrze
 
real(r8) micro_mg1_5::cons1
 
real(r8) micro_mg1_5::cons4
 
real(r8) micro_mg1_5::cons5
 
real(r8) micro_mg1_5::cons7
 
real(r8) micro_mg1_5::cons8
 
real(r8) micro_mg1_5::cons11
 
real(r8) micro_mg1_5::cons13
 
real(r8) micro_mg1_5::cons14
 
real(r8) micro_mg1_5::cons16
 
real(r8) micro_mg1_5::cons17
 
real(r8) micro_mg1_5::cons22
 
real(r8) micro_mg1_5::cons23
 
real(r8) micro_mg1_5::cons24
 
real(r8) micro_mg1_5::cons25
 
real(r8) micro_mg1_5::cons27
 
real(r8) micro_mg1_5::cons28
 
character(len=16) micro_mg1_5::micro_mg_precip_frac_method
 
real(r8) micro_mg1_5::micro_mg_berg_eff_factor