CCPP SciDoc  v6.0.0
Common Community Physics Package Developed at DTC

◆ gfs_mp_generic_post_run()

subroutine gfs_mp_generic_post::gfs_mp_generic_post_run ( integer, intent(in)  im,
integer, intent(in)  levs,
integer, intent(in)  kdt,
integer, intent(in)  nrcm,
integer, intent(in)  nncl,
integer, intent(in)  ntcw,
integer, intent(in)  ntrac,
integer, intent(in)  imp_physics,
integer, intent(in)  imp_physics_gfdl,
integer, intent(in)  imp_physics_thompson,
integer, intent(in)  imp_physics_nssl,
integer, intent(in)  imp_physics_mg,
integer, intent(in)  imp_physics_fer_hires,
logical, intent(in)  cal_pre,
logical, intent(in)  cplflx,
logical, intent(in)  cplchm,
real(kind=kind_phys), intent(in)  con_g,
real(kind=kind_phys), intent(in)  rainmin,
real(kind=kind_phys), intent(in)  dtf,
real(kind=kind_phys), intent(in)  frain,
real(kind=kind_phys), dimension(:), intent(inout)  rainc,
real(kind=kind_phys), dimension(:), intent(in)  rain1,
real(kind=kind_phys), dimension(:,:), intent(in)  rann,
real(kind=kind_phys), dimension(:), intent(in)  xlat,
real(kind=kind_phys), dimension(:), intent(in)  xlon,
real(kind=kind_phys), dimension(:,:), intent(inout)  gt0,
real(kind=kind_phys), dimension(:,:,:), intent(in)  gq0,
real(kind=kind_phys), dimension(:,:), intent(in)  prsl,
real(kind=kind_phys), dimension(:,:), intent(in)  prsi,
real(kind=kind_phys), dimension(:,:), intent(in)  phii,
real(kind=kind_phys), dimension(:), intent(in)  tsfc,
real(kind=kind_phys), dimension(:), intent(inout)  ice,
real(kind=kind_phys), dimension(:), intent(inout)  snow,
real(kind=kind_phys), dimension(:), intent(inout)  graupel,
real(kind=kind_phys), dimension(:,:), intent(in)  save_t,
real(kind=kind_phys), dimension(:,:,:), intent(in)  save_q,
real(kind=kind_phys), dimension(:), intent(in)  rain0,
real(kind=kind_phys), dimension(:), intent(in)  ice0,
real(kind=kind_phys), dimension(:), intent(in)  snow0,
real(kind=kind_phys), dimension(:), intent(in)  graupel0,
real(kind=kind_phys), dimension(:,:), intent(in)  del,
real(kind=kind_phys), dimension(:), intent(inout)  rain,
real(kind=kind_phys), dimension(:), intent(inout)  domr_diag,
real(kind=kind_phys), dimension(:), intent(inout)  domzr_diag,
real(kind=kind_phys), dimension(:), intent(inout)  domip_diag,
real(kind=kind_phys), dimension(:), intent(inout)  doms_diag,
real(kind=kind_phys), dimension(:), intent(inout)  tprcp,
real(kind=kind_phys), dimension(:), intent(inout)  srflag,
real(kind=kind_phys), dimension(:), intent(in)  sr,
real(kind=kind_phys), dimension(:), intent(inout)  cnvprcp,
real(kind=kind_phys), dimension(:), intent(inout)  totprcp,
real(kind=kind_phys), dimension(:), intent(inout)  totice,
real(kind=kind_phys), dimension(:), intent(inout)  totsnw,
real(kind=kind_phys), dimension(:), intent(inout)  totgrp,
real(kind=kind_phys), dimension(:), intent(inout)  cnvprcpb,
real(kind=kind_phys), dimension(:), intent(inout)  totprcpb,
real(kind=kind_phys), dimension(:), intent(inout)  toticeb,
real(kind=kind_phys), dimension(:), intent(inout)  totsnwb,
real(kind=kind_phys), dimension(:), intent(inout)  totgrpb,
real(kind=kind_phys), dimension(:), intent(inout)  rain_cpl,
real(kind=kind_phys), dimension(:), intent(inout)  rainc_cpl,
real(kind=kind_phys), dimension(:), intent(inout)  snow_cpl,
real(kind=kind_phys), dimension(:), intent(inout)  pwat,
real(kind=kind_phys), dimension(:), intent(inout)  drain_cpl,
real(kind=kind_phys), dimension(:), intent(inout)  dsnow_cpl,
integer, intent(in)  lsm,
integer, intent(in)  lsm_ruc,
integer, intent(in)  lsm_noahmp,
real(kind=kind_phys), dimension(:), intent(inout)  raincprv,
real(kind=kind_phys), dimension(:), intent(inout)  rainncprv,
real(kind=kind_phys), dimension(:), intent(inout)  iceprv,
real(kind=kind_phys), dimension(:), intent(inout)  snowprv,
real(kind=kind_phys), dimension(:), intent(inout)  graupelprv,
real(kind=kind_phys), dimension(:), intent(inout)  draincprv,
real(kind=kind_phys), dimension(:), intent(inout)  drainncprv,
real(kind=kind_phys), dimension(:), intent(inout)  diceprv,
real(kind=kind_phys), dimension(:), intent(inout)  dsnowprv,
real(kind=kind_phys), dimension(:), intent(inout)  dgraupelprv,
real(kind=kind_phys), intent(in)  dtp,
integer  dfi_radar_max_intervals,
real(kind=kind_phys), dimension(:,:,:), intent(inout)  dtend,
integer, dimension(:,:), intent(in)  dtidx,
integer, intent(in)  index_of_temperature,
integer, intent(in)  index_of_process_mp,
logical, intent(in)  ldiag3d,
logical, intent(in)  qdiag3d,
logical, intent(in)  lssav,
integer, intent(in)  num_dfi_radar,
real(kind=kind_phys), dimension(:), intent(in)  fh_dfi_radar,
integer, intent(in)  index_of_process_dfi_radar,
integer, dimension(:)  ix_dfi_radar,
real(kind=kind_phys), dimension(:,:,:), intent(in)  dfi_radar_tten,
real(kind=kind_phys), dimension(:), intent(in)  radar_tten_limits,
real(kind=kind_phys), intent(in)  fhour,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)
  • If requested (e.g. Zhao-Carr MP scheme), call calpreciptype() to calculate dominant precipitation type.
  • For GFDL and Thompson MP scheme, determine convective snow by surface temperature; and determine explicit rain/snow by snow/ice/graupel coming out directly from MP and convective rainfall from the cumulus scheme if the surface temperature is below \(0^oC\).

References calpreciptype(), and csnow().

Here is the call graph for this function: