CCPP Scientific Documentation
v5.0.0
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) [108].)
    • 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 c_liq, check_column(), const_vr, do_sedi_heat, do_sedi_w, dt_fr, dz_min, fac_rc, implicit_fall(), irain_f, lagrangian_fall_ppm(), linear_prof(), mono_prof, revap_racc(), sedi_heat(), sfcrho, t_wfr, use_ccn, use_ppm, vf_min, vr_fac, vr_max, vr_min, and z_slope_liq.

Referenced by mpdrv().

Here is the call graph for this function: