CAM
|
Functions/Subroutines | |
subroutine, public | 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, do_nccons_in, do_nicons_in, ncnst_in, ninst_in, micro_mg_precip_frac_method_in, micro_mg_berg_eff_factor_in, allow_sed_supersat_in, ice_sed_ai, prc_coef1_in, prc_exp_in, prc_exp1_in, cld_sed_in, mg_prc_coeff_fix_in, alpha_grad_in, beta_grad_in, errstring) |
subroutine, public | micro_mg_tend (mgncol, nlev, deltatin, t, q, qcn, qin, ncn, nin, qrn, qsn, nrn, nsn, relvar, accre_enhan, precip_off, p, pdel, cldn, liqcldf, icecldf, qcsinksum_rate1ord, naai, npccn, rndst, nacon, tlat, qvlat, qctend, qitend, nctend, nitend, qrtend, qstend, nrtend, nstend, effc, effc_fn, effi, prect, preci, nevapr, evapsnow, prain, prodsnow, cmeout, deffi, pgamrad, lamcrad, qsout, dsout, lflx, iflx, rflx, sflx, qrout, reff_rain, reff_snow, qcsevap, qisevap, qvres, cmeitot, vtrmc, vtrmi, umr, ums, qcsedten, qisedten, qrsedten, qssedten, 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 subroutine | calc_rercld (lamr, n0r, lamc, pgam, qric, qcic, ncic, rercld) |
pure subroutine, public | micro_mg_get_cols (ncol, nlev, top_lev, qcn, qin, qrn, qsn, mgncol, mgcols) |
subroutine | get_dcst (ncol, pver, temp, dcst) |
Variables | |
real(r8), parameter | csmin = -30._r8 |
real(r8), parameter | csmax = 26._r8 |
real(r8), parameter | mindbz = -99._r8 |
real(r8), parameter | minrefl = 1.26e-10_r8 |
real(r8) | dcs |
logical | dcs_tdep |
real(r8), parameter | mi0l_min = 4._r8/3._r8*pi*rhow*(4.e-6_r8)**3 |
real(r8) | g |
real(r8) | r |
real(r8) | rv |
real(r8) | cpp |
real(r8) | tmelt |
real(r8) | prc_coef1 = huge(1.0_r8) |
real(r8) | prc_exp = huge(1.0_r8) |
real(r8) | prc_exp1 = huge(1.0_r8) |
real(r8) | cld_sed = huge(1.0_r8) |
logical | mg_prc_coeff_fix = .false. |
real(r8) | xxlv |
real(r8) | xlf |
real(r8) | xxls |
real(r8) | rhmini |
logical | microp_uniform |
logical | do_cldice |
logical | do_nccons |
logical | do_nicons |
logical | use_hetfrz_classnuc |
real(r8) | ncnst |
real(r8) | ninst |
real(r8) | rhosu |
real(r8) | icenuct |
real(r8) | snowmelt |
real(r8) | rainfrze |
real(r8) | alpha_grad |
real(r8) | beta_grad |
real(r8) | gamma_br_plus1 |
real(r8) | gamma_br_plus4 |
real(r8) | gamma_bs_plus1 |
real(r8) | gamma_bs_plus4 |
real(r8) | gamma_bi_plus1 |
real(r8) | gamma_bi_plus4 |
real(r8) | xxlv_squared |
real(r8) | xxls_squared |
character(len=16) | micro_mg_precip_frac_method |
real(r8) | micro_mg_berg_eff_factor |
logical | allow_sed_supersat |
logical | nccons |
logical | nicons |
elemental subroutine micro_mg2_0::calc_rercld | ( | real(r8), intent(in) | lamr, |
real(r8), intent(in) | n0r, | ||
real(r8), intent(in) | lamc, | ||
real(r8), intent(in) | pgam, | ||
real(r8), intent(in) | qric, | ||
real(r8), intent(in) | qcic, | ||
real(r8), intent(in) | ncic, | ||
real(r8), intent(inout) | rercld | ||
) |
|
private |
pure subroutine, public micro_mg2_0::micro_mg_get_cols | ( | integer, intent(in) | ncol, |
integer, intent(in) | nlev, | ||
integer, intent(in) | top_lev, | ||
real(r8), dimension(:,:), intent(in) | qcn, | ||
real(r8), dimension(:,:), intent(in) | qin, | ||
real(r8), dimension(:,:), intent(in) | qrn, | ||
real(r8), dimension(:,:), intent(in) | qsn, | ||
integer, intent(out) | mgncol, | ||
integer, dimension(:), intent(out), allocatable | mgcols | ||
) |
subroutine, public micro_mg2_0::micro_mg_init | ( | integer, intent(in) | kind, |
real(r8), intent(in) | gravit, | ||
real(r8), intent(in) | rair, | ||
real(r8), intent(in) | rh2o, | ||
real(r8), intent(in) | cpair, | ||
real(r8), intent(in) | tmelt_in, | ||
real(r8), intent(in) | latvap, | ||
real(r8), intent(in) | latice, | ||
real(r8), intent(in) | rhmini_in, | ||
real(r8), intent(in) | micro_mg_dcs, | ||
logical, intent(in) | micro_mg_dcs_tdep, | ||
logical, intent(in) | microp_uniform_in, | ||
logical, intent(in) | do_cldice_in, | ||
logical, intent(in) | use_hetfrz_classnuc_in, | ||
logical, intent(in) | do_nccons_in, | ||
logical, intent(in) | do_nicons_in, | ||
real(r8), intent(in) | ncnst_in, | ||
real(r8), intent(in) | ninst_in, | ||
character(len=16), intent(in) | micro_mg_precip_frac_method_in, | ||
real(r8), intent(in) | micro_mg_berg_eff_factor_in, | ||
logical, intent(in) | allow_sed_supersat_in, | ||
real(r8), intent(in) | ice_sed_ai, | ||
real(r8), intent(in) | prc_coef1_in, | ||
real(r8), intent(in) | prc_exp_in, | ||
real(r8), intent(in) | prc_exp1_in, | ||
real(r8), intent(in) | cld_sed_in, | ||
logical, intent(in) | mg_prc_coeff_fix_in, | ||
real(r8), intent(in) | alpha_grad_in, | ||
real(r8), intent(in) | beta_grad_in, | ||
character(128), intent(out) | errstring | ||
) |
subroutine, public micro_mg2_0::micro_mg_tend | ( | integer, intent(in) | mgncol, |
integer, intent(in) | nlev, | ||
real(r8), intent(in) | deltatin, | ||
real(r8), dimension(:,:), intent(in) | t, | ||
real(r8), dimension(:,:), intent(in) | q, | ||
real(r8), dimension(:,:), intent(in) | qcn, | ||
real(r8), dimension(:,:), intent(in) | qin, | ||
real(r8), dimension(:,:), intent(in) | ncn, | ||
real(r8), dimension(:,:), intent(in) | nin, | ||
real(r8), dimension(:,:), intent(in) | qrn, | ||
real(r8), dimension(:,:), intent(in) | qsn, | ||
real(r8), dimension(:,:), intent(in) | nrn, | ||
real(r8), dimension(:,:), intent(in) | nsn, | ||
real(r8), dimension(:,:), intent(in) | relvar, | ||
real(r8), dimension(:,:), intent(in) | accre_enhan, | ||
logical, intent(in) | precip_off, | ||
real(r8), dimension(:,:), intent(in) | p, | ||
real(r8), dimension(:,:), intent(in) | pdel, | ||
real(r8), dimension(:,:), intent(in) | cldn, | ||
real(r8), dimension(:,:), intent(in) | liqcldf, | ||
real(r8), dimension(:,:), intent(in) | icecldf, | ||
real(r8), dimension(:,:), intent(out) | qcsinksum_rate1ord, | ||
real(r8), dimension(:,:), intent(in) | naai, | ||
real(r8), dimension(:,:), intent(in) | npccn, | ||
real(r8), dimension(:,:,:), intent(in) | rndst, | ||
real(r8), dimension(:,:,:), intent(in) | nacon, | ||
real(r8), dimension(:,:), intent(out) | tlat, | ||
real(r8), dimension(:,:), intent(out) | qvlat, | ||
real(r8), dimension(:,:), intent(out) | qctend, | ||
real(r8), dimension(:,:), intent(out) | qitend, | ||
real(r8), dimension(:,:), intent(out) | nctend, | ||
real(r8), dimension(:,:), intent(out) | nitend, | ||
real(r8), dimension(:,:), intent(out) | qrtend, | ||
real(r8), dimension(:,:), intent(out) | qstend, | ||
real(r8), dimension(:,:), intent(out) | nrtend, | ||
real(r8), dimension(:,:), intent(out) | nstend, | ||
real(r8), dimension(:,:), intent(out) | effc, | ||
real(r8), dimension(:,:), intent(out) | effc_fn, | ||
real(r8), dimension(:,:), intent(out) | effi, | ||
real(r8), dimension(:), intent(out) | prect, | ||
real(r8), dimension(:), intent(out) | preci, | ||
real(r8), dimension(:,:), intent(out) | nevapr, | ||
real(r8), dimension(:,:), intent(out) | evapsnow, | ||
real(r8), dimension(:,:), intent(out) | prain, | ||
real(r8), dimension(:,:), intent(out) | prodsnow, | ||
real(r8), dimension(:,:), intent(out) | cmeout, | ||
real(r8), dimension(:,:), intent(out) | deffi, | ||
real(r8), dimension(:,:), intent(out) | pgamrad, | ||
real(r8), dimension(:,:), intent(out) | lamcrad, | ||
real(r8), dimension(:,:), intent(out) | qsout, | ||
real(r8), dimension(:,:), intent(out) | dsout, | ||
real(r8), dimension(:,:), intent(out) | lflx, | ||
real(r8), dimension(:,:), intent(out) | iflx, | ||
real(r8), dimension(:,:), intent(out) | rflx, | ||
real(r8), dimension(:,:), intent(out) | sflx, | ||
real(r8), dimension(:,:), intent(out) | qrout, | ||
real(r8), dimension(:,:), intent(out) | reff_rain, | ||
real(r8), dimension(:,:), intent(out) | reff_snow, | ||
real(r8), dimension(:,:), intent(out) | qcsevap, | ||
real(r8), dimension(:,:), intent(out) | qisevap, | ||
real(r8), dimension(:,:), intent(out) | qvres, | ||
real(r8), dimension(:,:), intent(out) | cmeitot, | ||
real(r8), dimension(:,:), intent(out) | vtrmc, | ||
real(r8), dimension(:,:), intent(out) | vtrmi, | ||
real(r8), dimension(:,:), intent(out) | umr, | ||
real(r8), dimension(:,:), intent(out) | ums, | ||
real(r8), dimension(:,:), intent(out) | qcsedten, | ||
real(r8), dimension(:,:), intent(out) | qisedten, | ||
real(r8), dimension(:,:), intent(out) | qrsedten, | ||
real(r8), dimension(:,:), intent(out) | qssedten, | ||
real(r8), dimension(:,:), intent(out) | pratot, | ||
real(r8), dimension(:,:), intent(out) | prctot, | ||
real(r8), dimension(:,:), intent(out) | mnuccctot, | ||
real(r8), dimension(:,:), intent(out) | mnuccttot, | ||
real(r8), dimension(:,:), intent(out) | msacwitot, | ||
real(r8), dimension(:,:), intent(out) | psacwstot, | ||
real(r8), dimension(:,:), intent(out) | bergstot, | ||
real(r8), dimension(:,:), intent(out) | bergtot, | ||
real(r8), dimension(:,:), intent(out) | melttot, | ||
real(r8), dimension(:,:), intent(out) | homotot, | ||
real(r8), dimension(:,:), intent(out) | qcrestot, | ||
real(r8), dimension(:,:), intent(out) | prcitot, | ||
real(r8), dimension(:,:), intent(out) | praitot, | ||
real(r8), dimension(:,:), intent(out) | qirestot, | ||
real(r8), dimension(:,:), intent(out) | mnuccrtot, | ||
real(r8), dimension(:,:), intent(out) | pracstot, | ||
real(r8), dimension(:,:), intent(out) | meltsdttot, | ||
real(r8), dimension(:,:), intent(out) | frzrdttot, | ||
real(r8), dimension(:,:), intent(out) | mnuccdtot, | ||
real(r8), dimension(:,:), intent(out) | nrout, | ||
real(r8), dimension(:,:), intent(out) | nsout, | ||
real(r8), dimension(:,:), intent(out) | refl, | ||
real(r8), dimension(:,:), intent(out) | arefl, | ||
real(r8), dimension(:,:), intent(out) | areflz, | ||
real(r8), dimension(:,:), intent(out) | frefl, | ||
real(r8), dimension(:,:), intent(out) | csrfl, | ||
real(r8), dimension(:,:), intent(out) | acsrfl, | ||
real(r8), dimension(:,:), intent(out) | fcsrfl, | ||
real(r8), dimension(:,:), intent(out) | rercld, | ||
real(r8), dimension(:,:), intent(out) | ncai, | ||
real(r8), dimension(:,:), intent(out) | ncal, | ||
real(r8), dimension(:,:), intent(out) | qrout2, | ||
real(r8), dimension(:,:), intent(out) | qsout2, | ||
real(r8), dimension(:,:), intent(out) | nrout2, | ||
real(r8), dimension(:,:), intent(out) | nsout2, | ||
real(r8), dimension(:,:), intent(out) | drout2, | ||
real(r8), dimension(:,:), intent(out) | dsout2, | ||
real(r8), dimension(:,:), intent(out) | freqs, | ||
real(r8), dimension(:,:), intent(out) | freqr, | ||
real(r8), dimension(:,:), intent(out) | nfice, | ||
real(r8), dimension(:,:), intent(out) | qcrat, | ||
character(128), intent(out) | errstring, | ||
real(r8), dimension(:,:), intent(in), pointer | tnd_qsnow, | ||
real(r8), dimension(:,:), intent(in), pointer | tnd_nsnow, | ||
real(r8), dimension(:,:), intent(in), pointer | re_ice, | ||
real(r8), dimension(:,:), intent(out) | prer_evap, | ||
real(r8), dimension(:,:), intent(in), pointer | frzimm, | ||
real(r8), dimension(:,:), intent(in), pointer | frzcnt, | ||
real(r8), dimension(:,:), intent(in), pointer | frzdep | ||
) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |