← Back to Documentation Home
CCPP SciDoc v8.0.0  v8.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches
Grell-Freitas Convection Module

This is the Grell-Freitas scale and aerosol aware scheme. More...

Collaboration diagram for Grell-Freitas Convection Module:

Modules

 Grell-Freitas Deep Convection Module
 This is Grell-Freitas deep convection scheme module.
 
 Grell-Freitas Convection Driver Module
 This is Grell-Freitas cumulus scheme driver module.
 
 Grell-Freitas Shallow Convection Module
 This module contains Grell-Freitas shallow convection scheme.GF shallow convection as described in Grell and Freitas (2014) [73]. input variables are:
 

Functions/Subroutines

subroutine, public cu_gf_driver::cu_gf_driver_init (imfshalcnv, imfshalcnv_gf, imfdeepcnv, imfdeepcnv_gf, mpirank, mpiroot, errmsg, errflg)
 
subroutine, public cu_gf_driver::cu_gf_driver_run (ntracer, garea, im, km, dt, flag_init, flag_restart, gf_coldstart, cactiv, cactiv_m, g, cp, xlv, r_v, forcet, forceqv_spechum, phil, raincv, qv_spechum, t, cld1d, us, vs, t2di, w, qv2di_spechum, p2di, psuri, hbot, htop, kcnv, xland, hfx2, qfx2, aod_gf, cliw, clcw, pbl, ud_mf, dd_mf, dt_mf, cnvw_moist, cnvc, imfshalcnv, flag_for_scnv_generic_tend, flag_for_dcnv_generic_tend, dtend, dtidx, ntqv, ntiw, ntcw, index_of_temperature, index_of_x_wind, index_of_y_wind, index_of_process_scnv, index_of_process_dcnv, fhour, fh_dfi_radar, ix_dfi_radar, num_dfi_radar, cap_suppress, dfi_radar_max_intervals, ldiag3d, qci_conv, do_cap_suppress, maxupmf, maxmf, do_mynnedmf, ichoice_in, ichoicem_in, ichoice_s_in, spp_cu_deep, spp_wts_cu_deep, nchem, chem3d, fscav, wetdpc_deep, do_smoke_transport, kdt, ten_t, ten_u, ten_v, ten_q, dcliw, dclcw, errmsg, errflg)
 This is the Grell-Freitas convection scheme driver module.
 
subroutine, public cu_gf_driver_post::cu_gf_driver_post_run (im, km, t, q, prevst, prevsq, cactiv, cactiv_m, conv_act, conv_act_m, ntsmoke, ntdust, ntcoarsepm, chem3d, gq0, errmsg, errflg)
 
subroutine, public cu_gf_driver_pre::cu_gf_driver_pre_run (flag_init, flag_restart, gf_coldstart, kdt, fhour, dtp, t, q, prevst, prevsq, forcet, forceq, cactiv, cactiv_m, conv_act, conv_act_m, ntsmoke, ntdust, ntcoarsepm, chem3d, gq0, errmsg, errflg)
 

Detailed Description

This is the Grell-Freitas scale and aerosol aware scheme.

Function/Subroutine Documentation

◆ cu_gf_driver_init()

subroutine, public cu_gf_driver::cu_gf_driver_init ( integer, intent(in)  imfshalcnv,
integer, intent(in)  imfshalcnv_gf,
integer, intent(in)  imfdeepcnv,
integer, intent(in)  imfdeepcnv_gf,
integer, intent(in)  mpirank,
integer, intent(in)  mpiroot,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)

Definition at line 31 of file cu_gf_driver.F90.

◆ cu_gf_driver_post_run()

subroutine, public cu_gf_driver_post::cu_gf_driver_post_run ( integer, intent(in)  im,
integer, intent(in)  km,
real(kind_phys), dimension(:,:), intent(in)  t,
real(kind_phys), dimension(:,:), intent(in)  q,
real(kind_phys), dimension(:,:), intent(out)  prevst,
real(kind_phys), dimension(:,:), intent(out)  prevsq,
integer, dimension(:), intent(in)  cactiv,
integer, dimension(:), intent(in)  cactiv_m,
real(kind_phys), dimension(:), intent(out)  conv_act,
real(kind_phys), dimension(:), intent(out)  conv_act_m,
integer, intent(in)  ntsmoke,
integer, intent(in)  ntdust,
integer, intent(in)  ntcoarsepm,
real(kind_phys), dimension(:,:,:), intent(inout), optional  chem3d,
real(kind_phys), dimension(:,:,:), intent(inout)  gq0,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)

