CCPP SciDoc v7.0.0  v7.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches

◆ cs_cumlus()

subroutine cs_conv::cs_cumlus ( integer, intent(in) im,
integer, intent(in) ijsdim,
integer, intent(in) kmax,
integer, intent(in) ntr,
logical, dimension(ntr), intent(in) otspt1,
logical, dimension(ntr), intent(in) otspt2,
logical, intent(in) lprnt,
integer, intent(in) ipr,
real(kind_phys), dimension (ijsdim, kmax ), intent(out) gtt,
real(kind_phys), dimension (ijsdim, kmax, ntr), intent(out) gtq,
real(kind_phys), dimension (ijsdim, kmax ), intent(out) gtu,
real(kind_phys), dimension (ijsdim, kmax ), intent(out) gtv,
real(kind_phys), dimension (ijsdim, kmax ), intent(out) cmdet,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(out) gtprp,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(out) gsnwp,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(out) gmfx0,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(out) gmfx1,
real(kind_phys), dimension (ijsdim ), intent(out) cape,
integer, dimension (ijsdim, nctp ), intent(out) kt,
real(kind_phys), dimension ( im, nctp ), intent(inout) cbmfx,
real(kind_phys), dimension (ijsdim, kmax ), intent(in) gdt,
real(kind_phys), dimension (ijsdim, kmax, ntr), intent(in) gdq,
real(kind_phys), dimension (ijsdim, kmax ), intent(in) gdu,
real(kind_phys), dimension (ijsdim, kmax ), intent(in) gdv,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(in) gdtm,
real(kind_phys), dimension (ijsdim, kmax ), intent(in) gdp,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(in) gdpm,
real(kind_phys), dimension (ijsdim, kmax ), intent(in) gdz,
real(kind_phys), dimension (ijsdim, kmax+1 ), intent(in) gdzm,
real(kind_phys), dimension (ijsdim, kmax), intent(in) delp,
real(kind_phys), dimension (ijsdim, kmax), intent(in) delpinv,
real(kind_phys), intent(in) delta,
real(kind_phys), intent(in) delti,
integer, intent(in) ists,
integer, intent(in) iens,
integer, intent(in) mype,
real(kind_phys), dimension(ntr), intent(in) fscav,
real(kind_phys), dimension(ntr), intent(in) fswtr,
real(kind_phys), dimension(ijsdim), intent(in) wcbmaxm,
integer, intent(in) nctp,
real(kind_phys), dimension(im,kmax+1,nctp), intent(out) sigmai,
real(kind_phys), dimension(im,kmax+1), intent(out) sigma,
real(kind_phys), dimension(im,kmax+1,nctp), intent(out) vverti,
logical, intent(in) do_aw,
logical, intent(in) do_awdd,
logical, intent(in) flx_form )
private
  • This routine works as the prognostic Arakawa-Schubert scheme if OPT_ASMODE is specified.
  • Specify OPT_NS02 to use entrainment rate of Neggers et al. (2002)
  • Specify OPT_CUMBGT to check water and energy budget.
  • Specify OPT_CUMCHK to check range of output values.

History(yy/mm/dd):

  • 08/09/19(chikira) MIROC4.1
  • 08/10/30(hiro) CMT modified
  • 08/11/11(chikira) Neggers et al. (2002)
  • 08/12/3 (chikira) downdraft detrainment modified
  • 08/12/3 (chikira) COSP output
  • 09/02/24(chikira) fix convective inhibition
  • 09/04/16(hiro) CMIP5 output (cbasep,ctopp)
  • 09/09/03(yokohata) COSP
  • 10/11/19(toshi) small bug fix
  • 14/02/07(chikira) CUMDWN bug fix, CMT modified

CSAW cs_cumlus General Algorithm

  1. Compute layer saturate moisture \(Q_i\)(GDQS) and saturate moist static energy (GDHS; see Appendix B in Chikira and Sugiyama (2010) [36])
  1. Compute tropopause height (GDZTR)
  1. Call cumbas() to compute cloud base properties
  1. Compute CAPE and CIN
  1. Initialize variables before summing over cloud types
  1. Call cumup() to compute in-cloud properties
  1. Call cumbmx() to compute cloud base mass flux
  1. Compute lamda for a cloud type and then updraft area fraction (sigmai) following Equations 23 and 12 of Arakawa and Wu (2013) [7] , respectively
  1. Compute tendencies based on mass flux and condensation
  1. Call cumflx() to compute cloud mass flux and precipitation
  1. Compute net updraft mass flux for all clouds
  1. Call cumdwn() to compute cumulus downdraft and assocated melt, freeze and evaporation
  1. Call cumsbw() to compute cloud subsidence heating
  1. Compute AW tendencies of T, ql and qi
  1. Call cumfxr() for tracer mass fixer without detrainment
  1. Ensures conservation of water.

Definition at line 588 of file cs_conv.F90.

References cumbas(), cumbmx(), cumdet(), cumdnr(), cumdwn(), cumflx(), cumfxr(), cumsbh(), cumsbw(), cumup(), cumupr(), and esat().

Referenced by cs_conv_run().

Here is the call graph for this function:
Here is the caller graph for this function: