Common Community Physics Package (CCPP) Scientific Documentation  Version 2.0
GFDL MP Module

This is cloud microphysics package for GFDL global cloud resolving model. The algorithms are originally derived from Lin et al. (1983) [65]. most of the key elements have been simplified/improved. This code at this stage bears little to no similarity to the original Lin MP in zetac. therefore, it is best to be called GFDL microphysics (GFDL MP) . More...

Detailed Description

Author
Shian-Jiann Lin, Linjiong Zhou

The module contains the GFDL cloud microphysics (Chen and Lin (2013) [13] ). The module is paired with GFDL MP Fast Physics, which performs the "fast" processes.

The subroutine executes the full GFDL cloud microphysics.

Argument Table

local_name standard_name long_name units rank type kind intentoptional
levs vertical_dimension number of vertical levels count 0 integer in F
im horizontal_loop_extent horizontal loop extent count 0 integer in F
con_g gravitational_acceleration gravitational acceleration m s-2 0 real kind_phys in F
con_fvirt ratio_of_vapor_to_dry_air_gas_constants_minus_one rv/rd - 1 (rv = ideal gas constant for water vapor) none 0 real kind_phys in F
con_rd gas_constant_dry_air ideal gas constant for dry air J kg-1 K-1 0 real kind_phys in F
frland land_area_fraction land area fraction frac 1 real kind_phys in F
garea cell_area area of grid cell m2 1 real kind_phys in F
gq0 water_vapor_specific_humidity_updated_by_physics water vapor specific humidity updated by physics kg kg-1 2 real kind_phys inout F
gq0_ntcw cloud_condensed_water_mixing_ratio_updated_by_physics cloud condensed water mixing ratio updated by physics kg kg-1 2 real kind_phys inout F
gq0_ntrw rain_water_mixing_ratio_updated_by_physics moist mixing ratio of rain updated by physics kg kg-1 2 real kind_phys inout F
gq0_ntiw ice_water_mixing_ratio_updated_by_physics moist mixing ratio of cloud ice updated by physics kg kg-1 2 real kind_phys inout F
gq0_ntsw snow_water_mixing_ratio_updated_by_physics moist mixing ratio of snow updated by physics kg kg-1 2 real kind_phys inout F
gq0_ntgl graupel_mixing_ratio_updated_by_physics moist mixing ratio of graupel updated by physics kg kg-1 2 real kind_phys inout F
gq0_ntclamt cloud_fraction_updated_by_physics cloud fraction updated by physics frac 2 real kind_phys inout F
gt0 air_temperature_updated_by_physics air temperature updated by physics K 2 real kind_phys inout F
gu0 x_wind_updated_by_physics zonal wind updated by physics m s-1 2 real kind_phys inout F
gv0 y_wind_updated_by_physics meridional wind updated by physics m s-1 2 real kind_phys inout F
vvl omega layer mean vertical velocity Pa s-1 2 real kind_phys in F
prsl air_pressure mean layer pressure Pa 2 real kind_phys in F
phii geopotential_at_interface geopotential at model layer interfaces m2 s-2 2 real kind_phys in F
del air_pressure_difference_between_midlayers air pressure difference between mid-layers Pa 2 real kind_phys in F
rain0 lwe_thickness_of_explicit_rain_amount explicit rain on physics timestep m 1 real kind_phys out F
ice0 lwe_thickness_of_ice_amount ice fall on physics timestep m 1 real kind_phys out F
snow0 lwe_thickness_of_snow_amount snow fall on physics timestep m 1 real kind_phys out F
graupel0 lwe_thickness_of_graupel_amount graupel fall on physics timestep m 1 real kind_phys out F
prcp0 lwe_thickness_of_explicit_precipitation_amount explicit precipitation (rain, ice, snow, graupel) on physics timestep m 1 real kind_phys out F
sr ratio_of_snowfall_to_rainfall snow ratio: ratio of snow to total precipitation frac 1 real kind_phys out F
dtp time_step_for_physics physics timestep s 0 real kind_phys in F
hydrostatic flag_for_hydrostatic_solver flag indicating hydrostatic solver flag 0 logical in F
phys_hydrostatic flag_for_hydrostatic_heating_from_physics flag indicating hydrostatic heating from physics flag 0 logical in F
errmsg ccpp_error_message error message for error handling in CCPP none 0 character len=* out F
errflg ccpp_error_flag error flag for error handling in CCPP flag 0 integer out F

Functions/Subroutines

subroutine, public gfdl_cloud_microphys::gfdl_cloud_microphys_run ( levs, im, con_g, con_fvirt, con_rd, frland, garea, gq0, gq0_ntcw, gq0_ntrw, gq0_ntiw, gq0_ntsw, gq0_ntgl, gq0_ntclamt, gt0, gu0, gv0, vvl, prsl, phii, del, rain0, ice0, snow0, graupel0, prcp0, sr, dtp, hydrostatic, phys_hydrostatic, errmsg, errflg)
 