Argument Table

Definition at line 19 of file cu_gf_driver_post.F90.

◆ cu_gf_driver_pre_run()

subroutine, public cu_gf_driver_pre::cu_gf_driver_pre_run ( logical, intent(in)  flag_init,
logical, intent(in)  flag_restart,
logical, intent(in)  gf_coldstart,
integer, intent(in)  kdt,
real(kind_phys), intent(in)  fhour,
real(kind_phys), intent(in)  dtp,
real(kind_phys), dimension(:,:), intent(in)  t,
real(kind_phys), dimension(:,:), intent(in)  q,
real(kind_phys), dimension(:,:), intent(in)  prevst,
real(kind_phys), dimension(:,:), intent(in)  prevsq,
real(kind_phys), dimension(:,:), intent(out)  forcet,
real(kind_phys), dimension(:,:), intent(out)  forceq,
integer, dimension(:), intent(out)  cactiv,
integer, dimension(:), intent(out)  cactiv_m,
real(kind_phys), dimension(:), intent(in)  conv_act,
real(kind_phys), dimension(:), intent(in)  conv_act_m,
integer, intent(in)  ntsmoke,
integer, intent(in)  ntdust,
integer, intent(in)  ntcoarsepm,
real(kind_phys), dimension(:,:,:), intent(inout), optional  chem3d,
real(kind_phys), dimension(:,:,:), intent(inout)  gq0,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)

Argument Table

Definition at line 19 of file cu_gf_driver_pre.F90.

◆ cu_gf_driver_run()

