CCPP Scientific Documentation
v5.0.0
subroutine, public m_micro::m_micro_run ( integer, intent(in)  im,
integer, intent(in)  lm,
logical, intent(in)  flipv,
real (kind=kind_phys), intent(in)  dt_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  prsl_i,
real (kind=kind_phys), dimension(im,0:lm), intent(in)  prsi_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  phil,
real (kind=kind_phys), dimension(im,0:lm), intent(in)  phii,
real (kind=kind_phys), dimension(im,lm), intent(in)  omega_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  QLLS_i,
real (kind=kind_phys), dimension(:,:), intent(in)  QLCN_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  QILS_i,
real (kind=kind_phys), dimension(:,:), intent(in)  QICN_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  lwheat_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  swheat_i,
real (kind=kind_phys), dimension(:,:), intent(in)  w_upi,
real (kind=kind_phys), dimension(:,:), intent(in)  cf_upi,
real (kind=kind_phys), dimension(im), intent(in)  FRLAND,
real (kind=kind_phys), dimension(im), intent(in)  ZPBL,
real (kind=kind_phys), dimension(:,:), intent(in)  CNV_MFD_i,
real (kind=kind_phys), dimension(:,:), intent(in)  CNV_DQLDT_i,
real (kind=kind_phys), dimension(:,:), intent(in)  CLCN_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  u_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  v_i,
real (kind=kind_phys), dimension(im), intent(in)  TAUGWX,
real (kind=kind_phys), dimension(im), intent(in)  TAUGWY,
real (kind=kind_phys), dimension(im), intent(in)  TAUOROX,
real (kind=kind_phys), dimension(im), intent(in)  TAUOROY,
real (kind=kind_phys), dimension(:,:), intent(in)  CNV_FICE_i,
real (kind=kind_phys), dimension(:,:), intent(in)  CNV_NDROP_i,
real (kind=kind_phys), dimension(:,:), intent(in)  CNV_NICE_i,
real (kind=kind_phys), dimension(im,lm), intent(inout)  q_io,
real (kind=kind_phys), dimension(im,lm), intent(out)  lwm_o,
real (kind=kind_phys), dimension(im,lm), intent(out)  qi_o,
real (kind=kind_phys), dimension(im,lm), intent(inout)  t_io,
real (kind=kind_phys), dimension(im), intent(out)  rn_o,
real (kind=kind_phys), dimension(im), intent(out)  sr_o,
real (kind=kind_phys), dimension(im,lm), intent(inout)  ncpl_io,
real (kind=kind_phys), dimension(im,lm), intent(inout)  ncpi_io,
integer, intent(in)  fprcp,
real (kind=kind_phys), dimension(:,:), intent(inout)  rnw_io,
real (kind=kind_phys), dimension(:,:), intent(inout)  snw_io,
real (kind=kind_phys), dimension(:,:), intent(inout)  qgl_io,
real (kind=kind_phys), dimension(:,:), intent(inout)  ncpr_io,
real (kind=kind_phys), dimension(:,:), intent(inout)  ncps_io,
real (kind=kind_phys), dimension(:,:), intent(inout)  ncgl_io,
real (kind=kind_phys), dimension(im,lm), intent(inout)  CLLS_io,
integer, dimension(im), intent(inout)  KCBL,
real (kind=kind_phys), dimension(im,lm), intent(out)  CLDREFFL,
real (kind=kind_phys), dimension(im,lm), intent(out)  CLDREFFI,
real (kind=kind_phys), dimension(im,lm), intent(out)  CLDREFFR,
real (kind=kind_phys), dimension(im,lm), intent(out)  CLDREFFS,
real (kind=kind_phys), dimension(im,lm), intent(out)  CLDREFFG,
real (kind=kind_phys), dimension(im,lm,ntrcaer), intent(in)  aerfld_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  naai_i,
real (kind=kind_phys), dimension(im,lm), intent(in)  npccn_i,
integer, intent(in)  iccn,
logical, intent(in)  skip_macro,
real (kind=kind_phys), intent(in)  alf_fac,
real (kind=kind_phys), dimension(2), intent(in)  qc_min,
integer, intent(in)  pdfflag,
integer, intent(in)  kdt,
real (kind=kind_phys), dimension(im), intent(in)  xlat,
real (kind=kind_phys), dimension(im), intent(in)  xlon,
real (kind=kind_phys), dimension(im,lm), intent(in)  rhc_i,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)
  1. Nucleation of cloud droplets and ice crystals Aerosol cloud interactions. Calculate maxCCN tendency using Fountoukis and Nenes (2005) or Abdul Razzak and Ghan (2002) liquid Activation Parameterization Ice activation follows the Barahona & Nenes ice activation scheme, ACP, (2008, 2009). Written by Donifan Barahona and described in Barahona et al. (2013)
  2. Call gw_prof() to calculate subgrid scale distribution in vertical velocity
    • Subgrid variability from convective sources according to Barahona et al. 2014 (in preparation)
    • Compute total variance
  3. Call aerosol_activate() to activate the aerosols
  4. Begin cloud macrophysics
  5. Two-moment stratiform microphysics: this is the implementation of the Morrison and Gettelman (2008) microphysics [130]

References aer_cloud::aerconversion1(), aer_cloud::aerosol_activate(), physcons::con_cp, physcons::con_eps, physcons::con_epsm1, physcons::con_fvirt, physcons::con_g, physcons::con_hfus, physcons::con_hvap, physcons::con_pi, physcons::con_rd, physcons::con_t0c, physcons::con_ttp, cldmacro::fix_up_clouds_2m(), aer_cloud::getinsubset(), gw_prof(), aer_cloud::init_aer(), cldmacro::macro_cloud(), cldmacro::meltfrz_inst(), micro_mg3_0::micro_mg_tend(), cldwat2m_micro::mmicro_pcond(), aerclm_def::ntrcaer, micro_mg3_0::qcvar, and cldmacro::update_cld().

Here is the call graph for this function: