CAM
micro_mg1_0 Module Reference

Functions/Subroutines

subroutine, public micro_mg_init (kind, gravit, rair, rh2o, cpair, rhoh2o, tmelt_in, latvap, latice, rhmini_in, micro_mg_dcs, micro_mg_dcs_tdep, use_hetfrz_classnuc_in, micro_mg_precip_frac_method_in, micro_mg_berg_eff_factor_in, errstring)
 
subroutine, public micro_mg_tend (microp_uniform, pcols, pver, ncol, top_lev, deltatin, tn, qn, qc, qi, nc, ni, p, pdel, cldn, liqcldf, relvar, accre_enhan, icecldf, rate1ord_cw2pr_st, naai, npccnin, rndst, nacon, tlat, qvlat, qctend, qitend, nctend, nitend, effc, effc_fn, effi, prect, preci, nevapr, evapsnow, am_evp_st, prain, prodsnow, cmeout, deffi, pgamrad, lamcrad, qsout, dsout, rflx, sflx, qrout, reff_rain, reff_snow, qcsevap, qisevap, qvres, cmeiout, vtrmc, vtrmi, qcsedten, qisedten, prao, prco, mnuccco, mnuccto, msacwio, psacwso, bergso, bergo, melto, homoo, qcreso, prcio, praio, qireso, mnuccro, pracso, meltsdt, frzrdt, mnuccdo, nrout, nsout, refl, arefl, areflz, frefl, csrfl, acsrfl, fcsrfl, rercld, ncai, ncal, qrout2, qsout2, nrout2, nsout2, drout2, dsout2, freqs, freqr, nfice, prer_evap, do_cldice, errstring, tnd_qsnow, tnd_nsnow, re_ice, frzimm, frzcnt, frzdep)
 
pure subroutine, public micro_mg_get_cols (ncol, nlev, top_lev, qcn, qin, mgncol, mgcols)
 
subroutine get_dcst (ncol, pcols, pver, temp, dcst)
 

Variables

integer, parameter r8 = selected_real_kind(12)
 
logical pergro_mods = .false.
 
logical dcs_tdep
 