subroutine gfdl_cloud_microphys::gfdl_cloud_microphys_work (iis, iie, jjs, jje, kks, kke, ktop, kbot, qv, ql, qr, qi, qs, qg, qa, qn, qv_dt, ql_dt, qr_dt, qi_dt, qs_dt, qg_dt, qa_dt, pt_dt, pt, w, uin, vin, udt, vdt, dz, delp, area, dt_in, land, rain, snow, ice, graupel, hydrostatic, phys_hydrostatic)
 
subroutine gfdl_cloud_microphys::mpdrv (hydrostatic, uin, vin, w, delp, pt, qv, ql, qr, qi, qs, qg, qa, qn, dz, is, ie, js, je, ks, ke, ktop, kbot, j, dt_in, ntimes, rain, snow, graupel, ice, m2_rain, m2_sol, cond, area1, land, u_dt, v_dt, pt_dt, qv_dt, ql_dt, qr_dt, qi_dt, qs_dt, qg_dt, qa_dt, w_var, vt_r, vt_s, vt_g, vt_i, qn2)
 GFDL cloud microphysics, major program, and is based on Lin et al.(1983) [65] and Rutledge and Hobbs (1984) [92]. More...
 
subroutine gfdl_cloud_microphys::sedi_heat (ktop, kbot, dm, m1, dz, tz, qv, ql, qr, qi, qs, qg, cw)
 This subroutine calculates sedimentation of heat. More...
 
subroutine gfdl_cloud_microphys::warm_rain (dt, ktop, kbot, dp, dz, tz, qv, ql, qr, qi, qs, qg, den, denfac, ccn, c_praut, rh_rain, vtr, r1, m1_rain, w1, h_var)
 This subroutine includes warm rain cloud microphysics. More...
 
subroutine gfdl_cloud_microphys::revap_racc (ktop, kbot, dt, tz, qv, ql, qr, qi, qs, qg, den, denfac, rh_rain, h_var)
 This subroutine calculates evaporation of rain and accretion of rain. More...
 
subroutine gfdl_cloud_microphys::linear_prof (km, q, dm, z_var, h_var)
 Definition of vertical subgrid variability used for cloud ice and cloud water autoconversion. More...
 
subroutine gfdl_cloud_microphys::icloud (ktop, kbot, tzk, p1, qvk, qlk, qrk, qik, qsk, qgk, dp1, den, denfac, vts, vtg, vtr, qak, rh_adj, rh_rain, dts, h_var)
 This subroutine includes cloud ice microphysics processes. More...
 
subroutine gfdl_cloud_microphys::subgrid_z_proc (ktop, kbot, p1, den, denfac, dts, rh_adj, tz, qv, ql, qr, qi, qs, qg, qa, h_var, rh_rain)
 This subroutine calculates temperature sentive high vertical resolution processes. More...
 
subroutine gfdl_cloud_microphys::revap_rac1 (hydrostatic, is, ie, dt, tz, qv, ql, qr, qi, qs, qg, den, hvar)
 This subroutine calculates rain evaporation. More...
 
subroutine gfdl_cloud_microphys::terminal_fall (dtm, ktop, kbot, tz, qv, ql, qr, qg, qs, qi, dz, dp, den, vtg, vts, vti, r1, g1, s1, i1, m1_sol, w1)
 The subroutine 'terminal_fall' computes terminal fall speed. More...
 
subroutine gfdl_cloud_microphys::check_column (ktop, kbot, q, no_fall)
 The subroutine 'check_column' checks if the water species is large enough to fall. More...
 
subroutine gfdl_cloud_microphys::implicit_fall (dt, ktop, kbot, ze, vt, dp, q, precip, m1)
 The subroutine computes the time-implicit monotonic fall scheme. More...
 
subroutine gfdl_cloud_microphys::lagrangian_fall_ppm (ktop, kbot, zs, ze, zt, dp, q, precip, m1, mono)
 Lagrangian scheme. More...
 
subroutine gfdl_cloud_microphys::cs_profile (a4, del, km, do_mono)
 GFDL cloud microphysics, major program, and is based on Lin et al.(1983) [65] and Rutledge and Hobbs (1984) [92]. More...
 
subroutine gfdl_cloud_microphys::cs_limiters (km, a4)
 This subroutine perform positive definite constraint. More...
 
subroutine gfdl_cloud_microphys::fall_speed (ktop, kbot, den, qs, qi, qg, ql, tk, vts, vti, vtg)
 The subroutine calculates vertical fall speed of snow/ice/graupel. More...
 
subroutine gfdl_cloud_microphys::setupm
 The subroutine sets up gfdl cloud microphysics parameters. More...
 
real function gfdl_cloud_microphys::acr3d (v1, v2, q1, q2, c, cac, rho)
 The function is an accretion function (Lin et al.(1983) [65] ) More...
 
