diff --git a/modules/util/util.py b/modules/util/util.py index 24e7c7fca5e094e1d7369298f23deaa87a1b0354..d09b17d4b08307987f8705d227137e64bd9155c8 100644 --- a/modules/util/util.py +++ b/modules/util/util.py @@ -659,8 +659,11 @@ def make_for_full_domain_predict(h5f, name_list=None, satellite='GOES16', domain return grd_dct, ll, cc -rho_water = 1. -rho_ice = 0.917 +# rho_water = 1. +# rho_ice = 0.917 + +rho_water = 1000000.0 # g m^-3 +rho_ice = 917000.0 # g m^-3 # real(kind=real4), parameter:: Rho_Water = 1.0 !g / m ^ 3 # real(kind=real4), parameter:: Rho_Ice = 0.917 !g / m ^ 3 @@ -694,6 +697,9 @@ def compute_lwc_iwc(iphase, reff, opd, geo_dz): ice = iphase == 1 no_ice = iphase != 1 + # compute ice/liquid water path, g m-2 + reff *= 1.0e-06 # convert microns to meters + iwp_dcomp[ice] = 0.667 * opd[ice] * rho_ice * reff[ice] lwp_dcomp[no_ice] = 0.55 * opd[no_ice] * rho_water * reff[no_ice] @@ -743,9 +749,10 @@ def make_for_full_domain_predict_viirs_clavrx(h5f, name_list=None, res_fac=1, da if use_nl_comp: cld_phase = get_grid_values(h5f, 'cloud_phase', j_0, i_0, None, num_j=ylen, num_i=xlen) + cld_dz = get_grid_values(h5f, 'cld_geo_thick', j_0, i_0, None, num_j=ylen, num_i=xlen) reff = grd_dct['cld_reff_dcomp'] opd = grd_dct['cld_opd_dcomp'] - lwc_nlcomp, iwc_nlcomp = compute_lwc_iwc(cld_phase, reff, opd) + lwc_nlcomp, iwc_nlcomp = compute_lwc_iwc(cld_phase, reff, opd, cld_dz) grd_dct['iwc_dcomp'] = iwc_nlcomp grd_dct['lwc_dcomp'] = lwc_nlcomp