real(r8g
 
real(r8r
 
real(r8rv
 
real(r8cpp
 
real(r8rhow
 
real(r8tmelt
 
real(r8xxlv
 
real(r8xlf
 
real(r8xxls
 
real(r8rhosn
 
real(r8rhoi
 
real(r8ac
 
real(r8bc
 
real(r8as
 
real(r8bs
 
real(r8ai
 
real(r8bi
 
real(r8ar
 
real(r8br
 
real(r8ci
 
real(r8di
 
real(r8cs
 
real(r8ds
 
real(r8cr
 
real(r8dr
 
real(r8f1s
 
real(r8f2s
 
real(r8eii
 
real(r8ecr
 
real(r8f1r
 
real(r8f2r
 
real(r8dcs
 
real(r8qsmall
 
real(r8bimm
 
real(r8aimm
 
real(r8rhosu
 
real(r8mi0
 
real(r8rin
 
real(r8pi
 
real(r8cons1
 
real(r8cons4
 
real(r8cons5
 
real(r8cons6
 
real(r8cons7
 
real(r8cons8
 
real(r8cons11
 
real(r8cons13
 
real(r8cons14
 
real(r8cons16
 
real(r8cons17
 
real(r8cons22
 
real(r8cons23
 
real(r8cons24
 
real(r8cons25
 
real(r8cons27
 
real(r8cons28
 
real(r8lammini
 
real(r8lammaxi
 
real(r8lamminr
 
real(r8lammaxr
 
real(r8lammins
 
real(r8lammaxs
 
real(r8lammini_lc
 
real(r8tmax_fsnow
 
real(r8tmin_fsnow
 
real(r8tt0
 
real(r8csmin
 
real(r8csmax
 
real(r8minrefl
 
real(r8mindbz
 
real(r8rhmini
 
logical use_hetfrz_classnuc
 
character(len=16) micro_mg_precip_frac_method
 
real(r8micro_mg_berg_eff_factor
 

Function/Subroutine Documentation

◆ get_dcst()

subroutine micro_mg1_0::get_dcst ( integer, intent(in)  ncol,
integer, intent(in)  pcols,
integer, intent(in)  pver,
real(r8), dimension(pcols,pver), intent(in)  temp,
real(r8), dimension(pcols,pver), intent(out)  dcst 
)
private
Here is the caller graph for this function:

◆ micro_mg_get_cols()

pure subroutine, public micro_mg1_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,
integer, intent(out)  mgncol,
integer, dimension(:), intent(out), allocatable  mgcols 
)
Here is the caller graph for this function:

◆ micro_mg_init()

subroutine, public micro_mg1_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)  rhoh2o,
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)  use_hetfrz_classnuc_in,
character(len=16), intent(in)  micro_mg_precip_frac_method_in,
real(r8), intent(in)  micro_mg_berg_eff_factor_in,
character(128), intent(out)  errstring 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ micro_mg_tend()

subroutine, public micro_mg1_0::micro_mg_tend ( logical, intent(in)  microp_uniform,
integer, intent(in)  pcols,
integer, intent(in)  pver,
integer, intent(in)  ncol,
integer, intent(in)  top_lev,
real(r8), intent(in)  deltatin,
real(r8), dimension(pcols,pver), intent(in)  tn,
real(r8), dimension(pcols,pver), intent(in)  qn,
real(r8), dimension(pcols,pver), intent(inout)  qc,
real(r8), dimension(pcols,pver), intent(inout)  qi,
real(r8), dimension(pcols,pver), intent(inout)  nc,
real(r8), dimension(pcols,pver), intent(inout)  ni,
real(r8), dimension(pcols,pver), intent(in)  p,
real(r8), dimension(pcols,pver), intent(in)  pdel,
real(r8), dimension(pcols,pver), intent(in)  cldn,
real(r8), dimension(pcols,pver), intent(in)  liqcldf,
real(r8), dimension(pcols,pver), intent(in)  relvar,
real(r8), dimension(pcols,pver), intent(in)  accre_enhan,
real(r8), dimension(pcols,pver), intent(in)  icecldf,
real(r8), dimension(pcols,pver), intent(out)  rate1ord_cw2pr_st,
real(r8), dimension(pcols,pver), intent(in)  naai,
real(r8), dimension(pcols,pver), intent(in)  npccnin,
real(r8), dimension(pcols,pver,4), intent(in)  rndst,
real(r8), dimension(pcols,pver,4), intent(in)  nacon,
real(r8), dimension(pcols,pver), intent(out)  tlat,
real(r8), dimension(pcols,pver), intent(out)  qvlat,
real(r8), dimension(pcols,pver), intent(out)  qctend,
real(r8), dimension(pcols,pver), intent(out)  qitend,
real(r8), dimension(pcols,pver), intent(out)  nctend,
real(r8), dimension(pcols,pver), intent(out)  nitend,
real(r8), dimension(pcols,pver), intent(out)  effc,
real(r8), dimension(pcols,pver), intent(out)  effc_fn,
real(r8), dimension(pcols,pver), intent(out)  effi,
real(r8), dimension(pcols), intent(out)  prect,
real(r8), dimension(pcols), intent(out)  preci,
real(r8), dimension(pcols,pver), intent(out)  nevapr,
real(r8), dimension(pcols,pver), intent(out)  evapsnow,
real(r8), dimension(pcols,pver), intent(out)  am_evp_st,
real(r8), dimension(pcols,pver), intent(out)  prain,
real(r8), dimension(pcols,pver), intent(out)  prodsnow,
real(r8), dimension(pcols,pver), intent(out)  cmeout,
real(r8), dimension(pcols,pver), intent(out)  deffi,
real(r8), dimension(pcols,pver), intent(out)  pgamrad,
real(r8), dimension(pcols,pver), intent(out)  lamcrad,
real(r8), dimension(pcols,pver), intent(out)  qsout,
real(r8), dimension(pcols,pver), intent(out)  dsout,
real(r8), dimension(pcols,pver+1), intent(out)  rflx,
real(r8), dimension(pcols,pver+1), intent(out)  sflx,
real(r8), dimension(pcols,pver), intent(out)  qrout,
real(r8), dimension(pcols,pver), intent(inout)  reff_rain,
real(r8), dimension(pcols,pver), intent(inout)  reff_snow,
real(r8), dimension(pcols,pver), intent(out)  qcsevap,
real(r8), dimension(pcols,pver), intent(out)  qisevap,
real(r8), dimension(pcols,pver), intent(out)  qvres,
real(r8), dimension(pcols,pver), intent(out)  cmeiout,
real(r8), dimension(pcols,pver), intent(out)  vtrmc,
real(r8), dimension(pcols,pver), intent(out)  vtrmi,
real(r8), dimension(pcols,pver), intent(out)  qcsedten,
real(r8), dimension(pcols,pver), intent(out)  qisedten,
real(r8), dimension(pcols,pver), intent(out)  prao,
real(r8), dimension(pcols,pver), intent(out)  prco,
real(r8), dimension(pcols,pver), intent(out)  mnuccco,
real(r8), dimension(pcols,pver), intent(out)  mnuccto,
real(r8), dimension(pcols,pver), intent(out)  msacwio,
real(r8), dimension(pcols,pver), intent(out)  psacwso,
real(r8), dimension(pcols,pver), intent(out)  bergso,
real(r8), dimension(pcols,pver), intent(out)  bergo,
real(r8), dimension(pcols,pver), intent(out)  melto,
real(r8), dimension(pcols,pver), intent(out)  homoo,
real(r8), dimension(pcols,pver), intent(out)  qcreso,
real(r8), dimension(pcols,pver), intent(out)  prcio,
real(r8), dimension(pcols,pver), intent(out)  praio,
real(r8), dimension(pcols,pver), intent(out)  qireso,
real(r8), dimension(pcols,pver), intent(out)  mnuccro,
real(r8), dimension (pcols,pver), intent(out)  pracso,
real(r8), dimension(pcols,pver), intent(out)  meltsdt,
real(r8), dimension (pcols,pver), intent(out)  frzrdt,
real(r8), dimension(pcols,pver), intent(out)  mnuccdo,
real(r8), dimension(pcols,pver), intent(out)  nrout,
real(r8), dimension(pcols,pver), intent(out)  nsout,
real(r8), dimension(pcols,pver), intent(out)  refl,
real(r8), dimension(pcols,pver), intent(out)  arefl,
real(r8), dimension(pcols,pver), intent(out)  areflz,
real(r8), dimension(pcols,pver), intent(out)  frefl,
real(r8), dimension(pcols,pver), intent(out)  csrfl,
real(r8), dimension(pcols,pver), intent(out)  acsrfl,
real(r8), dimension(pcols,pver), intent(out)  fcsrfl,
real(r8), dimension(pcols,pver), intent(out)  rercld,
real(r8), dimension(pcols,pver), intent(out)  ncai,
real(r8), dimension(pcols,pver), intent(out)  ncal,
real(r8), dimension(pcols,pver), intent(out)  qrout2,
real(r8), dimension(pcols,pver), intent(out)  qsout2,
real(r8), dimension(pcols,pver), intent(out)  nrout2,
real(r8), dimension(pcols,pver), intent(out)  nsout2,
real(r8), dimension(pcols,pver), intent(out)  drout2,
real(r8), dimension(pcols,pver), intent(out)  dsout2,
real(r8), dimension(pcols,pver), intent(out)  freqs,
real(r8), dimension(pcols,pver), intent(out)  freqr,
real(r8), dimension(pcols,pver), intent(out)  nfice,
real(r8), dimension(pcols,pver), intent(out)  prer_evap,
logical, intent(in)  do_cldice,
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(in), pointer  frzimm,
real(r8), dimension(:,:), intent(in), pointer  frzcnt,
real(r8), dimension(:,:), intent(in), pointer  frzdep 
)
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ ac

real(r8) micro_mg1_0::ac
private

◆ ai

real(r8) micro_mg1_0::ai
private

◆ aimm

real(r8) micro_mg1_0::aimm
private

◆ ar

real(r8) micro_mg1_0::ar
private

◆ as

real(r8) micro_mg1_0::as
private

◆ bc

real(r8) micro_mg1_0::bc
private

◆ bi

real(r8) micro_mg1_0::bi
private

◆ bimm

real(r8) micro_mg1_0::bimm
private

◆ br

real(r8) micro_mg1_0::br
private

◆ bs

real(r8) micro_mg1_0::bs
private

◆ ci

real(r8) micro_mg1_0::ci
private

◆ cons1

real(r8) micro_mg1_0::cons1
private

◆ cons11

real(r8) micro_mg1_0::cons11
private

◆ cons13

real(r8) micro_mg1_0::cons13
private

◆ cons14

real(r8) micro_mg1_0::cons14
private

◆ cons16

real(r8) micro_mg1_0::cons16
private

◆ cons17

real(r8) micro_mg1_0::cons17
private

◆ cons22

real(r8) micro_mg1_0::cons22
private

◆ cons23

real(r8) micro_mg1_0::cons23
private

◆ cons24

real(r8) micro_mg1_0::cons24
private

◆ cons25

real(r8) micro_mg1_0::cons25
private

◆ cons27

real(r8) micro_mg1_0::cons27
private

◆ cons28

real(r8) micro_mg1_0::cons28
private

◆ cons4

real(r8) micro_mg1_0::cons4
private

◆ cons5

real(r8) micro_mg1_0::cons5
private

◆ cons6

real(r8) micro_mg1_0::cons6
private

◆ cons7

real(r8) micro_mg1_0::cons7
private

◆ cons8

real(r8) micro_mg1_0::cons8
private

◆ cpp

real(r8) micro_mg1_0::cpp
private

◆ cr

real(r8) micro_mg1_0::cr
private

◆ cs

real(r8) micro_mg1_0::cs
private

◆ csmax

real(r8) micro_mg1_0::csmax
private

◆ csmin

real(r8) micro_mg1_0::csmin
private

◆ dcs

real(r8) micro_mg1_0::dcs
private

◆ dcs_tdep

logical micro_mg1_0::dcs_tdep
private

◆ di

real(r8) micro_mg1_0::di
private

◆ dr

real(r8) micro_mg1_0::dr
private

◆ ds

real(r8) micro_mg1_0::ds
private

◆ ecr

real(r8) micro_mg1_0::ecr
private

◆ eii

real(r8) micro_mg1_0::eii
private

◆ f1r

real(r8) micro_mg1_0::f1r
private

◆ f1s

real(r8) micro_mg1_0::f1s
private

◆ f2r

real(r8) micro_mg1_0::f2r
private

◆ f2s

real(r8) micro_mg1_0::f2s
private

◆ g

real(r8) micro_mg1_0::g
private

◆ lammaxi

real(r8) micro_mg1_0::lammaxi
private

◆ lammaxr

real(r8) micro_mg1_0::lammaxr
private

◆ lammaxs

real(r8) micro_mg1_0::lammaxs
private

◆ lammini

real(r8) micro_mg1_0::lammini
private

◆ lammini_lc

real(r8) micro_mg1_0::lammini_lc
private

◆ lamminr

real(r8) micro_mg1_0::lamminr
private

◆ lammins

real(r8) micro_mg1_0::lammins
private

◆ mi0

real(r8) micro_mg1_0::mi0
private

◆ micro_mg_berg_eff_factor

real(r8) micro_mg1_0::micro_mg_berg_eff_factor
private

◆ micro_mg_precip_frac_method

character(len=16) micro_mg1_0::micro_mg_precip_frac_method
private

◆ mindbz

real(r8) micro_mg1_0::mindbz
private

◆ minrefl

real(r8) micro_mg1_0::minrefl
private

◆ pergro_mods

logical micro_mg1_0::pergro_mods = .false.
private

◆ pi

real(r8) micro_mg1_0::pi
private

◆ qsmall

real(r8) micro_mg1_0::qsmall
private

◆ r

real(r8) micro_mg1_0::r
private

◆ r8

integer, parameter micro_mg1_0::r8 = selected_real_kind(12)
private

◆ rhmini

real(r8) micro_mg1_0::rhmini
private

◆ rhoi

real(r8) micro_mg1_0::rhoi
private

◆ rhosn

real(r8) micro_mg1_0::rhosn
private

◆ rhosu

real(r8) micro_mg1_0::rhosu
private

◆ rhow

real(r8) micro_mg1_0::rhow
private

◆ rin

real(r8) micro_mg1_0::rin
private

◆ rv

real(r8) micro_mg1_0::rv
private

◆ tmax_fsnow

real(r8) micro_mg1_0::tmax_fsnow
private

◆ tmelt

real(r8) micro_mg1_0::tmelt
private

◆ tmin_fsnow

real(r8) micro_mg1_0::tmin_fsnow
private

◆ tt0

real(r8) micro_mg1_0::tt0
private

◆ use_hetfrz_classnuc

logical micro_mg1_0::use_hetfrz_classnuc
private

◆ xlf

real(r8) micro_mg1_0::xlf
private

◆ xxls

real(r8) micro_mg1_0::xxls
private

◆ xxlv

real(r8) micro_mg1_0::xxlv
private