subroutine, public cu_gf_driver::cu_gf_driver_run ( integer, intent(in)  ntracer,
real(kind=kind_phys), dimension(:), intent(in)  garea,
integer, intent(in)  im,
integer, intent(in)  km,
real(kind=kind_phys), intent(in)  dt,
logical, intent(in)  flag_init,
logical, intent(in)  flag_restart,
logical, intent(in)  gf_coldstart,
integer, dimension(:), intent(inout), optional  cactiv,
integer, dimension(:), intent(inout), optional  cactiv_m,
real (kind=kind_phys), intent(in)  g,
real (kind=kind_phys), intent(in)  cp,
real (kind=kind_phys), intent(in)  xlv,
real (kind=kind_phys), intent(in)  r_v,
real(kind=kind_phys), dimension( : , : ), intent(in), optional  forcet,
real(kind=kind_phys), dimension( : , : ), intent(in), optional  forceqv_spechum,
real(kind=kind_phys), dimension( : , : ), intent(in)  phil,
real(kind=kind_phys), dimension (:), intent(out)  raincv,
real(kind=kind_phys), dimension (:,:), intent(in)  qv_spechum,
real(kind=kind_phys), dimension( : , : ), intent(in)  t,
real(kind=kind_phys), dimension (:), intent(out)  cld1d,
real(kind=kind_phys), dimension( : , : ), intent(in)  us,
real(kind=kind_phys), dimension( : , : ), intent(in)  vs,
real(kind=kind_phys), dimension (:,:), intent(in)  t2di,
real(kind=kind_phys), dimension( : , : ), intent(in)  w,
real(kind=kind_phys), dimension (:,:), intent(in)  qv2di_spechum,
real(kind=kind_phys), dimension (:,:), intent(in)  p2di,
real(kind=kind_phys), dimension (:), intent(in)  psuri,
integer, dimension (:), intent(out)  hbot,
integer, dimension (:), intent(out)  htop,
integer, dimension (:), intent(out)  kcnv,
integer, dimension (:), intent(in)  xland,
real(kind=kind_phys), dimension (:), intent(in)  hfx2,
real(kind=kind_phys), dimension (:), intent(in)  qfx2,
real(kind=kind_phys), dimension (:), intent(inout), optional  aod_gf,
real(kind=kind_phys), dimension( : , : ), intent(in)  cliw,
real(kind=kind_phys), dimension( : , : ), intent(in)  clcw,
real(kind=kind_phys), dimension (:), intent(in)  pbl,
real(kind=kind_phys), dimension (:,:), intent(out), optional  ud_mf,
real(kind=kind_phys), dimension (:,:), intent(out)  dd_mf,
real(kind=kind_phys), dimension (:,:), intent(out)  dt_mf,
real(kind=kind_phys), dimension( : , : ), intent(out)  cnvw_moist,
real(kind=kind_phys), dimension( : , : ), intent(out)  cnvc,
integer, intent(in)  imfshalcnv,
logical, intent(in)  flag_for_scnv_generic_tend,
logical, intent(in)  flag_for_dcnv_generic_tend,
real(kind=kind_phys), dimension(:,:,:), intent(inout), optional  dtend,
integer, dimension(:,:), intent(in)  dtidx,
integer, intent(in)  ntqv,
integer, intent(in)  ntiw,
integer, intent(in)  ntcw,
integer, intent(in)  index_of_temperature,
integer, intent(in)  index_of_x_wind,
integer, intent(in)  index_of_y_wind,
integer, intent(in)  index_of_process_scnv,
integer, intent(in)  index_of_process_dcnv,
real(kind=kind_phys), intent(in)  fhour,
real(kind=kind_phys), dimension(:), intent(in)  fh_dfi_radar,
integer, dimension(:), intent(in)  ix_dfi_radar,
integer, intent(in)  num_dfi_radar,
real(kind=kind_phys), dimension(:,:), intent(in), optional  cap_suppress,
integer, intent(in)  dfi_radar_max_intervals,
logical, intent(in)  ldiag3d,
real(kind=kind_phys), dimension( : , : ), intent(inout), optional  qci_conv,
logical, intent(in)  do_cap_suppress,
real(kind=kind_phys), dimension (:), intent(out), optional  maxupmf,
real(kind=kind_phys), dimension (:), intent(in)  maxmf,
logical, intent(in)  do_mynnedmf,
integer, intent(in)  ichoice_in,
integer, intent(in)  ichoicem_in,
integer, intent(in)  ichoice_s_in,
integer, intent(in)  spp_cu_deep,
real(kind_phys), dimension(:,:), intent(in), optional  spp_wts_cu_deep,
integer, intent(in)  nchem,
real(kind_phys), dimension(:,:,:), intent(inout), optional  chem3d,
real(kind_phys), dimension(:), intent(in)  fscav,
real(kind_phys), dimension(:,:), intent(inout), optional  wetdpc_deep,
logical, intent(in)  do_smoke_transport,
integer, intent(in)  kdt,
real(kind_phys), dimension(:,:), intent(out)  ten_t,
real(kind_phys), dimension(:,:), intent(out)  ten_u,
real(kind_phys), dimension(:,:), intent(out)  ten_v,
real(kind_phys), dimension(:,:,:), intent(out)  ten_q,
real(kind_phys), dimension(:,:), intent(out)  dcliw,
real(kind_phys), dimension(:,:), intent(out)  dclcw,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)

This is the Grell-Freitas convection scheme driver module.

Argument Table

Grell-Freitas Cumulus Scheme Driver General Algorithm

  • Set tuning constants for radiation coupling
  • Call neg_check() for GF shallow convection
  • Call cu_gf_deep_run() for middle GF convection
  • Call neg_check() for middle GF convection
  • Call cu_gf_deep_run() for deep GF convection
  • Call neg_check() for deep GF convection
  • FCT treats subsidence effect to cloud ice/water (begin)

Definition at line 59 of file cu_gf_driver.F90.

References cu_gf_deep::cu_gf_deep_run(), cu_gf_sh::cu_gf_sh_run(), cu_gf_deep::fct1d3(), and cu_gf_deep::neg_check().

Here is the call graph for this function: