CCPP SciDoc for UFS-SRW v2.2.0  SRW v2.2.0
Common Community Physics Package Developed at DTC

◆ warm_rain()

subroutine gfdl_cloud_microphys_mod::warm_rain ( real, intent(in)  dt,
integer, intent(in)  ktop,
integer, intent(in)  kbot,
real, dimension (ktop:kbot), intent(in)  dp,
real, dimension (ktop:kbot), intent(in)  dz,
real, dimension (ktop:kbot), intent(inout)  tz,
real, dimension (ktop:kbot), intent(inout)  qv,
real, dimension (ktop:kbot), intent(inout)  ql,
real, dimension (ktop:kbot), intent(inout)  qr,
real, dimension (ktop:kbot), intent(inout)  qi,
real, dimension (ktop:kbot), intent(inout)  qs,
real, dimension (ktop:kbot), intent(inout)  qg,
real, dimension (ktop:kbot), intent(in)  den,
real, dimension (ktop:kbot), intent(in)  denfac,
real, dimension (ktop:kbot), intent(in)  ccn,
real, dimension (ktop:kbot), intent(in)  c_praut,
real, intent(in)  rh_rain,
real, dimension (ktop:kbot), intent(inout)  vtr,
real, intent(out)  r1,
real, dimension (ktop:kbot), intent(inout)  m1_rain,
real, dimension (ktop:kbot), intent(inout)  w1,
real, intent(in)  h_var 
)
private

GFDL Cloud warm_rain General Algorithm

  • Call check_column() to check if the water species is large enough to fall.
  • Calculate fall speed of rain.
  • Call revap_racc(), to calculate evaporation and accretion of rain for the first 1/2 time step.
  • Calculate mass flux induced by falling rain ( use_ppm =.false, call implicit_fall(): time-implicit monotonic fall scheme.)
  • Call sedi_heat() to calculate heat transportation during sedimentation.
  • Call revap_racc() to calculate evaporation and accretion of rain for the remaing 1/2 time step.
  • Auto-conversion (assuming linear subgrid vertical distribution of cloud water following Lin et al. (1994) [121].)
  • Call linear_prof() to calculate vertical subgrid variability of cloud water.
  • Revised continuous form: linearly decays (with subgrid dl) to zero at qc == ql + dl

References check_column(), implicit_fall(), lagrangian_fall_ppm(), linear_prof(), revap_racc(), and sedi_heat().

Referenced by mpdrv().

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