Common Community Physics Package (CCPP) Scientific Documentation  Version 2.0
GFS Scale-Aware Mass-Flux Deep Convection

This subroutine contains the entirety of the SAMF deep convection scheme. More...

Detailed Description

For grid sizes larger than threshold value, as in Grell (1993) [31] , the SAMF deep convection scheme can be described in terms of three types of "controls": static, dynamic, and feedback. The static control component consists of the simple entraining/detraining updraft/downdraft cloud model and is used to determine the cloud properties, convective precipitation, as well as the convective cloud top height. The dynamic control is the determination of the potential energy available for convection to "consume", or how primed the large-scale environment is for convection to occur due to changes by the dyanmics of the host model. The feedback control is the determination of how the parameterized convection changes the large-scale environment (the host model state variables) given the changes to the state variables per unit cloud base mass flux calculated in the static control portion and the deduced cloud base mass flux determined from the dynamic control.

For grid sizes smaller than threshold value, the cloud base mass flux in the SAMF scheme is determined by the cumulus updraft velocity averaged ove the whole cloud depth (Han et al. (2017) [36] ), which in turn, determines changes of the large-scale environment due to the cumulus convection.

Argument Table

local_name standard_name long_name units rank type kind intent optional
im horizontal_loop_extent horizontal loop extent count 0 integer in F
ix horizontal_dimension horizontal dimension count 0 integer in F
km vertical_dimension vertical layer dimension count 0 integer in F
delt time_step_for_physics physics time step s 0 real kind_phys in F
ntk index_of_TKE_convective_transport_tracer index of TKE in the convectively transported tracer array index 0 integer in F
ntr number_of_tracers_for_samf number of tracers for scale-aware mass flux schemes count 0 integer in F
delp air_pressure_difference_between_midlayers pres(k) - pres(k+1) Pa 2 real kind_phys in F
prslp air_pressure mean layer pressure Pa 2 real kind_phys in F
psp surface_air_pressure surface pressure Pa 1 real kind_phys in F
phil geopotential layer geopotential m2 s-2 2 real kind_phys in F
qtr convective_transportable_tracers array to contain cloud water and other convective trans. tracers kg kg-1 3 real kind_phys inout F
q1 water_vapor_specific_humidity_updated_by_physics updated vapor specific humidity kg kg-1 2 real kind_phys inout F
t1 air_temperature_updated_by_physics updated temperature K 2 real kind_phys inout F
u1 x_wind_updated_by_physics updated x-direction wind m s-1 2 real kind_phys inout F
v1 y_wind_updated_by_physics updated y-direction wind m s-1 2 real kind_phys inout F
cldwrk cloud_work_function cloud work function m2 s-2 1 real kind_phys out F
rn lwe_thickness_of_deep_convective_precipitation_amount deep convective rainfall amount on physics timestep m 1 real kind_phys out F
kbot vertical_index_at_cloud_base index for cloud base index 1 integer out F
ktop vertical_index_at_cloud_top index for cloud top index 1 integer out F
kcnv flag_deep_convection deep convection: 0=no, 1=yes flag 1 integer inout F
islimsk sea_land_ice_mask landmask: sea/land/ice=0/1/2 flag 1 integer in F
garea cell_area grid cell area m2 1 real kind_phys in F
dot omega layer mean vertical velocity Pa s-1 2 real kind_phys in F
ncloud number_of_hydrometeors number of hydrometeors count 0 integer in F
ud_mf instantaneous_atmosphere_updraft_convective_mass_flux (updraft mass flux) * delt kg m-2 2 real kind_phys out F
dd_mf instantaneous_atmosphere_downdraft_convective_mass_flux (downdraft mass flux) * delt kg m-2 2 real kind_phys out F
dt_mf instantaneous_atmosphere_detrainment_convective_mass_flux (detrainment mass flux) * delt kg m-2 2 real kind_phys out F
cnvw convective_cloud_water_mixing_ratio moist convective cloud water mixing ratio kg kg-1 2 real kind_phys inout F
cnvc convective_cloud_cover convective cloud cover frac 2 real kind_phys inout F
clam entrainment_rate_coefficient_deep_convection entrainment rate coefficient for deep conv. none 0 real kind_phys in F
c0s rain_conversion_parameter_deep_convection convective rain conversion parameter for deep conv. m-1 0 real kind_phys in F
c1 detrainment_conversion_parameter_deep_convection convective detrainment conversion parameter for deep conv. m-1 0 real kind_phys in F
betal downdraft_fraction_reaching_surface_over_land_deep_convection downdraft fraction reaching surface over land for deep conv. frac 0 real kind_phys in F
betas downdraft_fraction_reaching_surface_over_ocean_deep_convection downdraft fraction reaching surface over ocean for deep conv. frac 0 real kind_phys in F
evfact rain_evaporation_coefficient_deep_convection convective rain evaporation coefficient for deep conv. frac 0 real kind_phys in F
evfactl rain_evaporation_coefficient_over_land_deep_convection convective rain evaporation coefficient over land for deep conv. frac 0 real kind_phys in F
pgcon momentum_transport_reduction_factor_pgf_deep_convection reduction factor in momentum transport due to deep conv. induced pressure gradient force frac 0 real kind_phys in F
asolfac aerosol_aware_parameter_deep_convection aerosol-aware parameter inversely proportional to CCN number concentraion from Lim (2011) for deep conv. none 0 real kind_phys in F
errmsg error_message error message for error handling in CCPP none 0 character len=* out F
errflg error_flag error flag for error handling in CCPP flag 0 integer out F

GFS samfdeepcnv General Algorithm

  1. Compute preliminary quantities needed for static, dynamic, and feedback control portions of the algorithm.
  2. Perform calculations related to the updraft of the entraining/detraining cloud model ("static control").
  3. Perform calculations related to the downdraft of the entraining/detraining cloud model ("static control").
  4. For grid sizes larger than the threshold value (currently 8 km):
    • 1) Using the updated temperature and moisture profiles that were modified by the convection on a short time-scale, recalculate the total cloud work function to determine the change in the cloud work function due to convection, or the stabilizing effect of the cumulus.
    • 2) For the "dynamic control", using a reference cloud work function, estimate the change in cloud work function due to the large-scale dynamics. Following the quasi-equilibrium assumption, calculate the cloud base mass flux required to keep the large-scale convective destabilization in balance with the stabilization effect of the convection.
  5. For grid sizes smaller than the threshold value (currently 8 km):
    • 1) compute the cloud base mass flux using the cumulus updraft velocity averaged ove the whole cloud depth.
  6. For scale awareness, the updraft fraction (sigma) is obtained as a function of cloud base entrainment. Then, the final cloud base mass flux is obtained by the original mass flux multiplied by the (1−sigma) 2 .
  7. For the "feedback control", calculate updated values of the state variables by multiplying the cloud base mass flux and the tendencies calculated per unit cloud base mass flux from the static control.

GFS samfdeepcnv Detailed Algorithm

Functions/Subroutines

subroutine samfdeepcnv::samfdeepcnv_run (im, ix, km, delt, ntk, ntr, delp,