real function gfdl_cloud_microphys::smlt (tc, dqs, qsrho, psacw, psacr, c, rho, rhofac)
 Melting of snow function (Lin et al.(1983) [65]) note: psacw and psacr must be calc before smlt is called. More...
 
real function gfdl_cloud_microphys::gmlt (tc, dqs, qgrho, pgacw, pgacr, c, rho)
 Melting of graupel function (Eq.(47) in Lin et al. 1983 [65])
note: \(P_{gacw}\) and \(P_{gacr}\) must be calculated before gmlt is called. More...
 
subroutine gfdl_cloud_microphys::qsmith_setup
 The subroutine 'qsmith_init' initializes lookup tables for saturation water vapor pressure for the following utility routines that are designed to return qs consistent with the assumptions in FV3. More...
 
real function gfdl_cloud_microphys::wqs1 (ta, den)
 The function 'wqs1' returns the saturation vapor pressure over pure liquid water for a given temperature and air density. More...
 
real function gfdl_cloud_microphys::wqs2 (ta, den, dqdt)
 The function 'wqs2' returns the saturation vapor pressure over pure liquid water for a given temperature and air density, as well as the analytic dqs/dT: rate of change of saturation vapor pressure WRT temperature. More...
 
real function gfdl_cloud_microphys::wet_bulb (q, t, den)
 The function 'wet_bulb' uses 'wqs2' to compute the wet-bulb temperature from the mixing ratio and the temperature. More...
 
real function gfdl_cloud_microphys::iqs1 (ta, den)
 The function 'iqs1' computes the saturated specific humidity for table iii. More...
 
real function gfdl_cloud_microphys::iqs2 (ta, den, dqdt)
 The function 'iqs2' computes the gradient of saturated specific humidity for table iii. More...
 
real function gfdl_cloud_microphys::qs1d_moist (ta, qv, pa, dqdt)
 The function 'qs1d_moist' computes the gradient of saturated specific humidity for table iii. More...
 
real function gfdl_cloud_microphys::wqsat2_moist (ta, qv, pa, dqdt)
 The function 'wqsat2_moist' computes the saturated specific humidity for pure liquid water , as well as des/dT. More...
 
real function gfdl_cloud_microphys::wqsat_moist (ta, qv, pa)
 The function 'wqsat_moist' computes the saturated specific humidity for pure liquid water. More...
 
real function gfdl_cloud_microphys::qs1d_m (ta, qv, pa)
 The function 'qs1d_m' computes the saturated specific humidity for table iii. More...
 
real function gfdl_cloud_microphys::d_sat (ta, den)
 The function 'd_sat' computes the difference in saturation vapor * density * between water and ice. More...
 
real function gfdl_cloud_microphys::esw_table (ta)
 The function 'esw_table' computes the saturated water vapor pressure for table ii. More...
 
real function gfdl_cloud_microphys::es2_table (ta)
 The function 'es2_table' computes the saturated water vapor pressure for table iii. More...
 
subroutine gfdl_cloud_microphys::esw_table1d (ta, es, n)
 The subroutine 'esw_table1d' computes the saturated water vapor pressure for table ii. More...
 
subroutine gfdl_cloud_microphys::es2_table1d (ta, es, n)
 The subroutine 'es3_table1d' computes the saturated water vapor pressure for table iii. More...
 
subroutine gfdl_cloud_microphys::es3_table1d (ta, es, n)
 The subroutine 'es3_table1d' computes the saturated water vapor pressure for table iv. More...
 
subroutine gfdl_cloud_microphys::qs_tablew (n)
 saturation water vapor pressure table ii More...
 
subroutine gfdl_cloud_microphys::qs_table2 (n)
 saturation water vapor pressure table iii More...
 
subroutine gfdl_cloud_microphys::qs_table3 (n)
 saturation water vapor pressure table iv More...
 
real function gfdl_cloud_microphys::qs_blend (t, p, q)
 The function 'qs_blend' computes the saturated specific humidity with a blend of water and ice depending on the temperature. More...
 
subroutine gfdl_cloud_microphys::qs_table (n)
 saturation water vapor pressure table i More...
 
subroutine gfdl_cloud_microphys::qsmith (im, km, ks, t, p, q, qs, dqdt)
 The function 'qsmith' computes the saturated specific humidity with a blend of water and ice depending on the temperature in 3D. More...
 
subroutine gfdl_cloud_microphys::neg_adj (ktop, kbot, pt, dp, qv, ql, qr, qi, qs, qg)
 The subroutine 'neg_adj' fixes negative water species. More...
 
subroutine gfdl_cloud_microphys::interpolate_z (is, ie, js, je, km, zl, hgt, a3, a2)
 quick local sum algorithm More...
 
subroutine gfdl_cloud_microphys::cloud_diagnosis (is, ie, js, je, den, qw, qi, qr, qs, qg, t, qcw, qci, qcr, qcs, qcg, rew, rei, rer, res, reg)
 The subroutine 'cloud_diagnosis' diagnoses the radius of cloud species. More...