From fd01766e4c7a3e20c5ba2552ae056ec01591d003 Mon Sep 17 00:00:00 2001 From: "Ming.Hu" Date: Tue, 1 Dec 2020 22:49:36 +0000 Subject: [PATCH 01/46] Turn on GSD cloud ceiling calculation for RRFS dev. --- parm/fv3sar.xml | 4 ++-- parm/fv3sar_post_avblflds.xml | 4 ++-- parm/postxconfig-NT-fv3sar.txt | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/parm/fv3sar.xml b/parm/fv3sar.xml index 1e6b7485b..06fd25649 100755 --- a/parm/fv3sar.xml +++ b/parm/fv3sar.xml @@ -1555,9 +1555,9 @@ - HGT_ON_CLOUD_CEILING + GSD_HGT_ON_CLOUD_CEILING HGT - 6.0 + -3.0 diff --git a/parm/fv3sar_post_avblflds.xml b/parm/fv3sar_post_avblflds.xml index 4f9b7b4ab..4acd643dd 100644 --- a/parm/fv3sar_post_avblflds.xml +++ b/parm/fv3sar_post_avblflds.xml @@ -3545,10 +3545,10 @@ 408 - GSD_HGT_ON_CLOUD_BASE + GSD_HGT_ON_CLOUD_CEILING GSD_geopotential height on cloud base HGT - cloud_base + cloud_ceilng 6.0 diff --git a/parm/postxconfig-NT-fv3sar.txt b/parm/postxconfig-NT-fv3sar.txt index b24e12640..7e8b98a88 100644 --- a/parm/postxconfig-NT-fv3sar.txt +++ b/parm/postxconfig-NT-fv3sar.txt @@ -8157,9 +8157,9 @@ hghst_top_lvl_of_supercooled_liq_water_lyr ? ? ? -260 -HGT_ON_CLOUD_CEILING -? +408 +GSD_HGT_ON_CLOUD_CEILING +GSD_geopotential height on cloud base 1 tmpl4_0 HGT @@ -8187,7 +8187,7 @@ cloud_ceilng 0 0.0 1 -6.0 +-3.0 0 0 0 From accb2124009786dd50e260a42b14d3b2ff1fcac4 Mon Sep 17 00:00:00 2001 From: Jaymes Kenyon Date: Fri, 19 Mar 2021 14:19:47 -0600 Subject: [PATCH 02/46] Updates to UPP for RRFS applications (#3) * Updates to UPP for RRFS applications: 1) Adding a RRFS-specific .xml control file and a corresponding .txt flat file. Note that script changes (pending) are needed to leverage the new flat file. However, this code will work in current real-time configurations. 2) Adding GSL experimental ceiling diagnostics, GSL visibility diagnostic, and GSL sea-level pressure reduction (MAPS). Also adding TKE and aerosol number concentrations. 3) Code clean-up for ceiling-related diagnostics; added comments, etc. 4) Removing several non-needed variables, originally inherited from FV3-SAR community configuration. --- parm/fv3lam_post_avblflds.xml | 39 +- parm/fv3lam_rrfs.xml | 3356 +++++ parm/postxconfig-NT-fv3lam_rrfs.txt | 17647 ++++++++++++++++++++++++++ sorc/ncep_post.fd/CLDRAD.f | 43 +- sorc/ncep_post.fd/INITPOST_NETCDF.f | 29 +- 5 files changed, 21078 insertions(+), 36 deletions(-) create mode 100755 parm/fv3lam_rrfs.xml create mode 100644 parm/postxconfig-NT-fv3lam_rrfs.txt diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index 4acd643dd..a8b2879c1 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -3563,10 +3563,10 @@ 410 - GSD_VIS_ON_CLOUD_TOP - GSD_visibility on cloud top + GSD_VIS_ON_SURFACE + GSD_visibility on surface VIS - cloud_top + surface 6.0 @@ -4171,9 +4171,9 @@ 487 - GSD_PRES_ON_CLOUD_BASE - PRES - cloud_base + GSD_EXP_CEILING + CEIL + ceiling 3.0 @@ -5264,6 +5264,14 @@ 3.0 + + 711 + GSD_EXP_CEILING_2 + CEIL + cloud_base + 3.0 + + 727 GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km @@ -5387,6 +5395,25 @@ 4.0 + + 766 + GSD_NCWFA_ON_HYBRID_LVL + PMTF + NCEP + hybrid_lvl + 3.0 + + + + 767 + GSD_NCIFA_ON_HYBRID_LVL + PMTC + NCEP + hybrid_lvl + 3.0 + + + 768 GSD_ECHOTOP_ON_CLOUD_TOP diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml new file mode 100755 index 000000000..34881951e --- /dev/null +++ b/parm/fv3lam_rrfs.xml @@ -0,0 +1,3356 @@ + + + + + BGDAWP + 32769 + ncep_nco + v2003 + local_tab_yes1 + fcst + oper + fcst + fcst + hour + nws_ncep + meso_nam12km + complex_packing_spatial_diff + 2nd_ord_sptdiff + fltng_pnt + lossless + + + PRES_ON_HYBRID_LVL + PRES + 1. 2. + 6.0 + + + + HGT_ON_HYBRID_LVL + HGT + 1. 2. + 4.0 + + + + TMP_ON_HYBRID_LVL + TMP + 1. 2. + 4.0 + + + + POT_ON_HYBRID_LVL + POT + 1. 2. + 4.0 + + + + DPT_ON_HYBRID_LVL + DPT + 1. 2. + 5.0 + + + + SPFH_ON_HYBRID_LVL + SPFH + 1. + 7.0 + + + + RH_ON_HYBRID_LVL + RH + 1. + 4.0 + + + + UGRD_ON_HYBRID_LVL + UGRD + 1. 2. + 4.0 + + + + VGRD_ON_HYBRID_LVL + VGRD + 1. 2. + 4.0 + + + + VVEL_ON_HYBRID_LVL + VVEL + 1. + 5.0 + + + + DZDT_ON_HYBRID_LVL + DZDT + 1. + -5.0 + + + + TKE_ON_HYBRID_LVL + TKE + 1. 2. + 3.0 + + + + RWMR_ON_HYBRID_LVL + RWMR + 1. 2. + 3.0 + + + + SNMR_ON_HYBRID_LVL + SNMR + 1. 2. + 3.0 + + + + RIME_ON_HYBRID_LVL + RIME + NCEP + 1. 2. + 3.0 + + + + TCOND_ON_HYBRID_LVL + TCOND + NCEP + 1. 2. + 3.0 + + + + REFD_ON_HYBRID_LVL + REFD + NCEP + 1. 2. + 4.0 + + + + BMIXL_ON_HYBRID_LVL + BMIXL + NCEP + 1. + 3.0 + + + + HGT_ON_ISOBARIC_SFC + HGT + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 6.0 + + + + TMP_ON_ISOBARIC_SFC + TMP + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + DPT_ON_ISOBARIC_SFC + DPT + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 5.0 + + + + SPFH_ON_ISOBARIC_SFC + SPFH + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + RH_ON_ISOBARIC_SFC + RH + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 2.0 + + + + UGRD_ON_ISOBARIC_SFC + UGRD + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + VGRD_ON_ISOBARIC_SFC + VGRD + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + VVEL_ON_ISOBARIC_SFC + VVEL + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 5.0 + + + + DZDT_ON_ISOBARIC_SFC + DZDT + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + -5.0 + + + + ABSV_ON_ISOBARIC_SFC + ABSV + 20000. 25000. 30000. 40000. 50000. 70000. 75000. 85000. 92500. 100000. + 4.0 + + + + STRM_ON_ISOBARIC_SFC + STRM + 25000. 50000. + 3.0 + + + + ICMR_ON_ISOBARIC_SFC + ICMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 6.0 + + + + CLWMR_ON_ISOBARIC_SFC + CLWMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + RWMR_ON_ISOBARIC_SFC + RWMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + GRLE_ON_ISOBARIC_SFC + GRLE + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + SNMR_ON_ISOBARIC_SFC + SNMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + MSLET_ON_MEAN_SEA_LVL + MSLET + NCEP + 6.0 + + + + MAPS_PRMSL_ON_MEAN_SEA_LVL + PRMSL + 6.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMP + 4.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + SPFH + 4.0 + + + + DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + DPT + 4.0 + + + + RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + RH + 3.0 + + + + UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + UGRD + 10. + 4.0 + + + + VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + VGRD + 10. + 4.0 + + + + GUST_ON_SURFACE + GUST + 3.0 + + + + PLPL_ON_SPEC_PRES_ABOVE_GRND + PLPL + NCEP + 25500. + 0. + 6.0 + + + + POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + POT + 10. + 5.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + SPFH + 10. + 3.0 + + + + PRES_ON_SURFACE + PRES + 6.0 + + + + HGT_ON_SURFACE + HGT + 6.0 + + + + POT_ON_SURFACE + POT + 5.0 + + + + SPFH_ON_SURFACE + SPFH + 3.0 + + + + TMP_ON_SURFACE + TMP + 4.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC_3m + TSOIL + 3. + 3.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC + TSOIL + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 4.0 + + + + SOILW_ON_DEPTH_BEL_LAND_SFC + SOILW + NCEP + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 3.0 + + + + SOILL_ON_DEPTH_BEL_LAND_SFC + SOILL + NCEP + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 3.0 + + + + SOILM_ON_DEPTH_BEL_LAND_SFC + SOILM + 2 + 0. + 2 + 200. + 3.0 + + + + CNWAT_ON_SURFACE + CNWAT + NCEP + 1.0 + + + + WEASD_ON_SURFACE + WEASD + 4.0 + + + + SNOWC_ON_SURFACE + SNOWC + NCEP + 3.0 + + + + SFEXC_ON_SURFACE + SFEXC + NCEP + 3.0 + + + + VEG_ON_SURFACE + VEG + 3.0 + + + + VGTYP_ON_SURFACE + VGTYP + NCEP + 3.0 + + + + SOTYP_ON_SURFACE + SOTYP + 3.0 + + + + SNFALB_ON_SURFACE + SNFALB + NCEP + 3.0 + + + + MXSALB_ON_SURFACE + MXSALB + NCEP + 3.0 + + + + CCOND_ON_SURFACE + CCOND + NCEP + 3.0 + + + + RCS_ON_SURFACE + RCS + NCEP + 3.0 + + + + RCT_ON_SURFACE + RCT + NCEP + 5.0 + + + + RCQ_ON_SURFACE + RCQ + NCEP + 3.0 + + + + RCSOL_ON_SURFACE + RCSOL + NCEP + 3.0 + + + + SMREF_ON_SURFACE + SMREF + NCEP + 3.0 + + + + POROS_ON_SURFACE + POROS + NCEP + 3.0 + + + + RLYRS_ON_SURFACE + RLYRS + NCEP + 3.0 + + + + RSMIN_ON_SURFACE + RSMIN + NCEP + 3.0 + + + + SNOD_ON_SURFACE + SNOD + 6.0 + + + + SMDRY_ON_SURFACE + SMDRY + NCEP + 3.0 + + + + WILT_ON_SURFACE + WILT + NCEP + 3.0 + + + + MSTAV_ON_DEPTH_BEL_LAND_SFC + MSTAV + NCEP + 2 + 0. + 2 + 100. + 3.0 + + + + INST_GFLUX_ON_SURFACE + GFLUX + NCEP + 3.0 + + + + LFTX_ON_ISOBARIC_SFC_500-1000hpa + LFTX + NCEP + 50000. + 100000. + 3.0 + + + + 4LFTX_ON_SPEC_PRES_ABOVE_GRND + 4LFTX + NCEP + 18000. + 0. + 3.0 + + + + PLI_ON_SPEC_PRES_ABOVE_GRND + PLI + 3000. + 0. + 3.0 + + + + CAPE_ON_SURFACE + CAPE + 4.0 + + + + BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 9000. + 0. + 4.0 + + + + UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 25500. + 0. + 4.0 + + + + CIN_ON_SURFACE + CIN + 4.0 + + + + BEST_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 9000. + 0. + 4.0 + + + + UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 25500. + 0. + 4.0 + + + + PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR + PWAT + 3.0 + + + + HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND + HLCY + 3000. 1000. + 4.0 + + + + USTM_ON_SPEC_HGT_LVL_ABOVE_GRND + USTM + NCEP + 6000. + 4.0 + + + + VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND + VSTM + NCEP + 6000. + 4.0 + + + + ACM_APCP_ON_SURFACE + APCP + -4.0 + + + + ACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + CACM_APCP_ON_SURFACE + APCP + -4.0 + + + + CACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + ACM_WEASD_ON_SURFACE + WEASD + 4.0 + + + + ACM_SNOM_ON_SURFACE + SNOM + 4.0 + + + + ACM_SSRUN_ON_SURFACE + SSRUN + NCEP + 6.0 + + + + ACM_BGRUN_ON_SURFACE + BGRUN + NCEP + 6.0 + + + + ACM_WATR_ON_SURFACE + WATR + 6.0 + + + + INST_CRAIN_ON_SURFACE + CRAIN + NCEP + 1.0 + + + + CSNOW_ON_SURFACE + CSNOW + NCEP + 1.0 + + + + CICEP_ON_SURFACE + CICEP + NCEP + 1.0 + + + + CFRZR_ON_SURFACE + CFRZR + NCEP + 1.0 + + + + INST_PRATE_ON_SURFACE + PRATE + 3.0 + + + + CPOFP_ON_SURFACE + CPOFP + NCEP + 4.0 + + + + CLWMR_ON_HYBRID_LVL + CLWMR + 1. 2. + 3.0 + + + + ICMR_ON_HYBRID_LVL + ICMR + 1. 2. + 3.0 + + + + GRLE_ON_HYBRID_LVL + GRLE + 1. 2. + 3.0 + + + + TCDC_ON_HYBRID_LVL + TCDC + 1. 2. + 3.0 + + + + LCDC_ON_LOW_CLOUD_LYR + LCDC + 3.0 + + + + MCDC_ON_MID_CLOUD_LYR + MCDC + 3.0 + + + + HCDC_ON_HIGH_CLOUD_LYR + HCDC + 3.0 + + + + INST_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_CDLYR_ON_ENTIRE_ATMOS + CDLYR + NCEP + 3.0 + + + + GSD_VIS_ON_SURFACE + VIS + 6.0 + + + + HGT_ON_LVL_OF_ADIAB_COND_FROM_SFC + HGT + 5.0 + + + + PRES_ON_LVL_OF_ADIAB_COND_FROM_SFC + PRES + 6.0 + + + + INST_USWRF_ON_SURFACE + USWRF + NCEP + 4.0 + + + + INST_ULWRF_ON_SURFACE + ULWRF + NCEP + 4.0 + + + + AVE_DSWRF_ON_SURFACE + DSWRF + NCEP + 3.0 + + + + AVE_DLWRF_ON_SURFACE + DLWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_SURFACE + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_SURFACE + ULWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_TOP_OF_ATMOS + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_TOP_OF_ATMOS + ULWRF + NCEP + 3.0 + + + + INST_ULWRF_ON_TOP_OF_ATMOS + ULWRF + NCEP + 4.0 + + + + BRTMP_ON_TOP_OF_ATMOS + BRTMP + 3.0 + + + + INST_DSWRF_ON_SURFACE + DSWRF + NCEP + 4.0 + + + + INST_DLWRF_ON_SURFACE + DLWRF + NCEP + 4.0 + + + + INST_CSDSF_ON_SURFACE + CSDSF + NCEP + 4.0 + + + + SFCR_ON_SURFACE + SFCR + 2.7 + + + + FRICV_ON_SURFACE + FRICV + NCEP + 4.0 + + + + CD_ON_SURFACE + CD + NCEP + 3.0 + + + + UFLX_ON_SURFACE + UFLX + 3.0 + + + + VFLX_ON_SURFACE + VFLX + 3.0 + + + + AVE_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + AVE_GFLUX_ON_SURFACE + GFLUX + NCEP + 4.0 + + + + AVE_SNOHF_ON_SURFACE + SNOHF + NCEP + 4.0 + + + + AVE_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + ACM_EVP_ON_SURFACE + EVP + 4.0 + + + + ACM_PEVAP_ON_SURFACE + PEVAP + NCEP + 4.0 + + + + INST_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + INST_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + NLAT_ON_SURFACE + NLAT + NCEP + 4.0 + + + + ELON_ON_SURFACE + ELON + NCEP + 4.0 + + + + LAND_ON_SURFACE + LAND + 1.0 + + + + ICEC_ON_SURFACE + ICEC + 3.0 + + + + ALBDO_ON_SURFACE + ALBDO + 3.0 + + + + WTMP_ON_SURFACE + WTMP + 5.0 + + + + PRES_ON_TROPOPAUSE + PRES + 6.0 + + + + HGT_ON_TROPOPAUSE + HGT + 6.0 + + + + TMP_ON_TROPOPAUSE + TMP + 3.0 + + + + POT_ON_TROPOPAUSE + POT + 5.0 + + + + UGRD_ON_TROPOPAUSE + UGRD + 4.0 + + + + VGRD_ON_TROPOPAUSE + VGRD + 4.0 + + + + VWSH_ON_TROPOPAUSE + VWSH + NCEP + 3.0 + + + + VUCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km + VUCSH + 3.0 + + + + VVCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km + VVCSH + 3.0 + + + + TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + TMP + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 3.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + TMP + 30. 50. 80. 100. + 3.0 + + + + UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + UGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + UGRD + 30. 50. 80. 100. + 4.0 + + + + VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + VGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + VGRD + 30. 50. 80. 100. + 4.0 + + + + SPFH_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + SPFH + 305. + 5.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + SPFH + 30. 50. 80. 100. + 5.0 + + + + PRES_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + PRES + 30. 50. 80. 100. + 3.0 + + + + HGT_ON_0C_ISOTHERM + HGT + 6.0 + + + + RH_ON_0C_ISOTHERM + RH + 2.0 + + + + HGT_ON_HGHST_TROP_FRZ_LVL + HGT + 6.0 + + + + HGT_ON_LWST_LVL_OF_WET_BULB_ZERO + HGT + -5.0 + + + + PRES_ON_SPEC_PRES_ABOVE_GRND + PRES + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 6.0 + + + + TMP_ON_SPEC_PRES_ABOVE_GRND + TMP + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 3.0 + + + + POT_ON_SPEC_PRES_ABOVE_GRND + POT + 3000. + 0. + 4.0 + + + + DPT_ON_SPEC_PRES_ABOVE_GRND + DPT + 3000. + 0. + 3.0 + + + + SPFH_ON_SPEC_PRES_ABOVE_GRND + SPFH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 5.0 + + + + RH_ON_SPEC_PRES_ABOVE_GRND + RH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 2.0 + + + + PWAT_ON_SPEC_PRES_ABOVE_GRND + PWAT + 3000. + 0. + 3.0 + + + + UGRD_ON_SPEC_PRES_ABOVE_GRND + UGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + VGRD_ON_SPEC_PRES_ABOVE_GRND + VGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + VVEL_ON_SPEC_PRES_ABOVE_GRND + VVEL + 3000. 9000. 18000. + 0. 6000. 15000. + 5.0 + + + + PRES_ON_CLOUD_BASE + PRES + 6.0 + + + + PRES_ON_CLOUD_TOP + PRES + 6.0 + + + + TMP_ON_CLOUD_TOP + TMP + 5.0 + + + + HGT_ON_CLOUD_BASE + HGT + 6.0 + + + + HGT_ON_CLOUD_TOP + HGT + 6.0 + + + + TMP_ON_CLOUD_TOP + TMP + 5.0 + + + + PRES_ON_MAX_WIND + PRES + 6.0 + + + + HGT_ON_MAX_WIND + HGT + 6.0 + + + + UGRD_ON_MAX_WIND + UGRD + 4.0 + + + + VGRD_ON_MAX_WIND + VGRD + 4.0 + + + + REFC_ON_ENTIRE_ATMOS + REFC + NCEP + 4.0 + + + + REFZR_ON_ENTIRE_ATMOS + REFZR + NCEP + -4.0 + + + + REFZI_ON_ENTIRE_ATMOS + REFZI + NCEP + -4.0 + + + + REFD_ON_SPEC_HGT_LVL_ABOVE_GRND + REFD + NCEP + 4000. 1000. + 4.0 + + + + REFZR_ON_SPEC_HGT_LVL_ABOVE_GRND + REFZR + NCEP + 4000. 1000. + -4.0 + + + + REFZI_ON_SPEC_HGT_LVL_ABOVE_GRND + REFZI + NCEP + 4000. 1000. + -4.0 + + + + HPBL_ON_SURFACE + HPBL + NCEP + 6.0 + + + + PRES_ON_GRID_SCALE_CLOUD_BOT_LVL + PRES + 6.0 + + + + PRES_ON_GRID_SCALE_CLOUD_TOP_LVL + PRES + 6.0 + + + + TCOLW_ON_ENTIRE_ATMOS + TCOLW + NCEP + 5.0 + + + + TCOLI_ON_ENTIRE_ATMOS + TCOLI + NCEP + 5.0 + + + + TCOLR_ON_ENTIRE_ATMOS + TCOLR + NCEP + 5.0 + + + + TCOLS_ON_ENTIRE_ATMOS + TCOLS + NCEP + 5.0 + + + + TCOLC_ON_ENTIRE_ATMOS + TCOLC + NCEP + 5.0 + + + + TCOLG_ON_ENTIRE_ATMOS + TCOLG + 5.0 + + + + TCLSW_ON_ENTIRE_ATMOS + TCLSW + NCEP + 5.0 + + + + TCOLM_ON_ENTIRE_ATMOS + TCOLM + NCEP + 5.0 + + + + HGT_ON_LWST_BOT_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR + HGT + 6.0 + + + + HGT_ON_HGHST_TOP_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR + HGT + 5.0 + + + + GSD_HGT_ON_CLOUD_CEILING + HGT + -3.0 + + + + GSD_EXP_CEILING + CEIL + -3.0 + + + + GSD_EXP_CEILING_2 + CEIL + -3.0 + + + + ACM_LSPA_ON_SURFACE + LSPA + NCEP + 3.0 + + + + PRES_ON_TOP_OF_ATMOS + PRES + 3.0 + + + + SWHR_ON_ENTIRE_ATMOS + SWHR + NCEP + 5.0 + + + + LWHR_ON_ENTIRE_ATMOS + LWHR + NCEP + 5.0 + + + + AVE_LRGHR_ON_ENTIRE_ATMOS + LRGHR + NCEP + 5.0 + + + + TMP_ON_SIGMA_LVL_HPC + TMP + 4 + 9000. 8500. 8000. 7500. 7000. + -4.0 + + + + PBLREG_ON_SURFACE + PBLREG + 2.0 + + + + UGRD_ON_PLANETARY_BOUND_LYR + UGRD + -4.0 + + + + VGRD_ON_PLANETARY_BOUND_LYR + VGRD + -4.0 + + + + HGT_ON_PLANETARY_BOUND_LYR + HGT + -4.0 + + + + MIXHT_ON_SURFACE + MIXHT + -4.0 + + + + RETOP_ON_ENTIRE_ATMOS_SINGLE_LYR + RETOP + NCEP + 6.0 + + + + VRATE_ON_PLANETARY_BOUND_LYR + VRATE + NCEP + 3.0 + + + + HINDEX_ON_SURFACE + HINDEX + 3.0 + + + + MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMAX + 4.0 + + + + MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMIN + 4.0 + + + + MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MAXRH + -2.0 + + + + MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MINRH + NCEP + -2.0 + + + + MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXUW + NCEP + 10. + -4.0 + + + + MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXVW + NCEP + 10. + -4.0 + + + + MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + WIND + -4.0 + + + + MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km + MAXREF + NCEP + -3.0 + + + + MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + MAXUVV + NCEP + -3.0 + + + + MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + MAXDVV + NCEP + -3.0 + + + + MAX_PRATE_ON_SURFACE + PRATE + 4.0 + + + + MAX_SRWEQ_ON_SURFACE + SRWEQ + 4.0 + + + + LTNG_ON_SURFACE + LTNG + NCEP + 1.0 + + + + VIL_ON_ENTIRE_ATMOS + VIL + 4.0 + + + + UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + UPHL + NCEP + -3.0 + + + + MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MXUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MNUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MNUPHL + NCEP + -3.0 + + + + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MXUPHL + NCEP + -3.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + 5.0 + + + + MAX_REF_ON_ISOTHERMAL_-10C + MAXREF + NCEP + -3.0 + + + + REFD_ON_ISOTHERMAL + REFD + NCEP + isothermal + 263. + -4.0 + + + + + + BGRD3D + 32769 + ncep_nco + v2003 + local_tab_yes1 + fcst + oper + fcst + fcst + hour + nws_ncep + nmm_8km + complex_packing_spatial_diff + 2nd_ord_sptdiff + fltng_pnt + lossless + + + HGT_ON_ISOBARIC_SFC + HGT + 25000. 50000. 70000. 85000. + 6.0 + + + + TMP_ON_ISOBARIC_SFC + TMP + 25000. 50000. 70000. 85000. 95000. + 3.0 + + + + RH_ON_ISOBARIC_SFC + RH + 25000. 50000. 70000. 85000. + 2.0 + + + + UGRD_ON_ISOBARIC_SFC + UGRD + 25000. 50000. 70000. 85000. + 4.0 + + + + VGRD_ON_ISOBARIC_SFC + VGRD + 25000. 50000. 70000. 85000. + 4.0 + + + + VVEL_ON_ISOBARIC_SFC + VVEL + 25000. 50000. 70000. 85000. + 5.0 + + + + SPFH_ON_ISOBARIC_SFC + SPFH + 25000. 50000. 70000. 85000. + 4.0 + + + + ABSV_ON_ISOBARIC_SFC + ABSV + 25000. 50000. 70000. 85000. + 4.0 + + + + PRES_ON_HYBRID_LVL + PRES + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 6.0 + + + + HGT_ON_HYBRID_LVL + HGT + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + TMP_ON_HYBRID_LVL + TMP + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + SPFH_ON_HYBRID_LVL + SPFH + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 7.0 + + + + UGRD_ON_HYBRID_LVL + UGRD + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + VGRD_ON_HYBRID_LVL + VGRD + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + VVEL_ON_HYBRID_LVL + VVEL + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 5.0 + + + + DZDT_ON_HYBRID_LVL + DZDT + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + -5.0 + + + + TKE_ON_HYBRID_LVL + TKE + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + MSLET_ON_MEAN_SEA_LVL + MSLET + NCEP + 6.0 + + + + MAPS_PRMSL_ON_MEAN_SEA_LVL + PRMSL + 6.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMP + 4.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + SPFH + 4.0 + + + + DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + DPT + 4.0 + + + + RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + RH + 3.0 + + + + UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + UGRD + 10. + 4.0 + + + + VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + VGRD + 10. + 4.0 + + + + POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + POT + 10. + 5.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + SPFH + 10. + 3.0 + + + + PRES_ON_SURFACE + PRES + 6.0 + + + + HGT_ON_SURFACE + HGT + 6.0 + + + + POT_ON_SURFACE + POT + 5.0 + + + + SPFH_ON_SURFACE + SPFH + 3.0 + + + + TMP_ON_SURFACE + TMP + 4.0 + + + + MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + MAXUVV + NCEP + -3.0 + + + + MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + MAXDVV + NCEP + -3.0 + + + + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MXUPHL + NCEP + -3.0 + + + + MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MXUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MNUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MNUPHL + NCEP + -3.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + 5.0 + + + + MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXUW + NCEP + 10. + -4.0 + + + + MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXVW + NCEP + 10. + -4.0 + + + + MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km + MAXREF + NCEP + -3.0 + + + + MAX_REF_ON_ISOTHERMAL_-10C + MAXREF + NCEP + -3.0 + + + + REFD_ON_ISOTHERMAL + REFD + NCEP + isothermal + 263. + -4.0 + + + + MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMAX + 4.0 + + + + MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMIN + 4.0 + + + + MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MAXRH + -2.0 + + + + MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MINRH + NCEP + -2.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC + TSOIL + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 4.0 + + + + SOILW_ON_DEPTH_BEL_LAND_SFC + SOILW + NCEP + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 3.0 + + + + SOILM_ON_DEPTH_BEL_LAND_SFC + SOILM + 2 + 0. + 2 + 200. + 3.0 + + + + SFEXC_ON_SURFACE + SFEXC + NCEP + 3.0 + + + + VEG_ON_SURFACE + VEG + 3.0 + + + + MSTAV_ON_DEPTH_BEL_LAND_SFC + MSTAV + NCEP + 2 + 0. + 2 + 100. + 3.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC_3m + TSOIL + 3. + 3.0 + + + + INST_GFLUX_ON_SURFACE + GFLUX + NCEP + 3.0 + + + + CNWAT_ON_SURFACE + CNWAT + NCEP + 1.0 + + + + WEASD_ON_SURFACE + WEASD + 4.0 + + + + 4LFTX_ON_SPEC_PRES_ABOVE_GRND + 4LFTX + NCEP + 18000. + 0. + 3.0 + + + + PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR + PWAT + 3.0 + + + + ACM_APCP_ON_SURFACE + APCP + -4.0 + + + + ACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + CACM_APCP_ON_SURFACE + APCP + -4.0 + + + + CACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + ACM_WEASD_ON_SURFACE + WEASD + 4.0 + + + + ACM_SNOM_ON_SURFACE + SNOM + 4.0 + + + + ACM_SSRUN_ON_SURFACE + SSRUN + NCEP + 4.0 + + + + ACM_BGRUN_ON_SURFACE + BGRUN + NCEP + 4.0 + + + + INST_CRAIN_ON_SURFACE + CRAIN + NCEP + 1.0 + + + + CSNOW_ON_SURFACE + CSNOW + NCEP + 1.0 + + + + CICEP_ON_SURFACE + CICEP + NCEP + 1.0 + + + + CFRZR_ON_SURFACE + CFRZR + NCEP + 1.0 + + + + INST_PRATE_ON_SURFACE + PRATE + 3.0 + + + + CPOFP_ON_SURFACE + CPOFP + NCEP + 4.0 + + + + CLWMR_ON_HYBRID_LVL + CLWMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + ICMR_ON_HYBRID_LVL + ICMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + GRLE_ON_HYBRID_LVL + GRLE + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + TCDC_ON_HYBRID_LVL + TCDC + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + RWMR_ON_HYBRID_LVL + RWMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + SNMR_ON_HYBRID_LVL + SNMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + GSD_NCWFA_ON_HYBRID_LVL + PMTF + NCEP + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + GSD_NCIFA_ON_HYBRID_LVL + PMTC + NCEP + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + LCDC_ON_LOW_CLOUD_LYR + LCDC + 3.0 + + + + MCDC_ON_MID_CLOUD_LYR + MCDC + 3.0 + + + + HCDC_ON_HIGH_CLOUD_LYR + HCDC + 3.0 + + + + INST_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_CDLYR_ON_ENTIRE_ATMOS + CDLYR + NCEP + 3.0 + + + + INST_USWRF_ON_SURFACE + USWRF + NCEP + 4.0 + + + + INST_ULWRF_ON_SURFACE + ULWRF + NCEP + 4.0 + + + + AVE_DSWRF_ON_SURFACE + DSWRF + NCEP + 3.0 + + + + AVE_DLWRF_ON_SURFACE + DLWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_SURFACE + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_SURFACE + ULWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_TOP_OF_ATMOS + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_TOP_OF_ATMOS + ULWRF + NCEP + 3.0 + + + + INST_DSWRF_ON_SURFACE + DSWRF + NCEP + 4.0 + + + + INST_DLWRF_ON_SURFACE + DLWRF + NCEP + 4.0 + + + + INST_CSDSF_ON_SURFACE + CSDSF + NCEP + 4.0 + + + + SFCR_ON_SURFACE + SFCR + 2.7 + + + + FRICV_ON_SURFACE + FRICV + NCEP + 4.0 + + + + CD_ON_SURFACE + CD + NCEP + 3.0 + + + + UFLX_ON_SURFACE + UFLX + 3.0 + + + + VFLX_ON_SURFACE + VFLX + 3.0 + + + + AVE_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + AVE_GFLUX_ON_SURFACE + GFLUX + NCEP + 4.0 + + + + AVE_SNOHF_ON_SURFACE + SNOHF + NCEP + 4.0 + + + + AVE_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + ACM_EVP_ON_SURFACE + EVP + 4.0 + + + + ACM_PEVAP_ON_SURFACE + PEVAP + NCEP + 4.0 + + + + INST_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + INST_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + NLAT_ON_SURFACE + NLAT + NCEP + 4.0 + + + + ELON_ON_SURFACE + ELON + NCEP + 4.0 + + + + LAND_ON_SURFACE + LAND + 1.0 + + + + ICEC_ON_SURFACE + ICEC + 3.0 + + + + LMH_ON_SURFACE + LMH + NCEP + 2.0 + + + + LMV_ON_SURFACE + LMV + NCEP + 2.0 + + + + ALBDO_ON_SURFACE + ALBDO + 3.0 + + + + WTMP_ON_SURFACE + WTMP + 5.0 + + + + PRES_ON_SPEC_PRES_ABOVE_GRND + PRES + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 6.0 + + + + TMP_ON_SPEC_PRES_ABOVE_GRND + TMP + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 3.0 + + + + POT_ON_SPEC_PRES_ABOVE_GRND + POT + 3000. + 0. + 4.0 + + + + DPT_ON_SPEC_PRES_ABOVE_GRND + DPT + 3000. + 0. + 3.0 + + + + SPFH_ON_SPEC_PRES_ABOVE_GRND + SPFH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 5.0 + + + + RH_ON_SPEC_PRES_ABOVE_GRND + RH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 2.0 + + + + PWAT_ON_SPEC_PRES_ABOVE_GRND + PWAT + 3000. + 0. + 3.0 + + + + UGRD_ON_SPEC_PRES_ABOVE_GRND + UGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + VGRD_ON_SPEC_PRES_ABOVE_GRND + VGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + ACM_LSPA_ON_SURFACE + LSPA + NCEP + 3.0 + + + + PRES_ON_TOP_OF_ATMOS + PRES + 3.0 + + + + PRES_ON_HYBRID_LVL_1L + PRES + 1. + 21. + 3.0 + + + + PRES_ON_HYBRID_LVL_LLM + PRES + 1. + 61. + 3.0 + + + + CNWAT_ON_SURFACE + CNWAT + NCEP + 1.0 + + + + INST_GFLUX_ON_SURFACE + GFLUX + NCEP + 3.0 + + + + LFTX_ON_ISOBARIC_SFC_500-1000hpa + LFTX + NCEP + 50000. + 100000. + 3.0 + + + + CAPE_ON_SURFACE + CAPE + 4.0 + + + + BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 9000. + 0. + 4.0 + + + + UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 25500. + 0. + 4.0 + + + + CIN_ON_SURFACE + CIN + 4.0 + + + + BEST_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 9000. + 0. + 4.0 + + + + UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 25500. + 0. + 4.0 + + + + PLPL_ON_SPEC_PRES_ABOVE_GRND + PLPL + NCEP + 25500. + 0. + 6.0 + + + + HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND + HLCY + 3000. 1000. + 4.0 + + + + USTM_ON_SPEC_HGT_LVL_ABOVE_GRND + USTM + NCEP + 6000. + 4.0 + + + + VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND + VSTM + NCEP + 6000. + 4.0 + + + + LCDC_ON_LOW_CLOUD_LYR + LCDC + 3.0 + + + + MCDC_ON_MID_CLOUD_LYR + MCDC + 3.0 + + + + HCDC_ON_HIGH_CLOUD_LYR + HCDC + 3.0 + + + + AVE_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_CDLYR_ON_ENTIRE_ATMOS + CDLYR + NCEP + 3.0 + + + + PRES_ON_CLOUD_BASE + PRES + 6.0 + + + + PRES_ON_CLOUD_TOP + PRES + 6.0 + + + + TMP_ON_CLOUD_TOP + TMP + 5.0 + + + + AVE_GFLUX_ON_SURFACE + GFLUX + NCEP + 4.0 + + + + AVE_SNOHF_ON_SURFACE + SNOHF + NCEP + 4.0 + + + + ACM_EVP_ON_SURFACE + EVP + 4.0 + + + + INST_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + INST_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + PRES_ON_TROPOPAUSE + PRES + 6.0 + + + + HGT_ON_TROPOPAUSE + HGT + 6.0 + + + + TMP_ON_TROPOPAUSE + TMP + 3.0 + + + + UGRD_ON_TROPOPAUSE + UGRD + 4.0 + + + + VGRD_ON_TROPOPAUSE + VGRD + 4.0 + + + + VWSH_ON_TROPOPAUSE + VWSH + NCEP + 3.0 + + + + TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + TMP + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 3.0 + + + + UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + UGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + VGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + HGT_ON_0C_ISOTHERM + HGT + 6.0 + + + + RH_ON_0C_ISOTHERM + RH + 2.0 + + + + HGT_ON_HGHST_TROP_FRZ_LVL + HGT + 6.0 + + + + PRES_ON_MAX_WIND + PRES + 6.0 + + + + HGT_ON_MAX_WIND + HGT + 6.0 + + + + UGRD_ON_MAX_WIND + UGRD + 4.0 + + + + VGRD_ON_MAX_WIND + VGRD + 4.0 + + + + MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + WIND + -4.0 + + + + HGT_ON_CLOUD_BASE + HGT + 6.0 + + + + HGT_ON_CLOUD_TOP + HGT + 6.0 + + + + GSD_VIS_ON_SURFACE + VIS + 6.0 + + + + REFC_ON_ENTIRE_ATMOS + REFC + NCEP + 4.0 + + + + PRES_ON_GRID_SCALE_CLOUD_BOT_LVL + PRES + 6.0 + + + + PRES_ON_GRID_SCALE_CLOUD_TOP_LVL + PRES + 6.0 + + + + TCOLW_ON_ENTIRE_ATMOS + TCOLW + NCEP + 5.0 + + + + TCOLI_ON_ENTIRE_ATMOS + TCOLI + NCEP + 5.0 + + + + TCOLR_ON_ENTIRE_ATMOS + TCOLR + NCEP + 5.0 + + + + TCOLS_ON_ENTIRE_ATMOS + TCOLS + NCEP + 5.0 + + + + TCOLC_ON_ENTIRE_ATMOS + TCOLC + NCEP + 5.0 + + + + TCOLG_ON_ENTIRE_ATMOS + TCOLG + 5.0 + + + + VGTYP_ON_SURFACE + VGTYP + NCEP + 3.0 + + + + SOTYP_ON_SURFACE + SOTYP + 3.0 + + + + CCOND_ON_SURFACE + CCOND + NCEP + 3.0 + + + + HPBL_ON_SURFACE + HPBL + NCEP + 6.0 + + + + SNOD_ON_SURFACE + SNOD + 6.0 + + + + SBSNO_ON_SURFACE + SBSNO + NCEP + 3.0 + + + + SMDRY_ON_SURFACE + SMDRY + NCEP + 3.0 + + + + POROS_ON_SURFACE + POROS + NCEP + 3.0 + + + + RSMIN_ON_SURFACE + RSMIN + NCEP + 3.0 + + + + RLYRS_ON_SURFACE + RLYRS + NCEP + 3.0 + + + + WILT_ON_SURFACE + WILT + NCEP + 3.0 + + + + SMREF_ON_SURFACE + SMREF + NCEP + 3.0 + + + + RCS_ON_SURFACE + RCS + NCEP + 3.0 + + + + RCT_ON_SURFACE + RCT + NCEP + 5.0 + + + + RCQ_ON_SURFACE + RCQ + NCEP + 3.0 + + + + RCSOL_ON_SURFACE + RCSOL + NCEP + 3.0 + + + + PEVPR_ON_SURFACE + PEVPR + NCEP + 6.0 + + + + GUST_ON_SURFACE + GUST + 3.0 + + + + HGT_ON_LWST_LVL_OF_WET_BULB_ZERO + HGT + -5.0 + + + + LAI_ON_SURFACE + LAI + NCEP + -3.0 + + + + INST_CSDSF_ON_SURFACE + CSDSF + NCEP + 4.0 + + + + TCDC_ON_SIGMA_LVLS + TCDC + 4 + 9975. 9915. 9835. 9745. 9650. 9490. 9260. 9015. 8755. 8480. 8190. 7890. 7585. 7185. 6690. 6180. 5470. 4550. 3595. 2605. 1580. 530. + 3.0 + + + + HGT_ON_PLANETARY_BOUND_LYR + HGT + -4.0 + + + + MIXHT_ON_SURFACE + MIXHT + -4.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + TMP + 10. + -4.0 + + + + AVE_SNOWC_ON_SURFACE + SNOWC + NCEP + 3.0 + + + + AVE_PRES_ON_SURFACE + PRES + 5.0 + + + + AVE_TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + TMP + 10. + -4.0 + + + + AVE_AKHS_ON_SURFACE + AKHS + NCEP + 3.0 + + + + AVE_AKMS_ON_SURFACE + AKMS + NCEP + 3.0 + + + + diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt new file mode 100644 index 000000000..5f47fe571 --- /dev/null +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -0,0 +1,17647 @@ +2 +222 +254 +BGDAWP +32769 +ncep_nco +v2003 +local_tab_yes1 +fcst +oper +fcst +fcst +hour +nws_ncep +meso_nam12km +complex_packing_spatial_diff +2nd_ord_sptdiff +fltng_pnt +lossless +1 +PRES_ON_HYBRID_LVL +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +77 +HGT_ON_HYBRID_LVL +? +1 +tmpl4_0 +HGT +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +2 +TMP_ON_HYBRID_LVL +? +1 +tmpl4_0 +TMP +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +3 +POT_ON_HYBRID_LVL +? +1 +tmpl4_0 +POT +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +4 +DPT_ON_HYBRID_LVL +? +1 +tmpl4_0 +DPT +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +5 +SPFH_ON_HYBRID_LVL +? +1 +tmpl4_0 +SPFH +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +7.0 +0 +0 +0 +? +? +? +6 +RH_ON_HYBRID_LVL +? +1 +tmpl4_0 +RH +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +7 +UGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +UGRD +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +8 +VGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +VGRD +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +9 +VVEL_ON_HYBRID_LVL +? +1 +tmpl4_0 +VVEL +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +264 +DZDT_ON_HYBRID_LVL +? +1 +tmpl4_0 +DZDT +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +11 +TKE_ON_HYBRID_LVL +? +1 +tmpl4_0 +TKE +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +181 +RWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +RWMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +182 +SNMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +SNMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +187 +RIME_ON_HYBRID_LVL +? +1 +tmpl4_0 +RIME +NCEP +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +199 +TCOND_ON_HYBRID_LVL +? +1 +tmpl4_0 +TCOND +NCEP +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +250 +REFD_ON_HYBRID_LVL +? +1 +tmpl4_0 +REFD +NCEP +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +146 +BMIXL_ON_HYBRID_LVL +? +1 +tmpl4_0 +BMIXL +NCEP +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +12 +HGT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +HGT +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +13 +TMP_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +TMP +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +15 +DPT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +DPT +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +16 +SPFH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +SPFH +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +17 +RH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +RH +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +18 +UGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +UGRD +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +19 +VGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VGRD +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +20 +VVEL_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VVEL +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +284 +DZDT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +DZDT +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +21 +ABSV_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +ABSV +? +? +isobaric_sfc +0 +? +10 +20000. 25000. 30000. 40000. 50000. 70000. 75000. 85000. 92500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +86 +STRM_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +STRM +? +? +isobaric_sfc +0 +? +2 +25000. 50000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +166 +ICMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +ICMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +153 +CLWMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +CLWMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +183 +RWMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +RWMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +416 +GRLE_ON_ISOBARIC_SFC +Graupel mixing ration on isobaric surface +1 +tmpl4_0 +GRLE +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +184 +SNMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +SNMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +23 +MSLET_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +MSLET +NCEP +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +445 +MAPS_PRMSL_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +PRMSL +? +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +106 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +112 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +113 +DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +DPT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +114 +RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +RH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +64 +UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +UGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +65 +VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +VGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +245 +GUST_ON_SURFACE +? +1 +tmpl4_0 +GUST +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +246 +PLPL_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PLPL +NCEP +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +158 +POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +POT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +159 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +24 +PRES_ON_SURFACE +? +1 +tmpl4_0 +PRES +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +25 +HGT_ON_SURFACE +? +1 +tmpl4_0 +HGT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +27 +POT_ON_SURFACE +? +1 +tmpl4_0 +POT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +28 +SPFH_ON_SURFACE +? +1 +tmpl4_0 +SPFH +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +26 +TMP_ON_SURFACE +? +1 +tmpl4_0 +TMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +115 +TSOIL_ON_DEPTH_BEL_LAND_SFC_3m +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +0 +? +1 +3. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +116 +TSOIL_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +117 +SOILW_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILW +NCEP +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +225 +SOILL_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILL +NCEP +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +36 +SOILM_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILM +? +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +118 +CNWAT_ON_SURFACE +? +1 +tmpl4_0 +CNWAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +119 +WEASD_ON_SURFACE +? +1 +tmpl4_0 +WEASD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +120 +SNOWC_ON_SURFACE +? +1 +tmpl4_0 +SNOWC +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +169 +SFEXC_ON_SURFACE +? +1 +tmpl4_0 +SFEXC +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +170 +VEG_ON_SURFACE +? +1 +tmpl4_0 +VEG +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +218 +VGTYP_ON_SURFACE +? +1 +tmpl4_0 +VGTYP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +219 +SOTYP_ON_SURFACE +? +1 +tmpl4_0 +SOTYP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +226 +SNFALB_ON_SURFACE +? +1 +tmpl4_0 +SNFALB +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +227 +MXSALB_ON_SURFACE +? +1 +tmpl4_0 +MXSALB +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +220 +CCOND_ON_SURFACE +? +1 +tmpl4_0 +CCOND +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +238 +RCS_ON_SURFACE +? +1 +tmpl4_0 +RCS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +239 +RCT_ON_SURFACE +? +1 +tmpl4_0 +RCT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +240 +RCQ_ON_SURFACE +? +1 +tmpl4_0 +RCQ +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +241 +RCSOL_ON_SURFACE +? +1 +tmpl4_0 +RCSOL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +237 +SMREF_ON_SURFACE +? +1 +tmpl4_0 +SMREF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +233 +POROS_ON_SURFACE +? +1 +tmpl4_0 +POROS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +235 +RLYRS_ON_SURFACE +? +1 +tmpl4_0 +RLYRS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +234 +RSMIN_ON_SURFACE +? +1 +tmpl4_0 +RSMIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +224 +SNOD_ON_SURFACE +? +1 +tmpl4_0 +SNOD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +232 +SMDRY_ON_SURFACE +? +1 +tmpl4_0 +SMDRY +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +236 +WILT_ON_SURFACE +? +1 +tmpl4_0 +WILT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +171 +MSTAV_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +MSTAV +NCEP +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +100. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +152 +INST_GFLUX_ON_SURFACE +? +1 +tmpl4_0 +GFLUX +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +30 +LFTX_ON_ISOBARIC_SFC_500-1000hpa +? +1 +tmpl4_0 +LFTX +NCEP +? +isobaric_sfc +0 +? +1 +50000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +31 +4LFTX_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +4LFTX +NCEP +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +75 +PLI_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PLI +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +32 +CAPE_ON_SURFACE +? +1 +tmpl4_0 +CAPE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +566 +BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +582 +MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +584 +UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +107 +CIN_ON_SURFACE +? +1 +tmpl4_0 +CIN +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +567 +BEST_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +583 +MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +585 +UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +80 +PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR +? +1 +tmpl4_0 +PWAT +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +162 +HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +HLCY +? +? +spec_hgt_lvl_above_grnd +0 +? +2 +3000. 1000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +163 +USTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +USTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +164 +VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +VSTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +87 +ACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +34 +ACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +417 +CACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +419 +CACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +35 +ACM_WEASD_ON_SURFACE +? +1 +tmpl4_8 +WEASD +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +121 +ACM_SNOM_ON_SURFACE +? +1 +tmpl4_8 +SNOM +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +122 +ACM_SSRUN_ON_SURFACE +? +1 +tmpl4_8 +SSRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +123 +ACM_BGRUN_ON_SURFACE +? +1 +tmpl4_8 +BGRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +343 +ACM_WATR_ON_SURFACE +? +1 +tmpl4_8 +WATR +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +160 +INST_CRAIN_ON_SURFACE +? +1 +tmpl4_0 +CRAIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +551 +CSNOW_ON_SURFACE +Categorical snow on surface +1 +tmpl4_0 +CSNOW +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +552 +CICEP_ON_SURFACE +Categorical ice pellets on surface +1 +tmpl4_0 +CICEP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +553 +CFRZR_ON_SURFACE +Categorical freezing rain on surface +1 +tmpl4_0 +CFRZR +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +167 +INST_PRATE_ON_SURFACE +? +1 +tmpl4_0 +PRATE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +172 +CPOFP_ON_SURFACE +? +1 +tmpl4_0 +CPOFP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +124 +CLWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +CLWMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +125 +ICMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +ICMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +415 +GRLE_ON_HYBRID_LVL +Graupel mixing ration on hybrid level +1 +tmpl4_0 +GRLE +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +145 +TCDC_ON_HYBRID_LVL +? +1 +tmpl4_0 +TCDC +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +37 +LCDC_ON_LOW_CLOUD_LYR +? +1 +tmpl4_0 +LCDC +? +? +low_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +38 +MCDC_ON_MID_CLOUD_LYR +? +1 +tmpl4_0 +MCDC +? +? +mid_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +39 +HCDC_ON_HIGH_CLOUD_LYR +? +1 +tmpl4_0 +HCDC +? +? +high_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +161 +INST_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCDC +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +144 +AVE_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +TCDC +? +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +139 +AVE_CDLYR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +CDLYR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +410 +GSD_VIS_ON_SURFACE +GSD_visibility on surface +1 +tmpl4_0 +VIS +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +109 +HGT_ON_LVL_OF_ADIAB_COND_FROM_SFC +? +1 +tmpl4_0 +HGT +? +? +lvl_of_adiab_cond_from_sfc +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +110 +PRES_ON_LVL_OF_ADIAB_COND_FROM_SFC +? +1 +tmpl4_0 +PRES +? +? +lvl_of_adiab_cond_from_sfc +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +141 +INST_USWRF_ON_SURFACE +? +1 +tmpl4_0 +USWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +142 +INST_ULWRF_ON_SURFACE +? +1 +tmpl4_0 +ULWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +126 +AVE_DSWRF_ON_SURFACE +? +1 +tmpl4_8 +DSWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +127 +AVE_DLWRF_ON_SURFACE +? +1 +tmpl4_8 +DLWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +128 +AVE_USWRF_ON_SURFACE +? +1 +tmpl4_8 +USWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +129 +AVE_ULWRF_ON_SURFACE +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +130 +AVE_USWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +USWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +131 +AVE_ULWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +274 +INST_ULWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +ULWRF +NCEP +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +275 +BRTMP_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +BRTMP +? +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +156 +INST_DSWRF_ON_SURFACE +? +1 +tmpl4_0 +DSWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +157 +INST_DLWRF_ON_SURFACE +? +1 +tmpl4_0 +DLWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +262 +INST_CSDSF_ON_SURFACE +? +1 +tmpl4_0 +CSDSF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +44 +SFCR_ON_SURFACE +? +1 +tmpl4_0 +SFCR +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.7 +0 +0 +0 +? +? +? +45 +FRICV_ON_SURFACE +? +1 +tmpl4_0 +FRICV +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +132 +CD_ON_SURFACE +? +1 +tmpl4_0 +CD +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +133 +UFLX_ON_SURFACE +? +1 +tmpl4_0 +UFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +134 +VFLX_ON_SURFACE +? +1 +tmpl4_0 +VFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +43 +AVE_SHTFL_ON_SURFACE +? +1 +tmpl4_8 +SHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +135 +AVE_GFLUX_ON_SURFACE +? +1 +tmpl4_8 +GFLUX +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +136 +AVE_SNOHF_ON_SURFACE +? +1 +tmpl4_8 +SNOHF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +42 +AVE_LHTFL_ON_SURFACE +? +1 +tmpl4_8 +LHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +47 +ACM_EVP_ON_SURFACE +? +1 +tmpl4_8 +EVP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +137 +ACM_PEVAP_ON_SURFACE +? +1 +tmpl4_8 +PEVAP +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +154 +INST_SHTFL_ON_SURFACE +? +1 +tmpl4_0 +SHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +155 +INST_LHTFL_ON_SURFACE +? +1 +tmpl4_0 +LHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +48 +NLAT_ON_SURFACE +? +1 +tmpl4_0 +NLAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +49 +ELON_ON_SURFACE +? +1 +tmpl4_0 +ELON +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +50 +LAND_ON_SURFACE +? +1 +tmpl4_0 +LAND +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +51 +ICEC_ON_SURFACE +? +1 +tmpl4_0 +ICEC +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +150 +ALBDO_ON_SURFACE +? +1 +tmpl4_0 +ALBDO +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +151 +WTMP_ON_SURFACE +? +1 +tmpl4_0 +WTMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +54 +PRES_ON_TROPOPAUSE +? +1 +tmpl4_0 +PRES +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +177 +HGT_ON_TROPOPAUSE +? +1 +tmpl4_0 +HGT +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +55 +TMP_ON_TROPOPAUSE +? +1 +tmpl4_0 +TMP +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +108 +POT_ON_TROPOPAUSE +? +1 +tmpl4_0 +POT +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +56 +UGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +UGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +57 +VGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +VGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +58 +VWSH_ON_TROPOPAUSE +? +1 +tmpl4_0 +VWSH +NCEP +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +432 +VUCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km +Vertical u-component shear between 0 to 6000m Above Ground +1 +tmpl4_0 +VUCSH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +0. +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +433 +VVCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km +Vertical v-component shear between 0 to 6000m Above Ground +1 +tmpl4_0 +VVCSH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +0. +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +59 +TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +TMP +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +586 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +60 +UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +UGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +576 +UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +UGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +61 +VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +VGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +577 +VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +VGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +451 +SPFH_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +SPFH +? +? +spec_alt_above_mean_sea_lvl +0 +? +1 +305. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +578 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +579 +PRES_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +PRES +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +62 +HGT_ON_0C_ISOTHERM +? +1 +tmpl4_0 +HGT +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +63 +RH_ON_0C_ISOTHERM +? +1 +tmpl4_0 +RH +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +165 +HGT_ON_HGHST_TROP_FRZ_LVL +? +1 +tmpl4_0 +HGT +? +? +hghst_trop_frz_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +247 +HGT_ON_LWST_LVL_OF_WET_BULB_ZERO +? +1 +tmpl4_0 +HGT +? +? +lwst_lvl_of_wet_bulb_zero +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +67 +PRES_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PRES +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +68 +TMP_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +TMP +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +69 +POT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +POT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +70 +DPT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +DPT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +71 +SPFH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +SPFH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +72 +RH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +RH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +89 +PWAT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PWAT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +73 +UGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +UGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +74 +VGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +VGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +90 +VVEL_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +VVEL +? +? +spec_pres_above_grnd +0 +? +3 +3000. 9000. 18000. +spec_pres_above_grnd +0 +? +3 +0. 6000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +148 +PRES_ON_CLOUD_BASE +? +1 +tmpl4_0 +PRES +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +149 +PRES_ON_CLOUD_TOP +? +1 +tmpl4_0 +PRES +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +168 +TMP_ON_CLOUD_TOP +? +1 +tmpl4_0 +TMP +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +178 +HGT_ON_CLOUD_BASE +? +1 +tmpl4_0 +HGT +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +179 +HGT_ON_CLOUD_TOP +? +1 +tmpl4_0 +HGT +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +168 +TMP_ON_CLOUD_TOP +? +1 +tmpl4_0 +TMP +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +173 +PRES_ON_MAX_WIND +? +1 +tmpl4_0 +PRES +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +174 +HGT_ON_MAX_WIND +? +1 +tmpl4_0 +HGT +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +175 +UGRD_ON_MAX_WIND +? +1 +tmpl4_0 +UGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +176 +VGRD_ON_MAX_WIND +? +1 +tmpl4_0 +VGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +252 +REFC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +276 +REFZR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFZR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +277 +REFZI_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFZI +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +253 +REFD_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +REFD +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +2 +4000. 1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +279 +REFZR_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +REFZR +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +2 +4000. 1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +280 +REFZI_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +REFZI +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +2 +4000. 1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +221 +HPBL_ON_SURFACE +? +1 +tmpl4_0 +HPBL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +194 +PRES_ON_GRID_SCALE_CLOUD_BOT_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_bot_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +195 +PRES_ON_GRID_SCALE_CLOUD_TOP_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_top_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +200 +TCOLW_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLW +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +201 +TCOLI_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLI +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +202 +TCOLR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +203 +TCOLS_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLS +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +204 +TCOLC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +428 +TCOLG_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLG +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +285 +TCLSW_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCLSW +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +286 +TCOLM_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLM +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +287 +HGT_ON_LWST_BOT_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR +? +1 +tmpl4_0 +HGT +? +? +lwst_bot_lvl_of_supercooled_liq_water_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +288 +HGT_ON_HGHST_TOP_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR +? +1 +tmpl4_0 +HGT +? +? +hghst_top_lvl_of_supercooled_liq_water_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +408 +GSD_HGT_ON_CLOUD_CEILING +GSD_geopotential height on cloud base +1 +tmpl4_0 +HGT +? +? +cloud_ceilng +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +487 +GSD_EXP_CEILING +? +1 +tmpl4_0 +CEIL +? +? +ceiling +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +711 +GSD_EXP_CEILING_2 +? +1 +tmpl4_0 +CEIL +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +256 +ACM_LSPA_ON_SURFACE +? +1 +tmpl4_8 +LSPA +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +282 +PRES_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +PRES +? +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +290 +SWHR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +SWHR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +291 +LWHR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +LWHR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +292 +AVE_LRGHR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +LRGHR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +296 +TMP_ON_SIGMA_LVL_HPC +? +1 +tmpl4_0 +TMP +? +? +sigma_lvl +1 +4 +5 +9000. 8500. 8000. 7500. 7000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +344 +PBLREG_ON_SURFACE +? +1 +tmpl4_0 +PBLREG +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +389 +UGRD_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +UGRD +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +390 +VGRD_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +VGRD +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +289 +HGT_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +HGT +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +381 +MIXHT_ON_SURFACE +? +1 +tmpl4_0 +MIXHT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +400 +RETOP_ON_ENTIRE_ATMOS_SINGLE_LYR +? +1 +tmpl4_0 +RETOP +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +454 +VRATE_ON_PLANETARY_BOUND_LYR +Ventilation Rate on planetary boundary layer +1 +tmpl4_0 +VRATE +NCEP +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +455 +HINDEX_ON_SURFACE +Haines Index on surface +1 +tmpl4_0 +HINDEX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +345 +MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMAX +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +346 +MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMIN +? +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +347 +MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MAXRH +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +348 +MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MINRH +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +506 +MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +U Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXUW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +507 +MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +V Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXVW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +422 +MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +maximum wind speed on 10 meter Above Ground +1 +tmpl4_8 +WIND +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +421 +MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MAXREF +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +423 +MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Upward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXUVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +424 +MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Downward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXDVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +444 +LTNG_ON_SURFACE +lightning +1 +tmpl4_0 +LTNG +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +581 +VIL_ON_ENTIRE_ATMOS +entire atmosphere Vertically Integrated Liquid (kg/m-2) +1 +tmpl4_0 +VIL +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +427 +UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_0 +UPHL +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +420 +MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +786 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +791 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +790 +GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +793 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +890 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 +Hourly max relative vorticity on hybrid level 1 +1 +tmpl4_8 +RELV +? +MAX +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +792 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +785 +MAX_REF_ON_ISOTHERMAL_-10C +maximum reflectivity on -10C suface +1 +tmpl4_8 +MAXREF +NCEP +MAX +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +912 +REFD_ON_ISOTHERMAL +? +1 +tmpl4_0 +REFD +NCEP +? +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +BGRD3D +32769 +ncep_nco +v2003 +local_tab_yes1 +fcst +oper +fcst +fcst +hour +nws_ncep +nmm_8km +complex_packing_spatial_diff +2nd_ord_sptdiff +fltng_pnt +lossless +12 +HGT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +HGT +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +13 +TMP_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +TMP +? +? +isobaric_sfc +0 +? +5 +25000. 50000. 70000. 85000. 95000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +17 +RH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +RH +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +18 +UGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +UGRD +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +19 +VGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VGRD +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +20 +VVEL_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VVEL +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +16 +SPFH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +SPFH +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +21 +ABSV_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +ABSV +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +1 +PRES_ON_HYBRID_LVL +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +77 +HGT_ON_HYBRID_LVL +? +1 +tmpl4_0 +HGT +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +2 +TMP_ON_HYBRID_LVL +? +1 +tmpl4_0 +TMP +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +5 +SPFH_ON_HYBRID_LVL +? +1 +tmpl4_0 +SPFH +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +7.0 +0 +0 +0 +? +? +? +7 +UGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +UGRD +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +8 +VGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +VGRD +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +9 +VVEL_ON_HYBRID_LVL +? +1 +tmpl4_0 +VVEL +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +264 +DZDT_ON_HYBRID_LVL +? +1 +tmpl4_0 +DZDT +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +11 +TKE_ON_HYBRID_LVL +? +1 +tmpl4_0 +TKE +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +23 +MSLET_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +MSLET +NCEP +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +445 +MAPS_PRMSL_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +PRMSL +? +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +106 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +112 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +113 +DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +DPT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +114 +RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +RH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +64 +UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +UGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +65 +VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +VGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +158 +POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +POT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +159 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +24 +PRES_ON_SURFACE +? +1 +tmpl4_0 +PRES +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +25 +HGT_ON_SURFACE +? +1 +tmpl4_0 +HGT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +27 +POT_ON_SURFACE +? +1 +tmpl4_0 +POT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +28 +SPFH_ON_SURFACE +? +1 +tmpl4_0 +SPFH +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +26 +TMP_ON_SURFACE +? +1 +tmpl4_0 +TMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +423 +MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Upward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXUVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +424 +MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Downward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXDVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +790 +GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +420 +MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +786 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +791 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +793 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +890 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 +Hourly max relative vorticity on hybrid level 1 +1 +tmpl4_8 +RELV +? +MAX +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +792 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +506 +MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +U Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXUW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +507 +MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +V Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXVW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +421 +MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MAXREF +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +785 +MAX_REF_ON_ISOTHERMAL_-10C +maximum reflectivity on -10C suface +1 +tmpl4_8 +MAXREF +NCEP +MAX +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +912 +REFD_ON_ISOTHERMAL +? +1 +tmpl4_0 +REFD +NCEP +? +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +345 +MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMAX +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +346 +MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMIN +? +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +347 +MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MAXRH +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +348 +MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MINRH +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +116 +TSOIL_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +117 +SOILW_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILW +NCEP +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +36 +SOILM_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILM +? +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +169 +SFEXC_ON_SURFACE +? +1 +tmpl4_0 +SFEXC +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +170 +VEG_ON_SURFACE +? +1 +tmpl4_0 +VEG +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +171 +MSTAV_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +MSTAV +NCEP +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +100. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +115 +TSOIL_ON_DEPTH_BEL_LAND_SFC_3m +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +0 +? +1 +3. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +152 +INST_GFLUX_ON_SURFACE +? +1 +tmpl4_0 +GFLUX +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +118 +CNWAT_ON_SURFACE +? +1 +tmpl4_0 +CNWAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +119 +WEASD_ON_SURFACE +? +1 +tmpl4_0 +WEASD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +31 +4LFTX_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +4LFTX +NCEP +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +80 +PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR +? +1 +tmpl4_0 +PWAT +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +87 +ACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +34 +ACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +417 +CACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +419 +CACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +35 +ACM_WEASD_ON_SURFACE +? +1 +tmpl4_8 +WEASD +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +121 +ACM_SNOM_ON_SURFACE +? +1 +tmpl4_8 +SNOM +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +122 +ACM_SSRUN_ON_SURFACE +? +1 +tmpl4_8 +SSRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +123 +ACM_BGRUN_ON_SURFACE +? +1 +tmpl4_8 +BGRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +160 +INST_CRAIN_ON_SURFACE +? +1 +tmpl4_0 +CRAIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +551 +CSNOW_ON_SURFACE +Categorical snow on surface +1 +tmpl4_0 +CSNOW +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +552 +CICEP_ON_SURFACE +Categorical ice pellets on surface +1 +tmpl4_0 +CICEP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +553 +CFRZR_ON_SURFACE +Categorical freezing rain on surface +1 +tmpl4_0 +CFRZR +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +167 +INST_PRATE_ON_SURFACE +? +1 +tmpl4_0 +PRATE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +172 +CPOFP_ON_SURFACE +? +1 +tmpl4_0 +CPOFP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +124 +CLWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +CLWMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +125 +ICMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +ICMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +415 +GRLE_ON_HYBRID_LVL +Graupel mixing ration on hybrid level +1 +tmpl4_0 +GRLE +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +145 +TCDC_ON_HYBRID_LVL +? +1 +tmpl4_0 +TCDC +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +181 +RWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +RWMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +182 +SNMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +SNMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +766 +GSD_NCWFA_ON_HYBRID_LVL +? +1 +tmpl4_0 +PMTF +NCEP +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +767 +GSD_NCIFA_ON_HYBRID_LVL +? +1 +tmpl4_0 +PMTC +NCEP +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +37 +LCDC_ON_LOW_CLOUD_LYR +? +1 +tmpl4_0 +LCDC +? +? +low_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +38 +MCDC_ON_MID_CLOUD_LYR +? +1 +tmpl4_0 +MCDC +? +? +mid_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +39 +HCDC_ON_HIGH_CLOUD_LYR +? +1 +tmpl4_0 +HCDC +? +? +high_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +161 +INST_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCDC +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +144 +AVE_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +TCDC +? +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +139 +AVE_CDLYR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +CDLYR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +141 +INST_USWRF_ON_SURFACE +? +1 +tmpl4_0 +USWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +142 +INST_ULWRF_ON_SURFACE +? +1 +tmpl4_0 +ULWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +126 +AVE_DSWRF_ON_SURFACE +? +1 +tmpl4_8 +DSWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +127 +AVE_DLWRF_ON_SURFACE +? +1 +tmpl4_8 +DLWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +128 +AVE_USWRF_ON_SURFACE +? +1 +tmpl4_8 +USWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +129 +AVE_ULWRF_ON_SURFACE +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +130 +AVE_USWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +USWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +131 +AVE_ULWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +156 +INST_DSWRF_ON_SURFACE +? +1 +tmpl4_0 +DSWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +157 +INST_DLWRF_ON_SURFACE +? +1 +tmpl4_0 +DLWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +262 +INST_CSDSF_ON_SURFACE +? +1 +tmpl4_0 +CSDSF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +44 +SFCR_ON_SURFACE +? +1 +tmpl4_0 +SFCR +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.7 +0 +0 +0 +? +? +? +45 +FRICV_ON_SURFACE +? +1 +tmpl4_0 +FRICV +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +132 +CD_ON_SURFACE +? +1 +tmpl4_0 +CD +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +133 +UFLX_ON_SURFACE +? +1 +tmpl4_0 +UFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +134 +VFLX_ON_SURFACE +? +1 +tmpl4_0 +VFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +43 +AVE_SHTFL_ON_SURFACE +? +1 +tmpl4_8 +SHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +135 +AVE_GFLUX_ON_SURFACE +? +1 +tmpl4_8 +GFLUX +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +136 +AVE_SNOHF_ON_SURFACE +? +1 +tmpl4_8 +SNOHF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +42 +AVE_LHTFL_ON_SURFACE +? +1 +tmpl4_8 +LHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +47 +ACM_EVP_ON_SURFACE +? +1 +tmpl4_8 +EVP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +137 +ACM_PEVAP_ON_SURFACE +? +1 +tmpl4_8 +PEVAP +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +154 +INST_SHTFL_ON_SURFACE +? +1 +tmpl4_0 +SHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +155 +INST_LHTFL_ON_SURFACE +? +1 +tmpl4_0 +LHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +48 +NLAT_ON_SURFACE +? +1 +tmpl4_0 +NLAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +49 +ELON_ON_SURFACE +? +1 +tmpl4_0 +ELON +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +50 +LAND_ON_SURFACE +? +1 +tmpl4_0 +LAND +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +51 +ICEC_ON_SURFACE +? +1 +tmpl4_0 +ICEC +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +52 +LMH_ON_SURFACE +? +1 +tmpl4_0 +LMH +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +53 +LMV_ON_SURFACE +? +1 +tmpl4_0 +LMV +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +150 +ALBDO_ON_SURFACE +? +1 +tmpl4_0 +ALBDO +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +151 +WTMP_ON_SURFACE +? +1 +tmpl4_0 +WTMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +67 +PRES_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PRES +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +68 +TMP_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +TMP +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +69 +POT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +POT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +70 +DPT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +DPT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +71 +SPFH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +SPFH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +72 +RH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +RH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +89 +PWAT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PWAT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +73 +UGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +UGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +74 +VGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +VGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +256 +ACM_LSPA_ON_SURFACE +? +1 +tmpl4_8 +LSPA +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +282 +PRES_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +PRES +? +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +283 +PRES_ON_HYBRID_LVL_1L +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +1 +1. +hybrid_lvl +0 +? +1 +21. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +273 +PRES_ON_HYBRID_LVL_LLM +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +1 +1. +hybrid_lvl +0 +? +1 +61. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +118 +CNWAT_ON_SURFACE +? +1 +tmpl4_0 +CNWAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +152 +INST_GFLUX_ON_SURFACE +? +1 +tmpl4_0 +GFLUX +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +30 +LFTX_ON_ISOBARIC_SFC_500-1000hpa +? +1 +tmpl4_0 +LFTX +NCEP +? +isobaric_sfc +0 +? +1 +50000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +32 +CAPE_ON_SURFACE +? +1 +tmpl4_0 +CAPE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +566 +BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +582 +MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +584 +UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +107 +CIN_ON_SURFACE +? +1 +tmpl4_0 +CIN +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +567 +BEST_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +583 +MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +585 +UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +246 +PLPL_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PLPL +NCEP +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +162 +HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +HLCY +? +? +spec_hgt_lvl_above_grnd +0 +? +2 +3000. 1000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +163 +USTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +USTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +164 +VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +VSTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +37 +LCDC_ON_LOW_CLOUD_LYR +? +1 +tmpl4_0 +LCDC +? +? +low_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +38 +MCDC_ON_MID_CLOUD_LYR +? +1 +tmpl4_0 +MCDC +? +? +mid_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +39 +HCDC_ON_HIGH_CLOUD_LYR +? +1 +tmpl4_0 +HCDC +? +? +high_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +144 +AVE_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +TCDC +? +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +139 +AVE_CDLYR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +CDLYR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +148 +PRES_ON_CLOUD_BASE +? +1 +tmpl4_0 +PRES +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +149 +PRES_ON_CLOUD_TOP +? +1 +tmpl4_0 +PRES +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +168 +TMP_ON_CLOUD_TOP +? +1 +tmpl4_0 +TMP +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +135 +AVE_GFLUX_ON_SURFACE +? +1 +tmpl4_8 +GFLUX +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +136 +AVE_SNOHF_ON_SURFACE +? +1 +tmpl4_8 +SNOHF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +47 +ACM_EVP_ON_SURFACE +? +1 +tmpl4_8 +EVP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +154 +INST_SHTFL_ON_SURFACE +? +1 +tmpl4_0 +SHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +155 +INST_LHTFL_ON_SURFACE +? +1 +tmpl4_0 +LHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +54 +PRES_ON_TROPOPAUSE +? +1 +tmpl4_0 +PRES +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +177 +HGT_ON_TROPOPAUSE +? +1 +tmpl4_0 +HGT +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +55 +TMP_ON_TROPOPAUSE +? +1 +tmpl4_0 +TMP +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +56 +UGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +UGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +57 +VGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +VGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +58 +VWSH_ON_TROPOPAUSE +? +1 +tmpl4_0 +VWSH +NCEP +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +59 +TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +TMP +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +60 +UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +UGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +61 +VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +VGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +62 +HGT_ON_0C_ISOTHERM +? +1 +tmpl4_0 +HGT +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +63 +RH_ON_0C_ISOTHERM +? +1 +tmpl4_0 +RH +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +165 +HGT_ON_HGHST_TROP_FRZ_LVL +? +1 +tmpl4_0 +HGT +? +? +hghst_trop_frz_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +173 +PRES_ON_MAX_WIND +? +1 +tmpl4_0 +PRES +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +174 +HGT_ON_MAX_WIND +? +1 +tmpl4_0 +HGT +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +175 +UGRD_ON_MAX_WIND +? +1 +tmpl4_0 +UGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +176 +VGRD_ON_MAX_WIND +? +1 +tmpl4_0 +VGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +422 +MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +maximum wind speed on 10 meter Above Ground +1 +tmpl4_8 +WIND +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +178 +HGT_ON_CLOUD_BASE +? +1 +tmpl4_0 +HGT +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +179 +HGT_ON_CLOUD_TOP +? +1 +tmpl4_0 +HGT +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +410 +GSD_VIS_ON_SURFACE +GSD_visibility on surface +1 +tmpl4_0 +VIS +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +252 +REFC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +194 +PRES_ON_GRID_SCALE_CLOUD_BOT_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_bot_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +195 +PRES_ON_GRID_SCALE_CLOUD_TOP_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_top_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +200 +TCOLW_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLW +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +201 +TCOLI_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLI +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +202 +TCOLR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +203 +TCOLS_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLS +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +204 +TCOLC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +428 +TCOLG_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLG +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +218 +VGTYP_ON_SURFACE +? +1 +tmpl4_0 +VGTYP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +219 +SOTYP_ON_SURFACE +? +1 +tmpl4_0 +SOTYP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +220 +CCOND_ON_SURFACE +? +1 +tmpl4_0 +CCOND +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +221 +HPBL_ON_SURFACE +? +1 +tmpl4_0 +HPBL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +224 +SNOD_ON_SURFACE +? +1 +tmpl4_0 +SNOD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +231 +SBSNO_ON_SURFACE +? +1 +tmpl4_0 +SBSNO +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +232 +SMDRY_ON_SURFACE +? +1 +tmpl4_0 +SMDRY +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +233 +POROS_ON_SURFACE +? +1 +tmpl4_0 +POROS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +234 +RSMIN_ON_SURFACE +? +1 +tmpl4_0 +RSMIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +235 +RLYRS_ON_SURFACE +? +1 +tmpl4_0 +RLYRS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +236 +WILT_ON_SURFACE +? +1 +tmpl4_0 +WILT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +237 +SMREF_ON_SURFACE +? +1 +tmpl4_0 +SMREF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +238 +RCS_ON_SURFACE +? +1 +tmpl4_0 +RCS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +239 +RCT_ON_SURFACE +? +1 +tmpl4_0 +RCT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +240 +RCQ_ON_SURFACE +? +1 +tmpl4_0 +RCQ +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +241 +RCSOL_ON_SURFACE +? +1 +tmpl4_0 +RCSOL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +242 +PEVPR_ON_SURFACE +? +1 +tmpl4_0 +PEVPR +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +245 +GUST_ON_SURFACE +? +1 +tmpl4_0 +GUST +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +247 +HGT_ON_LWST_LVL_OF_WET_BULB_ZERO +? +1 +tmpl4_0 +HGT +? +? +lwst_lvl_of_wet_bulb_zero +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +254 +LAI_ON_SURFACE +? +1 +tmpl4_0 +LAI +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +262 +INST_CSDSF_ON_SURFACE +? +1 +tmpl4_0 +CSDSF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +222 +TCDC_ON_SIGMA_LVLS +? +1 +tmpl4_0 +TCDC +? +? +sigma_lvl +1 +4 +22 +9975. 9915. 9835. 9745. 9650. 9490. 9260. 9015. 8755. 8480. 8190. 7890. 7585. 7185. 6690. 6180. 5470. 4550. 3595. 2605. 1580. 530. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +289 +HGT_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +HGT +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +381 +MIXHT_ON_SURFACE +? +1 +tmpl4_0 +MIXHT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +505 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +500 +AVE_SNOWC_ON_SURFACE +? +1 +tmpl4_8 +SNOWC +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +501 +AVE_PRES_ON_SURFACE +? +1 +tmpl4_8 +PRES +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +502 +AVE_TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_8 +TMP +? +AVE +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +503 +AVE_AKHS_ON_SURFACE +? +1 +tmpl4_8 +AKHS +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +504 +AVE_AKMS_ON_SURFACE +? +1 +tmpl4_8 +AKMS +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? diff --git a/sorc/ncep_post.fd/CLDRAD.f b/sorc/ncep_post.fd/CLDRAD.f index c5885711b..92db175be 100644 --- a/sorc/ncep_post.fd/CLDRAD.f +++ b/sorc/ncep_post.fd/CLDRAD.f @@ -1677,11 +1677,9 @@ SUBROUTINE CLDRAD ENDIF ENDIF -! GSD CLOUD CEILING ALGORITHM -! J. Kenyon, 3 Feb 2017: formerly described here as -! "GSD CLOUD BOTTOM HEIGHT". An alternative (experimental) -! GSD cloud ceiling algorithm is offered further below. +! GSD CLOUD CEILING ALGORITHMS... +! Parameter 408: legacy ceiling diagnostic IF (IGET(408)>0) THEN !- imported from RUC post ! -- constants for effect of snow on ceiling @@ -1703,19 +1701,11 @@ SUBROUTINE CLDRAD Cloud_def_p = 0.0000001 DO J=JSTA,JEND - DO I=1,IM -! !- imported from RUC post - IF(MODELNAME == 'RAPR') then - CLDZ(I,J) = SPVAL - pcldbase = SPVAL - zcldbase = SPVAL - ELSE - CLDZ(I,J) = -5000. - pcldbase = -50000. - zcldbase = -5000. - ENDIF + CLDZ(I,J) = SPVAL + pcldbase = SPVAL + zcldbase = SPVAL watericemax = -99999. do k=1,lm LL=LM-k+1 @@ -1903,7 +1893,7 @@ SUBROUTINE CLDRAD end do write(6,*)'No. pts w/ LIFR ceiling =',nlifr -! GSD CLOUD BOTTOM HEIGHTS +! Parameter 408: legacy ceiling diagnostic IF (IGET(408)>0) THEN !$omp parallel do private(i,j) DO J=JSTA,JEND @@ -1921,6 +1911,7 @@ SUBROUTINE CLDRAD ! BEGIN EXPERIMENTAL GSD CEILING DIAGNOSTICS... ! J. Kenyon, 4 Feb 2017: this approach uses model-state cloud fractions +! Parameter 487: experimental ceiling diagnostic #1 IF (IGET(487)>0) THEN ! set some constants for ceiling adjustment in snow (retained from legacy algorithm, also in calvis.f) rhoice = 970. @@ -1960,7 +1951,6 @@ SUBROUTINE CLDRAD end do ! k ! now search aloft... - ceil(I,J) = zceil ! default is no ceiling found loop471:do k=2,lm k1 = k if (cldfra(k) >= ceiling_thresh_cldfra) then ! go to 472 ! found ceiling @@ -1984,23 +1974,19 @@ SUBROUTINE CLDRAD vertvis = 1000.*min(90., const1/betav) if (vertvis < zceil-FIS(I,J)*GI ) then zceil = FIS(I,J)*GI + vertvis - do k2=2,LM - k1 = k2 - if (ZMID(i,j,lm-k2+1) > zceil) cycle loop471 - end do exit loop471 end if end if + + exit loop471 endif ! cldfra(k) >= ceiling_thresh_cldfra end do loop471 - - else - ceil(I,J) = zceil - endif + endif ! cldfra_max >= ceiling_thresh_cldfra + ceil(I,J) = zceil ENDDO ! i loop ENDDO ! j loop -! proceed to gridding +! Parameter 487: experimental ceiling diagnostic #1 DO J=JSTA,JEND DO I=1,IM GRID1(I,J) = ceil(I,J) @@ -2022,6 +2008,7 @@ SUBROUTINE CLDRAD ! the GSD cloud-base height, and parameter 798 will be the ! corresponding cloud-base pressure. (J. Kenyon, 4 Nov 2019) +! Parameters 711/798: experimental ceiling diagnostic #2 (height and pressure, respectively) IF ((IGET(711)>0) .OR. (IGET(798)>0)) THEN ! set minimum cloud fraction to represent a ceiling ceiling_thresh_cldfra = 0.4 @@ -2172,7 +2159,7 @@ SUBROUTINE CLDRAD ENDDO ENDDO - ! GSD CLOUD BOTTOM HEIGHT + ! Parameters 711/798: experimental ceiling diagnostic #2 (height and pressure, respectively) IF (IGET(711)>0) THEN !$omp parallel do private(i,j) DO J=JSTA,JEND @@ -2187,7 +2174,7 @@ SUBROUTINE CLDRAD endif ENDIF - ! GSD CLOUD BOTTOM PRESSURE + ! Parameters 711/798: experimental ceiling diagnostic #2 (height and pressure, respectively) IF (IGET(798)>0) THEN !$omp parallel do private(i,j) DO J=JSTA,JEND diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index d8c2d1a71..136b1ca13 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -44,7 +44,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) o3vdiff, o3prod, o3tndy, mwpv, unknown, vdiffzacce, zgdrag,cnvctummixing, & vdiffmacce, mgdrag, cnvctvmmixing, ncnvctcfrac, cnvctumflx, cnvctdmflx, & cnvctzgdrag, sconvmois, cnvctmgdrag, cnvctdetmflx, duwt, duem, dusd, dudp, & - wh, qqg, ref_10cm + wh, qqg, ref_10cm, qqnifa, qqnwfa use vrbls2d, only: f, pd, fis, pblh, ustar, z0, ths, qs, twbs, qwbs, avgcprate, & cprate, avgprec, prec, lspa, sno, si, cldefi, th10, q10, tshltr, pshltr, & tshltr, albase, avgalbedo, avgtcdc, czen, czmean, mxsnal, radot, sigt4, & @@ -1262,7 +1262,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! end do ! instantaneous 3D cloud fraction - VarName='cldfra' + VarName='cldfra_bl' ! do l=1,lm call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & @@ -1280,6 +1280,31 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! ,REF_10CM(isa,jsa,l),isa,jsa,l ! enddo +! turbulence kinetic energy (QKE = 2*TKE) + VarName='qke' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,q2(1,jsta_2l,1)) + do l=1,lm + do j=jsta,jend + do i=1,im + q2(i,j,l)=q2(i,j,l)/2.0 + enddo + enddo + enddo + +! ice-friendly aerosol number concentration + VarName='nifa' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,qqnifa(1,jsta_2l,1)) + +! water-friendly aerosol number concentration + VarName='nwfa' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,qqnwfa(1,jsta_2l,1)) + VarName='land' call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,sm) From b6e5b259f37445e5d7db5346ae38041a4cf32fb5 Mon Sep 17 00:00:00 2001 From: Jaymes Kenyon Date: Thu, 25 Mar 2021 09:58:37 -0600 Subject: [PATCH 03/46] Updating UPP control files to specify GRIB2 generating center as "noaa_fsl_boulder" and the generating process as "hrrr". The "hrrr" specification is temporary, and will eventually be switched to "rrfs" once required changes to the "NCEPLIBS-g2tmpl" library are available. (#4) --- parm/fv3lam_rrfs.xml | 8 ++++---- parm/postxconfig-NT-fv3lam.txt | 8 ++++---- parm/postxconfig-NT-fv3lam_rrfs.txt | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index 34881951e..46547b148 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -12,8 +12,8 @@ fcst fcst hour - nws_ncep - meso_nam12km + noaa_fsl_boulder + hrrr complex_packing_spatial_diff 2nd_ord_sptdiff fltng_pnt @@ -1796,8 +1796,8 @@ fcst fcst hour - nws_ncep - nmm_8km + noaa_fsl_boulder + hrrr complex_packing_spatial_diff 2nd_ord_sptdiff fltng_pnt diff --git a/parm/postxconfig-NT-fv3lam.txt b/parm/postxconfig-NT-fv3lam.txt index 7e8b98a88..10dd7e860 100644 --- a/parm/postxconfig-NT-fv3lam.txt +++ b/parm/postxconfig-NT-fv3lam.txt @@ -11,8 +11,8 @@ oper fcst fcst hour -nws_ncep -meso_nam12km +noaa_fsl_boulder +hrrr complex_packing_spatial_diff 2nd_ord_sptdiff fltng_pnt @@ -9573,8 +9573,8 @@ oper fcst fcst hour -nws_ncep -nmm_8km +noaa_fsl_boulder +hrrr complex_packing_spatial_diff 2nd_ord_sptdiff fltng_pnt diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index 5f47fe571..e0a17cc2e 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -11,8 +11,8 @@ oper fcst fcst hour -nws_ncep -meso_nam12km +noaa_fsl_boulder +hrrr complex_packing_spatial_diff 2nd_ord_sptdiff fltng_pnt @@ -9425,8 +9425,8 @@ oper fcst fcst hour -nws_ncep -nmm_8km +noaa_fsl_boulder +hrrr complex_packing_spatial_diff 2nd_ord_sptdiff fltng_pnt From 6ec6c91bfd19c41fc3377af3ef2665c0e0e1307f Mon Sep 17 00:00:00 2001 From: "Samuel Trahan (NOAA contractor)" <39415369+SamuelTrahanNOAA@users.noreply.github.com> Date: Thu, 1 Apr 2021 18:44:21 -0400 Subject: [PATCH 04/46] Fix some out-of-bounds reads that caused the RRFS UPP to crash. (#5) --- sorc/ncep_post.fd/CLDRAD.f | 2 +- sorc/ncep_post.fd/INITPOST_NETCDF.f | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/sorc/ncep_post.fd/CLDRAD.f b/sorc/ncep_post.fd/CLDRAD.f index 92db175be..8a1b4cdfa 100644 --- a/sorc/ncep_post.fd/CLDRAD.f +++ b/sorc/ncep_post.fd/CLDRAD.f @@ -2148,7 +2148,7 @@ SUBROUTINE CLDRAD CLDZ(I,J) = ceil_min + FIS(I,J)*GI ! convert back to ASL and store CLDZ(I,J) = max(min(CLDZ(I,J), 20000.0),0.0) !set bounds ! find pressure at CLDZ - do k=1,lm-2 + do k=2,lm-2 if ( zmid(i,j,lm-k+1) >= CLDZ(i,j) ) then CLDP(I,J) = pmid(i,j,lm-k+2) + (CLDZ(i,j)-zmid(i,j,lm-k+2)) & *(pmid(i,j,lm-k+1)-pmid(i,j,lm-k+2) ) & diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 136b1ca13..58469e402 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -697,7 +697,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! sample print point ii = im/2 - jj = jm/2 + jj = (jsta+jend)/2 print *,me,'max(gdlat)=', maxval(gdlat), & 'max(gdlon)=', maxval(gdlon) @@ -944,8 +944,9 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) pint(i,j,l) = pint(i,j,l-1) + dpres(i,j,l-1) enddo enddo - if (me == 0) print*,'sample model pint,pmid' ,ii,jj,l & - ,pint(ii,jj,l),pmid(ii,jj,l) + ! The next two lines crash. +! if (me == 0) print*,'sample model pint,pmid' ,ii,jj,l & +! ,pint(ii,jj,l),pmid(ii,jj,l) end do ! do l=lm,1,-1 From 388a610624d82f8153acac518ae8199ca3addb3d Mon Sep 17 00:00:00 2001 From: Jaymes Kenyon Date: Thu, 13 May 2021 14:38:05 -0600 Subject: [PATCH 05/46] Adding README file (#7) * Adding README file to describe process of making a "flat" file. * Updates to README to improve explanation of input/output files. --- parm/README.make_flatfile | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 parm/README.make_flatfile diff --git a/parm/README.make_flatfile b/parm/README.make_flatfile new file mode 100644 index 000000000..9933405bb --- /dev/null +++ b/parm/README.make_flatfile @@ -0,0 +1,20 @@ +To make a .txt flat file for UPP, follow these steps within the parm/ directory: + +1) Select, then validate, the associated "post_avblflds" file, e.g., + + xmllint --noout --schema EMC_POST_Avblflds_Schema.xsd fv3lam_post_avblflds.xml + +2) Select, then validate, the associated "postcntrl" file, e.g., + + xmllint --noout --schema EMC_POST_CTRL_Schema.xsd fv3lam_rrfs.xml + +3) If file validation succeeds in steps (1) and (2), generate the .txt flat file, e.g., + + perl PostXMLPreprocessor.pl fv3lam_rrfs.xml fv3lam_post_avblflds.xml postxconfig-NT-fv3lam_rrfs.txt + + In this example, "fv3lam_rrfs.xml" and "fv3lam_post_avblflds.xml" are input files, read by the perl + script. The "postxconfig-NT-fv3lam_rrfs.txt" flat file is the output file produced by the script, which + can have any name. + + Note that a log file will be created by this script, in addition to the flat file. + From 5afc8bc0e9fa2e09e689a738c311c9f7bb33db95 Mon Sep 17 00:00:00 2001 From: eric james Date: Thu, 10 Jun 2021 17:14:14 +0000 Subject: [PATCH 06/46] Code to read in Flash Flood Guidance (FFG) and Average Recurrence Interval (ARI) precipitation datasets for comparison with model QPF within UPP. --- sorc/ncep_post.fd/RQSTFLD.F | 34 +++ sorc/ncep_post.fd/SURFCE.f | 367 ++++++++++++++++++++++++++++++- sorc/ncep_post.fd/grib2_module.f | 326 ++++++++++++++++++++++++++- 3 files changed, 722 insertions(+), 5 deletions(-) diff --git a/sorc/ncep_post.fd/RQSTFLD.F b/sorc/ncep_post.fd/RQSTFLD.F index ce0609481..9e711b2af 100644 --- a/sorc/ncep_post.fd/RQSTFLD.F +++ b/sorc/ncep_post.fd/RQSTFLD.F @@ -2468,6 +2468,40 @@ module RQSTFLD_mod DATA IFILV(911),AVBL(911),IQ(911),IS(911),AVBLGRB2(911) & & /1,'VTEMP AT FD HEIGHTS ',012,103, & & 'VTMP ON spec_alt_above_mean_sea_lvl'/ +! E. JAMES (NOAA GSL): 10 JUN 2021 -- Adding FFG and ARI exceedance grids + DATA IFILV(912),AVBL(912),IQ(912),IS(912),AVBLGRB2(912) & + & /1,'1H FFG EXCEEDANCE ',166,001, & + & '1H FFG EXCD ON surface'/ + DATA IFILV(913),AVBL(913),IQ(913),IS(913),AVBLGRB2(913) & + & /1,'3H FFG EXCEEDANCE ',166,001, & + & '3H FFG EXCD ON surface'/ + DATA IFILV(914),AVBL(914),IQ(914),IS(914),AVBLGRB2(914) & + & /1,'6H FFG EXCEEDANCE ',166,001, & + & '6H FFG EXCD ON surface'/ + DATA IFILV(915),AVBL(915),IQ(915),IS(915),AVBLGRB2(915) & + & /1,'12H FFG EXCEEDANCE ',166,001, & + & '12H FFG XCD ON surface'/ + DATA IFILV(916),AVBL(916),IQ(916),IS(916),AVBLGRB2(916) & + & /1,'6H 1Y ARI EXCEEDNCE ',166,001, & + & '6H 1Y ARI ON surface '/ + DATA IFILV(917),AVBL(917),IQ(917),IS(917),AVBLGRB2(917) & + & /1,'6H 2Y ARI EXCEEDNCE ',166,001, & + & '6H 2Y ARI ON surface '/ + DATA IFILV(918),AVBL(918),IQ(918),IS(918),AVBLGRB2(918) & + & /1,'6H 5Y ARI EXCEEDNCE ',166,001, & + & '6H 5Y ARI ON surface '/ + DATA IFILV(919),AVBL(919),IQ(919),IS(919),AVBLGRB2(919) & + & /1,'6H 10Y ARI EXCEEDNCE',166,001, & + & '6H 10Y ARI ON surface '/ + DATA IFILV(920),AVBL(920),IQ(920),IS(920),AVBLGRB2(920) & + & /1,'6H 25Y ARI EXCEEDNCE',166,001, & + & '6H 25Y ARI ON surface '/ + DATA IFILV(921),AVBL(921),IQ(921),IS(921),AVBLGRB2(921) & + & /1,'6H 50Y ARI EXCEEDNCE',166,001, & + & '6H 50Y ARI ON surface '/ + DATA IFILV(924),AVBL(924),IQ(924),IS(924),AVBLGRB2(924) & + & /1,'6H 100Y ARI EXCEDNCE',166,001, & + & '6H 100Y ARI ON surface'/ ! CD and CH exchange coefficients DATA IFILV(922),AVBL(922),IQ(922),IS(922),AVBLGRB2(922) & & /1,'10M DRAG EXCH COEF ',252,105, & !table 2 diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 85945fd94..8574b78b6 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -100,6 +100,7 @@ SUBROUTINE SURFCE lp1, imp_physics, me, asrfc, tsrfc, pt, pdtop, & mpi_comm_comp, im, jm, prec_acc_dt1 use rqstfld_mod, only: iget, lvls, id, iavblfld, lvlsxml + use grib2_module, only: read_grib2_head, read_grib2_sngle use upp_physics, only: fpvsnew, CALRH !- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - implicit none @@ -127,7 +128,8 @@ SUBROUTINE SURFCE t1d, q1d, zwet, & smcdry, smcmax,doms, domr, & domip, domzr, rsmin, smcref,& - rcq, rct, rcsoil, gc, rcs + rcq, rct, rcsoil, gc, rcs, & + mscValue real, dimension(im,jsta:jend) :: evp real, dimension(im,jsta_2l:jend_2u) :: egrid1, egrid2 @@ -136,19 +138,26 @@ SUBROUTINE SURFCE ! , ua, va real, allocatable, dimension(:,:,:) :: sleet, rain, freezr, snow ! real, dimension(im,jm,nalg) :: sleet, rain, freezr, snow - + real, allocatable, dimension(:,:) :: ylat, xlon + real, allocatable, dimension(:) :: msclon, msclat !GSD REAL totprcp, snowratio,t2,rainl ! + integer NLON,NLAT,NTOT,var_scale integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & - IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed + IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, + NX,NY,NZ,MSCNLON,MSCNLAT,MSCNLEV,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & - qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es + qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es, & + RLONMIN,RLATMAX,RLAT,RLON + + real*8 RDX,RDY,DLON,DLAT,LONMIN,LATMIN,LONMAX,LATMAX + character(len=256) :: ffgfile !**************************************************************************** ! @@ -3628,6 +3637,356 @@ SUBROUTINE SURFCE endif ENDIF +! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG and ARI +! thresholds + IF (IGET(912).GT.0) THEN + ffgfile='ffg_01h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '1H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .EQ. 0) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (PCP_BUCKET(I,J) .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC .ne. 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR =NINT(PREC_ACC_DT)/60 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR.EQ.0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib1') then + CALL GRIBIT(IGET(912),LVLS(1,IGET(912)),GRID1,IM,JM) + elseif(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(912)) + if(ITPREC>0) then + fld_info(cfld)%ntrange=(IFHR-ID(18))/ITPREC + else + fld_info(cfld)%ntrange=0 + endif + fld_info(cfld)%tinvstat=ITPREC + if(fld_info(cfld)%ntrange.eq.0) then + if (ifhr.eq.0) then + fld_info(cfld)%tinvstat=0 + else + fld_info(cfld)%tinvstat=1 + endif + fld_info(cfld)%ntrange=1 + end if +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + IF (IGET(913).GT.0) THEN + ffgfile='ffg_03h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '3H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 3) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (ACPREC(I,J)*1000. .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC .ne. 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR=NINT(PREC_ACC_DT)/60 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR.EQ.0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib1') then + CALL GRIBIT(IGET(913),LVLS(1,IGET(913)),GRID1,IM,JM) + elseif(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) + fld_info(cfld)%ntrange=1 +! fld_info(cfld)%tinvstat=IFHR-ID(18) + if (ifhr.eq.3) then + fld_info(cfld)%tinvstat=3 + else + fld_info(cfld)%tinvstat=0 + endif +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + IF (IGET(914).GT.0) THEN + ffgfile='ffg_06h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '6H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 6) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (ACPREC(I,J)*1000. .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC .ne. 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR=NINT(PREC_ACC_DT)/60 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR.EQ.0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib1') then + CALL GRIBIT(IGET(914),LVLS(1,IGET(914)),GRID1,IM,JM) + elseif(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) + fld_info(cfld)%ntrange=1 +! fld_info(cfld)%tinvstat=IFHR-ID(18) + if (ifhr.eq.6) then + fld_info(cfld)%tinvstat=6 + else + fld_info(cfld)%tinvstat=0 + endif +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + IF (IGET(915).GT.0) THEN + ffgfile='ffg_12h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '12H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 12) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (ACPREC(I,J)*1000. .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC .ne. 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR=NINT(PREC_ACC_DT)/60 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR.EQ.0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib1') then + CALL GRIBIT(IGET(915),LVLS(1,IGET(915)),GRID1,IM,JM) + elseif(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) + fld_info(cfld)%ntrange=1 +! fld_info(cfld)%tinvstat=IFHR-ID(18) + if (ifhr.eq.12) then + fld_info(cfld)%tinvstat=12 + else + fld_info(cfld)%tinvstat=0 + endif +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR ! PRECIPITATION BUCKETS - accumulated between output times ! 'BUCKET1 TOTAL PRECIP ' diff --git a/sorc/ncep_post.fd/grib2_module.f b/sorc/ncep_post.fd/grib2_module.f index b944d84d8..b6edaf26e 100644 --- a/sorc/ncep_post.fd/grib2_module.f +++ b/sorc/ncep_post.fd/grib2_module.f @@ -95,7 +95,7 @@ module grib2_module real(8) :: stime,stime1,stime2,etime,etime1 logical :: first_grbtbl ! - public num_pset,pset,nrecout,gribit2,grib_info_init,first_grbtbl,grib_info_finalize + public num_pset,pset,nrecout,gribit2,grib_info_init,first_grbtbl,grib_info_finalize,read_grib2_head,read_grib2_sngle real(8), EXTERNAL :: timef !------------------------------------------------------------------------------------- ! @@ -995,6 +995,330 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs end subroutine gengrb2msg ! !-------------------------------------------------------------------------------------- +! +! E. JAMES: 10 JUN 2021 - Adding section to read in GRIB2 files for comparison +! within UPP. Two new subroutines added below. +! + subroutine read_grib2_head(filenameG2,nx,ny,nz,rlonmin,rlatmax,rdx,rdy) +! +!--- read grib2 file head information +! + use grib_mod + implicit none + character*256,intent(in) :: filenameG2 + integer, intent(out) :: nx,ny,nz + real, intent(out) :: rlonmin,rlatmax + real*8, intent(out) :: rdx,rdy +! +! + type(gribfield) :: gfld + logical :: expand=.true. + integer :: ifile + character(len=1),allocatable,dimension(:) :: cgrib + integer,parameter :: msk1=32000 + integer :: lskip, lgrib,iseek + integer :: currlen + integer :: icount , lengrib + integer :: listsec0(3) + integer :: listsec1(13) + integer year, month, day, hour, minute, second, fcst + integer :: numfields,numlocal,maxlocal,ierr + integer :: grib_edition + integer :: itot +! real :: dx,dy,lat1,lon1 + real :: scale_factor,scale_factor2 +! +! + integer :: nn,n,j,iret + real :: fldmax,fldmin,sum +! +! + scale_factor=1.0e6 + scale_factor2=1.0e3 + ifile=10 + loopfile: do nn=1,1 +! write(6,*) 'read in grib2 file head', trim(filenameG2) + lskip=0 + lgrib=0 + iseek=0 + icount=0 + itot=0 + currlen=0 +! Open GRIB2 file + call baopenr(ifile,trim(filenameG2),iret) + if (iret.eq.0) then + VERSION: do + ! Search opend file for the next GRIB2 messege (record). + call skgb(ifile,iseek,msk1,lskip,lgrib) + ! Check for EOF, or problem + if (lgrib.eq.0) then + exit + endif + ! Check size, if needed allocate more memory. + if (lgrib.gt.currlen) then + if (allocated(cgrib)) deallocate(cgrib) + allocate(cgrib(lgrib)) + currlen=lgrib + endif + ! Read a given number of bytes from unblocked file. + call baread(ifile,lskip,lgrib,lengrib,cgrib) + if(lgrib.ne.lengrib) then + write(*,*) 'ERROR, read_grib2 lgrib ne lengrib', & + lgrib,lengrib + stop 1234 + endif + iseek=lskip+lgrib + icount=icount+1 + ! Unpack GRIB2 field + call gb_info(cgrib,lengrib,listsec0,listsec1, & + numfields,numlocal,maxlocal,ierr) + if(ierr.ne.0) then + write(6,*) 'Error querying GRIB2 message',ierr + stop + endif + itot=itot+numfields + grib_edition=listsec0(2) + if (grib_edition.ne.2) then + exit VERSION + endif +! write(*,*) 'listsec0=',listsec0 +! write(*,*) 'listsec1=',listsec1 +! write(*,*) 'numfields=',numfields +! get information form grib2 file + n=1 + call gf_getfld(cgrib,lengrib,n,.FALSE.,expand,gfld,ierr) + year =gfld%idsect(6) !(FOUR-DIGIT) YEAR OF THE DATA + month =gfld%idsect(7) ! MONTH OF THE DATA + day =gfld%idsect(8) ! DAY OF THE DATA + hour =gfld%idsect(9) ! HOUR OF THE DATA + minute=gfld%idsect(10) ! MINUTE OF THE DATA + second=gfld%idsect(11) ! SECOND OF THE DATA + write(*,*) 'year,month,day,hour,minute,second=' + write(*,*) year,month,day,hour,minute,second + write(*,*) 'source center =',gfld%idsect(1) + write(*,*) 'Indicator of model =',gfld%ipdtmpl(5) + write(*,*) 'observation level (m)=',gfld%ipdtmpl(12) + write(*,*) 'map projection=',gfld%igdtnum + if (gfld%igdtnum.eq.0) then ! Lat/Lon grid aka Cylindrical + ! Equidistant + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(17)/scale_factor + rdy = gfld%igdtmpl(18)/scale_factor + rlatmax = gfld%igdtmpl(12)/scale_factor + rlonmin = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(15)/scale_factor2 + rdy = gfld%igdtmpl(16)/scale_factor2 + rlatmax = gfld%igdtmpl(10)/scale_factor + rlonmin = gfld%igdtmpl(11)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else + write(*,*) 'unknown projection' + stop 1235 + endif + call gf_free(gfld) + enddo VERSION ! skgb + endif + CALL BACLOSE(ifile,ierr) + nullify(gfld%local) + if (allocated(cgrib)) deallocate(cgrib) + enddo loopfile + return + end subroutine read_grib2_head +! +!--- +! + subroutine read_grib2_sngle(filenameG2,ntot,height,var) +! +!--- read grib2 files +! + use grib_mod + implicit none + character*256,intent(in) :: filenameG2 + integer, intent(in) :: ntot + real, intent(out) :: var(ntot) + integer, intent(out) :: height +! +! + type(gribfield) :: gfld + logical :: expand=.true. + integer :: ifile + character(len=1),allocatable,dimension(:) :: cgrib + integer,parameter :: msk1=32000 + integer :: lskip, lgrib,iseek + integer :: currlen + integer :: icount , lengrib + integer :: listsec0(3) + integer :: listsec1(13) + integer year, month, day, hour, minute, second, fcst + integer :: numfields,numlocal,maxlocal,ierr + integer :: grib_edition + integer :: itot + integer :: nx,ny + real :: dx,dy,lat1,lon1,rtnum + real :: ref_value,bin_scale_fac,dec_scale_fac,bit_number,field_type + real :: bit_map + real :: scale_factor,scale_factor2 +! +! + integer :: nn,n,j,iret + real :: fldmax,fldmin,sum +! +! + scale_factor=1.0e6 + scale_factor2=1.0e3 + ifile=12 + loopfile: do nn=1,1 +! write(6,*) 'read mosaic in grib2 file ', trim(filenameG2) + lskip=0 + lgrib=0 + iseek=0 + icount=0 + itot=0 + currlen=0 +! Open GRIB2 file + call baopenr(ifile,trim(filenameG2),iret) + if (iret.eq.0) then + VERSION: do + ! Search opend file for the next GRIB2 messege (record). + call skgb(ifile,iseek,msk1,lskip,lgrib) + ! Check for EOF, or problem + if (lgrib.eq.0) then + exit + endif + ! Check size, if needed allocate more memory. + if (lgrib.gt.currlen) then + if (allocated(cgrib)) deallocate(cgrib) + allocate(cgrib(lgrib)) + currlen=lgrib + endif + ! Read a given number of bytes from unblocked file. + call baread(ifile,lskip,lgrib,lengrib,cgrib) + if(lgrib.ne.lengrib) then + write(*,*) 'ERROR, read_grib2 lgrib ne lengrib', & + lgrib,lengrib + stop 1234 + endif +! write(*,*) 'lengrib=',lengrib + iseek=lskip+lgrib + icount=icount+1 + ! Unpack GRIB2 field + call gb_info(cgrib,lengrib,listsec0,listsec1, & + numfields,numlocal,maxlocal,ierr) + if(ierr.ne.0) then + write(6,*) 'Error querying GRIB2 message',ierr + stop + endif + itot=itot+numfields + grib_edition=listsec0(2) + if (grib_edition.ne.2) then + exit VERSION + endif +! write(*,*) 'listsec0=',listsec0 +! write(*,*) 'listsec1=',listsec1 +! write(*,*) 'numfields=',numfields! +! get information form grib2 file + n=1 + call gf_getfld(cgrib,lengrib,n,.FALSE.,expand,gfld,ierr) + year =gfld%idsect(6) !(FOUR-DIGIT) YEAR OF THE DATA + month =gfld%idsect(7) ! MONTH OF THE DATA + day =gfld%idsect(8) ! DAY OF THE DATA + hour =gfld%idsect(9) ! HOUR OF THE DATA + minute=gfld%idsect(10) ! MINUTE OF THE DATA + second=gfld%idsect(11) ! SECOND OF THE DATA +! write(*,*) 'year,month,day,hour,minute,second=' +! write(*,*) year,month,day,hour,minute,second +! write(*,*) 'source center =',gfld%idsect(1) +! write(*,*) 'Indicator of model =',gfld%ipdtmpl(5) +! write(*,*) 'observation level (m)=',gfld%ipdtmpl(12) +! write(*,*) 'map projection=',gfld%igdtnum + height=gfld%ipdtmpl(12) + if (gfld%igdtnum.eq.0) then ! Lat/Lon grid aka Cylindrical + ! Equidistant + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(17)/scale_factor + dy = gfld%igdtmpl(18)/scale_factor + lat1 = gfld%igdtmpl(12)/scale_factor + lon1 = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',dx,dy +! write(*,*) 'lat1,lon1=',lat1,lon1 + else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(15)/scale_factor2 + dy = gfld%igdtmpl(16)/scale_factor2 + lat1 = gfld%igdtmpl(10)/scale_factor + lon1 = gfld%igdtmpl(11)/scale_factor +! write(*,*) 'In read_grib2_sngle:' +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',dx,dy +! write(*,*) 'lat1,lon1=',lat1,lon1 + rtnum = gfld%idrtnum +! write(*,*) 'rtnum=',rtnum + ref_value = gfld%idrtmpl(1) + bin_scale_fac = gfld%idrtmpl(2) + dec_scale_fac = gfld%idrtmpl(3) + bit_number = gfld%idrtmpl(4) + field_type = gfld%idrtmpl(5) + bit_map = gfld%ibmap +! write(*,*) 'ref_value=',ref_value +! write(*,*) 'bin_scale_fac=',bin_scale_fac +! write(*,*) 'dec_scale_fac=',dec_scale_fac +! write(*,*) 'bit_number=',bit_number +! write(*,*) 'field_type=',field_type +! write(*,*) 'bit map indicator=',bit_map + else + write(*,*) 'unknown projection' + stop 1235 + endif + call gf_free(gfld) + ! Continue to unpack GRIB2 field. + NUM_FIELDS: do n = 1, numfields + ! e.g. U and V would =2, otherwise its usually =1 + call gf_getfld(cgrib,lengrib,n,.true.,expand,gfld,ierr) + if (ierr.ne.0) then + write(*,*) ' ERROR extracting field gf_getfld = ',ierr + cycle + endif +! write(*,*) 'gfld%ndpts=',n,gfld%ndpts +! write(*,*) 'gfld%ngrdpts=',n,gfld%ngrdpts +! write(*,*) 'gfld%unpacked=',n,gfld%unpacked + fldmax=gfld%fld(1) + fldmin=gfld%fld(1) + sum=gfld%fld(1) + if(ntot .ne. gfld%ngrdpts) then + write(*,*) 'Error, wrong dimension ',ntot, gfld%ngrdpts + stop 1234 + endif + do j=1,gfld%ngrdpts + var(j)=gfld%fld(j) + enddo +! write(*,*) 'j,first,last:',j,var(954370),var(953920) +! write(*,*) 'height,max,min',height,maxval(var),minval(var) + call gf_free(gfld) + enddo NUM_FIELDS + enddo VERSION ! skgb + endif + CALL BACLOSE(ifile,ierr) + if (allocated(cgrib)) deallocate(cgrib) + nullify(gfld%local) + enddo loopfile + return + end subroutine read_grib2_sngle +! +!---------------------------------------------------------------------------------------- ! subroutine g2sec3tmpl40(nx,nY,lat1,lon1,lat2,lon2,lad,ds1,len3,igds,ifield3) implicit none From d16fc58c7188742bd9226427d9f59f65c5f5c85c Mon Sep 17 00:00:00 2001 From: eric james Date: Thu, 10 Jun 2021 19:53:25 +0000 Subject: [PATCH 07/46] Fixed a syntax error in SURFCE.f --- sorc/ncep_post.fd/SURFCE.f | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 8574b78b6..bdb305230 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -147,7 +147,7 @@ SUBROUTINE SURFCE integer NLON,NLAT,NTOT,var_scale integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & - IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, + IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, & NX,NY,NZ,MSCNLON,MSCNLAT,MSCNLEV,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & From 7c4f0a496dc15dbc0dde28ff0300a0893d18be8c Mon Sep 17 00:00:00 2001 From: eric james Date: Thu, 10 Jun 2021 20:59:26 +0000 Subject: [PATCH 08/46] Getting rid of GRIB1 output option to be consistent with rest of code. --- sorc/ncep_post.fd/SURFCE.f | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index bdb305230..f74798308 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3703,9 +3703,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib1') then - CALL GRIBIT(IGET(912),LVLS(1,IGET(912)),GRID1,IM,JM) - elseif(grib=='grib2') then +! if(grib=='grib1') then +! CALL GRIBIT(IGET(912),LVLS(1,IGET(912)),GRID1,IM,JM) + if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(912)) if(ITPREC>0) then @@ -3795,9 +3795,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib1') then - CALL GRIBIT(IGET(913),LVLS(1,IGET(913)),GRID1,IM,JM) - elseif(grib=='grib2') then +! if(grib=='grib1') then +! CALL GRIBIT(IGET(913),LVLS(1,IGET(913)),GRID1,IM,JM) + if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) fld_info(cfld)%ntrange=1 @@ -3880,9 +3880,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib1') then - CALL GRIBIT(IGET(914),LVLS(1,IGET(914)),GRID1,IM,JM) - elseif(grib=='grib2') then +! if(grib=='grib1') then +! CALL GRIBIT(IGET(914),LVLS(1,IGET(914)),GRID1,IM,JM) + if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) fld_info(cfld)%ntrange=1 @@ -3965,9 +3965,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib1') then - CALL GRIBIT(IGET(915),LVLS(1,IGET(915)),GRID1,IM,JM) - elseif(grib=='grib2') then +! if(grib=='grib1') then +! CALL GRIBIT(IGET(915),LVLS(1,IGET(915)),GRID1,IM,JM) + if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) fld_info(cfld)%ntrange=1 From 57154f5fcaeb8551b71ba5619ae6d8d60b819fa2 Mon Sep 17 00:00:00 2001 From: eric james Date: Thu, 10 Jun 2021 22:43:30 +0000 Subject: [PATCH 09/46] Changing field numbers to avoid conflict with existing RRFS-dev1 fields. --- sorc/ncep_post.fd/RQSTFLD.F | 22 +++++++++++----------- sorc/ncep_post.fd/SURFCE.f | 24 ++++++++---------------- 2 files changed, 19 insertions(+), 27 deletions(-) diff --git a/sorc/ncep_post.fd/RQSTFLD.F b/sorc/ncep_post.fd/RQSTFLD.F index 9e711b2af..2ceb0a00b 100644 --- a/sorc/ncep_post.fd/RQSTFLD.F +++ b/sorc/ncep_post.fd/RQSTFLD.F @@ -2469,37 +2469,37 @@ module RQSTFLD_mod & /1,'VTEMP AT FD HEIGHTS ',012,103, & & 'VTMP ON spec_alt_above_mean_sea_lvl'/ ! E. JAMES (NOAA GSL): 10 JUN 2021 -- Adding FFG and ARI exceedance grids - DATA IFILV(912),AVBL(912),IQ(912),IS(912),AVBLGRB2(912) & + DATA IFILV(913),AVBL(913),IQ(913),IS(913),AVBLGRB2(913) & & /1,'1H FFG EXCEEDANCE ',166,001, & & '1H FFG EXCD ON surface'/ - DATA IFILV(913),AVBL(913),IQ(913),IS(913),AVBLGRB2(913) & + DATA IFILV(914),AVBL(914),IQ(914),IS(914),AVBLGRB2(914) & & /1,'3H FFG EXCEEDANCE ',166,001, & & '3H FFG EXCD ON surface'/ - DATA IFILV(914),AVBL(914),IQ(914),IS(914),AVBLGRB2(914) & + DATA IFILV(915),AVBL(915),IQ(915),IS(915),AVBLGRB2(915) & & /1,'6H FFG EXCEEDANCE ',166,001, & & '6H FFG EXCD ON surface'/ - DATA IFILV(915),AVBL(915),IQ(915),IS(915),AVBLGRB2(915) & + DATA IFILV(916),AVBL(916),IQ(916),IS(916),AVBLGRB2(916) & & /1,'12H FFG EXCEEDANCE ',166,001, & & '12H FFG XCD ON surface'/ - DATA IFILV(916),AVBL(916),IQ(916),IS(916),AVBLGRB2(916) & + DATA IFILV(917),AVBL(917),IQ(917),IS(917),AVBLGRB2(917) & & /1,'6H 1Y ARI EXCEEDNCE ',166,001, & & '6H 1Y ARI ON surface '/ - DATA IFILV(917),AVBL(917),IQ(917),IS(917),AVBLGRB2(917) & + DATA IFILV(918),AVBL(918),IQ(918),IS(918),AVBLGRB2(918) & & /1,'6H 2Y ARI EXCEEDNCE ',166,001, & & '6H 2Y ARI ON surface '/ - DATA IFILV(918),AVBL(918),IQ(918),IS(918),AVBLGRB2(918) & + DATA IFILV(919),AVBL(919),IQ(919),IS(919),AVBLGRB2(919) & & /1,'6H 5Y ARI EXCEEDNCE ',166,001, & & '6H 5Y ARI ON surface '/ - DATA IFILV(919),AVBL(919),IQ(919),IS(919),AVBLGRB2(919) & + DATA IFILV(920),AVBL(920),IQ(920),IS(920),AVBLGRB2(920) & & /1,'6H 10Y ARI EXCEEDNCE',166,001, & & '6H 10Y ARI ON surface '/ - DATA IFILV(920),AVBL(920),IQ(920),IS(920),AVBLGRB2(920) & + DATA IFILV(921),AVBL(921),IQ(921),IS(921),AVBLGRB2(921) & & /1,'6H 25Y ARI EXCEEDNCE',166,001, & & '6H 25Y ARI ON surface '/ - DATA IFILV(921),AVBL(921),IQ(921),IS(921),AVBLGRB2(921) & + DATA IFILV(924),AVBL(924),IQ(924),IS(924),AVBLGRB2(924) & & /1,'6H 50Y ARI EXCEEDNCE',166,001, & & '6H 50Y ARI ON surface '/ - DATA IFILV(924),AVBL(924),IQ(924),IS(924),AVBLGRB2(924) & + DATA IFILV(925),AVBL(925),IQ(925),IS(925),AVBLGRB2(925) & & /1,'6H 100Y ARI EXCEDNCE',166,001, & & '6H 100Y ARI ON surface'/ ! CD and CH exchange coefficients diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index f74798308..0dfa2ce12 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3639,7 +3639,7 @@ SUBROUTINE SURFCE ! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG and ARI ! thresholds - IF (IGET(912).GT.0) THEN + IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& rdx,rdy) @@ -3703,11 +3703,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 -! if(grib=='grib1') then -! CALL GRIBIT(IGET(912),LVLS(1,IGET(912)),GRID1,IM,JM) if(grib=='grib2') then cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(912)) + fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) if(ITPREC>0) then fld_info(cfld)%ntrange=(IFHR-ID(18))/ITPREC else @@ -3731,7 +3729,7 @@ SUBROUTINE SURFCE enddo endif ENDIF - IF (IGET(913).GT.0) THEN + IF (IGET(914).GT.0) THEN ffgfile='ffg_03h.grib2' call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& rdx,rdy) @@ -3795,11 +3793,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 -! if(grib=='grib1') then -! CALL GRIBIT(IGET(913),LVLS(1,IGET(913)),GRID1,IM,JM) if(grib=='grib2') then cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) + fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) fld_info(cfld)%ntrange=1 ! fld_info(cfld)%tinvstat=IFHR-ID(18) if (ifhr.eq.3) then @@ -3816,7 +3812,7 @@ SUBROUTINE SURFCE enddo endif ENDIF - IF (IGET(914).GT.0) THEN + IF (IGET(915).GT.0) THEN ffgfile='ffg_06h.grib2' call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& rdx,rdy) @@ -3880,11 +3876,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 -! if(grib=='grib1') then -! CALL GRIBIT(IGET(914),LVLS(1,IGET(914)),GRID1,IM,JM) if(grib=='grib2') then cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) + fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) fld_info(cfld)%ntrange=1 ! fld_info(cfld)%tinvstat=IFHR-ID(18) if (ifhr.eq.6) then @@ -3901,7 +3895,7 @@ SUBROUTINE SURFCE enddo endif ENDIF - IF (IGET(915).GT.0) THEN + IF (IGET(916).GT.0) THEN ffgfile='ffg_12h.grib2' call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& rdx,rdy) @@ -3965,11 +3959,9 @@ SUBROUTINE SURFCE IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR ENDIF IF (ID(18).LT.0) ID(18) = 0 -! if(grib=='grib1') then -! CALL GRIBIT(IGET(915),LVLS(1,IGET(915)),GRID1,IM,JM) if(grib=='grib2') then cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) + fld_info(cfld)%ifld=IAVBLFLD(IGET(916)) fld_info(cfld)%ntrange=1 ! fld_info(cfld)%tinvstat=IFHR-ID(18) if (ifhr.eq.12) then From fcad9d3c4c9c13f9f42750dce8bea1fd5899fd1a Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 11 Jun 2021 15:13:27 +0000 Subject: [PATCH 10/46] Putting exceedance grids in flat files for testing in RRFS UPP. --- parm/fv3lam_post_avblflds.xml | 40 ++++++++ parm/fv3lam_rrfs.xml | 20 ++++ parm/postxconfig-NT-fv3lam_rrfs.txt | 150 +++++++++++++++++++++++++++- 3 files changed, 209 insertions(+), 1 deletion(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index a8b2879c1..c6ad43b7f 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -5545,6 +5545,46 @@ -4.0 + + 913 + 1H_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 914 + 3H_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 915 + 6H_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 916 + 12H_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + 927 SBTA167_ON_TOP_OF_ATMOS diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index 46547b148..7846b9497 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -1783,6 +1783,26 @@ -4.0 + + 1H_FFG_EXCEEDANCE + 5.0 + + + + 3H_FFG_EXCEEDANCE + 5.0 + + + + 6H_FFG_EXCEEDANCE + 5.0 + + + + 12H_FFG_EXCEEDANCE + 5.0 + + diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index e0a17cc2e..d5e4b3861 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -1,6 +1,6 @@ 2 222 -254 +258 BGDAWP 32769 ncep_nco @@ -9415,6 +9415,154 @@ isothermal ? ? ? +913 +1H_FFG_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +914 +3H_FFG_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +915 +6H_FFG_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +916 +12H_FFG_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? BGRD3D 32769 ncep_nco From a9b746e8a3bb1a8ce67e7bc0f9d03b6fb5cf5bfe Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 11 Jun 2021 18:34:54 +0000 Subject: [PATCH 11/46] Corrected the 1h and run total precip names for calculating exceedances in SURFCE.f --- sorc/ncep_post.fd/SURFCE.f | 278 +++++++++++++++++++------------------ 1 file changed, 142 insertions(+), 136 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 0dfa2ce12..d9878814f 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3659,50 +3659,52 @@ SUBROUTINE SURFCE allocate(mscValue(mscNlon,mscNlat)) endif DO i=1,mscNlon - msclon(i)=lonMin+(i-1)*dlon + msclon(i)=lonMin+(i-1)*dlon ENDDO DO i=1,mscNlat - msclat(i)=latMin+(i-1)*dlat + msclat(i)=latMin+(i-1)*dlat ENDDO ntot = nx*ny call read_grib2_sngle(ffgfile,ntot,height,mscValue) write(*,*) '1H FFG MAX, MIN:', & maxval(mscValue),minval(mscValue) - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .EQ. 0) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (PCP_BUCKET(I,J) .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ID(1:25) = 0 - ITPREC = NINT(TPREC) + ID(1:25) = 0 + ITPREC = NINT(TPREC) !mp - if (ITPREC .ne. 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif !mp - if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR =NINT(PREC_ACC_DT)/60 - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR.EQ.0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF (ID(18).LT.0) ID(18) = 0 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN +!$omp parallel do private(i,j) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .EQ. 0) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + IF (AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + END IF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) @@ -3749,50 +3751,52 @@ SUBROUTINE SURFCE allocate(mscValue(mscNlon,mscNlat)) endif DO i=1,mscNlon - msclon(i)=lonMin+(i-1)*dlon + msclon(i)=lonMin+(i-1)*dlon ENDDO DO i=1,mscNlat - msclat(i)=latMin+(i-1)*dlat + msclat(i)=latMin+(i-1)*dlat ENDDO ntot = nx*ny call read_grib2_sngle(ffgfile,ntot,height,mscValue) write(*,*) '3H FFG MAX, MIN:', & maxval(mscValue),minval(mscValue) - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .NE. 3) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (ACPREC(I,J)*1000. .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ID(1:25) = 0 - ITPREC = NINT(TPREC) + ID(1:25) = 0 + ITPREC = NINT(TPREC) !mp - if (ITPREC .ne. 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif !mp - if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR=NINT(PREC_ACC_DT)/60 - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR.EQ.0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF (ID(18).LT.0) ID(18) = 0 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN +!$omp parallel do private(i,j) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE.3) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) @@ -3841,41 +3845,42 @@ SUBROUTINE SURFCE call read_grib2_sngle(ffgfile,ntot,height,mscValue) write(*,*) '6H FFG MAX, MIN:', & maxval(mscValue),minval(mscValue) - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .NE. 6) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (ACPREC(I,J)*1000. .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ID(1:25) = 0 - ITPREC = NINT(TPREC) + ID(1:25) = 0 + ITPREC = NINT(TPREC) !mp - if (ITPREC .ne. 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif !mp - if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR=NINT(PREC_ACC_DT)/60 - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR.EQ.0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF (ID(18).LT.0) ID(18) = 0 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 6) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) @@ -3924,41 +3929,42 @@ SUBROUTINE SURFCE call read_grib2_sngle(ffgfile,ntot,height,mscValue) write(*,*) '12H FFG MAX, MIN:', & maxval(mscValue),minval(mscValue) - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .NE. 12) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (ACPREC(I,J)*1000. .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ID(1:25) = 0 - ITPREC = NINT(TPREC) + ID(1:25) = 0 + ITPREC = NINT(TPREC) !mp - if (ITPREC .ne. 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN .GE. 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif !mp - if(MODELNAME.EQ.'NCAR' .OR. MODELNAME.EQ.'RAPR') IFINCR=NINT(PREC_ACC_DT)/60 - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN .GE. 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR.EQ.0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN .GE. 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF (ID(18).LT.0) ID(18) = 0 + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 12) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 if(grib=='grib2') then cfld=cfld+1 fld_info(cfld)%ifld=IAVBLFLD(IGET(916)) From 576045cb0e1e3c23d638ea05fdf505915b02adf6 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 11 Jun 2021 18:49:15 +0000 Subject: [PATCH 12/46] Bug fix in SURFCE.f if statements. --- sorc/ncep_post.fd/SURFCE.f | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index d9878814f..10f507245 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3696,11 +3696,11 @@ SUBROUTINE SURFCE GRID1(I,J) = 0.0 ELSE IF (mscValue(I,J) .LE. 0.0) THEN GRID1(I,J) = 0.0 - IF (AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + ELSE IF (AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN GRID1(I,J) = 1.0 ELSE GRID1(I,J) = 0.0 - END IF + ENDIF ENDDO ENDDO ENDIF From 9aebc260625d6925c6f5e31c2ab4db6f0269b586 Mon Sep 17 00:00:00 2001 From: eric james Date: Wed, 7 Jul 2021 16:03:11 +0000 Subject: [PATCH 13/46] Removing changes to RQSTFLD.F since GRIB1 is no longer used in UPP. --- sorc/ncep_post.fd/RQSTFLD.F | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/sorc/ncep_post.fd/RQSTFLD.F b/sorc/ncep_post.fd/RQSTFLD.F index 2ceb0a00b..ce0609481 100644 --- a/sorc/ncep_post.fd/RQSTFLD.F +++ b/sorc/ncep_post.fd/RQSTFLD.F @@ -2468,40 +2468,6 @@ module RQSTFLD_mod DATA IFILV(911),AVBL(911),IQ(911),IS(911),AVBLGRB2(911) & & /1,'VTEMP AT FD HEIGHTS ',012,103, & & 'VTMP ON spec_alt_above_mean_sea_lvl'/ -! E. JAMES (NOAA GSL): 10 JUN 2021 -- Adding FFG and ARI exceedance grids - DATA IFILV(913),AVBL(913),IQ(913),IS(913),AVBLGRB2(913) & - & /1,'1H FFG EXCEEDANCE ',166,001, & - & '1H FFG EXCD ON surface'/ - DATA IFILV(914),AVBL(914),IQ(914),IS(914),AVBLGRB2(914) & - & /1,'3H FFG EXCEEDANCE ',166,001, & - & '3H FFG EXCD ON surface'/ - DATA IFILV(915),AVBL(915),IQ(915),IS(915),AVBLGRB2(915) & - & /1,'6H FFG EXCEEDANCE ',166,001, & - & '6H FFG EXCD ON surface'/ - DATA IFILV(916),AVBL(916),IQ(916),IS(916),AVBLGRB2(916) & - & /1,'12H FFG EXCEEDANCE ',166,001, & - & '12H FFG XCD ON surface'/ - DATA IFILV(917),AVBL(917),IQ(917),IS(917),AVBLGRB2(917) & - & /1,'6H 1Y ARI EXCEEDNCE ',166,001, & - & '6H 1Y ARI ON surface '/ - DATA IFILV(918),AVBL(918),IQ(918),IS(918),AVBLGRB2(918) & - & /1,'6H 2Y ARI EXCEEDNCE ',166,001, & - & '6H 2Y ARI ON surface '/ - DATA IFILV(919),AVBL(919),IQ(919),IS(919),AVBLGRB2(919) & - & /1,'6H 5Y ARI EXCEEDNCE ',166,001, & - & '6H 5Y ARI ON surface '/ - DATA IFILV(920),AVBL(920),IQ(920),IS(920),AVBLGRB2(920) & - & /1,'6H 10Y ARI EXCEEDNCE',166,001, & - & '6H 10Y ARI ON surface '/ - DATA IFILV(921),AVBL(921),IQ(921),IS(921),AVBLGRB2(921) & - & /1,'6H 25Y ARI EXCEEDNCE',166,001, & - & '6H 25Y ARI ON surface '/ - DATA IFILV(924),AVBL(924),IQ(924),IS(924),AVBLGRB2(924) & - & /1,'6H 50Y ARI EXCEEDNCE',166,001, & - & '6H 50Y ARI ON surface '/ - DATA IFILV(925),AVBL(925),IQ(925),IS(925),AVBLGRB2(925) & - & /1,'6H 100Y ARI EXCEDNCE',166,001, & - & '6H 100Y ARI ON surface'/ ! CD and CH exchange coefficients DATA IFILV(922),AVBL(922),IQ(922),IS(922),AVBLGRB2(922) & & /1,'10M DRAG EXCH COEF ',252,105, & !table 2 From 0068b368da78a770a2c6427cf0b60063c26507c8 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 9 Jul 2021 20:19:38 +0000 Subject: [PATCH 14/46] Merging NOAA-GSL development on top of NOAA-EMC UPP for testing. --- sorc/ncep_post.fd/CLDRAD.f | 44 ++-- sorc/ncep_post.fd/INITPOST_NETCDF.f | 31 ++- sorc/ncep_post.fd/SURFCE.f | 366 +++++++++++++++++++++++++++- sorc/ncep_post.fd/grib2_module.f | 327 ++++++++++++++++++++++++- 4 files changed, 736 insertions(+), 32 deletions(-) diff --git a/sorc/ncep_post.fd/CLDRAD.f b/sorc/ncep_post.fd/CLDRAD.f index b76625746..68b0ee6bc 100644 --- a/sorc/ncep_post.fd/CLDRAD.f +++ b/sorc/ncep_post.fd/CLDRAD.f @@ -1720,11 +1720,9 @@ SUBROUTINE CLDRAD ENDIF ENDIF -! GSD CLOUD CEILING ALGORITHM -! J. Kenyon, 3 Feb 2017: formerly described here as -! "GSD CLOUD BOTTOM HEIGHT". An alternative (experimental) -! GSD cloud ceiling algorithm is offered further below. +! GSD CLOUD CEILING ALGORITHMS... +! Parameter 408: legacy ceiling diagnostic IF (IGET(408)>0) THEN !- imported from RUC post ! -- constants for effect of snow on ceiling @@ -1750,15 +1748,9 @@ SUBROUTINE CLDRAD DO I=1,IM ! !- imported from RUC post - IF(MODELNAME == 'RAPR') then - CLDZ(I,J) = SPVAL - pcldbase = SPVAL - zcldbase = SPVAL - ELSE - CLDZ(I,J) = -5000. - pcldbase = -50000. - zcldbase = -5000. - ENDIF + CLDZ(I,J) = SPVAL + pcldbase = SPVAL + zcldbase = SPVAL watericemax = -99999. do k=1,lm LL=LM-k+1 @@ -1946,7 +1938,7 @@ SUBROUTINE CLDRAD end do write(6,*)'No. pts w/ LIFR ceiling =',nlifr -! GSD CLOUD BOTTOM HEIGHTS +! Parameter 408: legacy ceiling diagnostic IF (IGET(408)>0) THEN !!$omp parallel do private(i,j) DO J=JSTA,JEND @@ -1964,6 +1956,7 @@ SUBROUTINE CLDRAD ! BEGIN EXPERIMENTAL GSD CEILING DIAGNOSTICS... ! J. Kenyon, 4 Feb 2017: this approach uses model-state cloud fractions +! Parameter 487: experimental ceiling diagnostic #1 IF (IGET(487)>0) THEN ! set some constants for ceiling adjustment in snow (retained from legacy algorithm, also in calvis.f) rhoice = 970. @@ -2003,7 +1996,6 @@ SUBROUTINE CLDRAD end do ! k ! now search aloft... - ceil(I,J) = zceil ! default is no ceiling found loop471:do k=2,lm k1 = k if (cldfra(k) >= ceiling_thresh_cldfra) then ! go to 472 ! found ceiling @@ -2027,23 +2019,19 @@ SUBROUTINE CLDRAD vertvis = 1000.*min(90., const1/betav) if (vertvis < zceil-FIS(I,J)*GI ) then zceil = FIS(I,J)*GI + vertvis - do k2=2,LM - k1 = k2 - if (ZMID(i,j,lm-k2+1) > zceil) cycle loop471 - end do exit loop471 end if end if + + exit loop471 endif ! cldfra(k) >= ceiling_thresh_cldfra end do loop471 - - else - ceil(I,J) = zceil - endif + endif ! cldfra_max >= ceiling_thresh_cldfra + ceil(I,J) = zceil ENDDO ! i loop ENDDO ! j loop -! proceed to gridding +! Parameter 487: experimental ceiling diagnostic #1 DO J=JSTA,JEND DO I=1,IM GRID1(I,J) = ceil(I,J) @@ -2065,6 +2053,8 @@ SUBROUTINE CLDRAD ! the GSD cloud-base height, and parameter 798 will be the ! corresponding cloud-base pressure. (J. Kenyon, 4 Nov 2019) +! Parameters 711/798: experimental ceiling diagnostic #2 (height and +! pressure, respectively) IF ((IGET(711)>0) .OR. (IGET(798)>0)) THEN ! set minimum cloud fraction to represent a ceiling ceiling_thresh_cldfra = 0.4 @@ -2226,7 +2216,8 @@ SUBROUTINE CLDRAD if (allocated(full_ceil)) deallocate(full_ceil) if (allocated(full_fis)) deallocate(full_fis) - ! GSD CLOUD BOTTOM HEIGHT + ! Parameters 711/798: experimental ceiling diagnostic #2 (height and + ! pressure, respectively) IF (IGET(711)>0) THEN !!$omp parallel do private(i,j) DO J=JSTA,JEND @@ -2241,7 +2232,8 @@ SUBROUTINE CLDRAD endif ENDIF - ! GSD CLOUD BOTTOM PRESSURE + ! Parameters 711/798: experimental ceiling diagnostic #2 (height and + ! pressure, respectively) IF (IGET(798)>0) THEN !!$omp parallel do private(i,j) DO J=JSTA,JEND diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 891893c7b..88c32087b 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -45,7 +45,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) o3vdiff, o3prod, o3tndy, mwpv, unknown, vdiffzacce, zgdrag,cnvctummixing, & vdiffmacce, mgdrag, cnvctvmmixing, ncnvctcfrac, cnvctumflx, cnvctdmflx, & cnvctzgdrag, sconvmois, cnvctmgdrag, cnvctdetmflx, duwt, duem, dusd, dudp, & - wh, qqg, ref_10cm + wh, qqg, ref_10cm, qqnifa, qqnwfa use vrbls2d, only: f, pd, fis, pblh, ustar, z0, ths, qs, twbs, qwbs, avgcprate, & cprate, avgprec, prec, lspa, sno, si, cldefi, th10, q10, tshltr, pshltr, & tshltr, albase, avgalbedo, avgtcdc, czen, czmean, mxsnal, radot, sigt4, & @@ -698,7 +698,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! sample print point ii = im/2 - jj = jm/2 + jj = (jsta+jend)/2 print *,me,'max(gdlat)=', maxval(gdlat), & 'max(gdlon)=', maxval(gdlon) @@ -1092,7 +1092,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! instantaneous 3D cloud fraction - VarName='cldfra' + VarName='cldfra_bl' ! do l=1,lm call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & @@ -1110,6 +1110,31 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! ,REF_10CM(isa,jsa,l),isa,jsa,l ! enddo +! turbulence kinetic energy (QKE = 2*TKE) + VarName='qke' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,q2(1,jsta_2l,1)) + do l=1,lm + do j=jsta,jend + do i=1,im + q2(i,j,l)=q2(i,j,l)/2.0 + enddo + enddo + enddo + +! ice-friendly aerosol number concentration + VarName='nifa' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,qqnifa(1,jsta_2l,1)) + +! water-friendly aerosol number concentration + VarName='nwfa' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,qqnwfa(1,jsta_2l,1)) + VarName='land' call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,sm) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 3af081583..84098d5a0 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -102,6 +102,7 @@ SUBROUTINE SURFCE lp1, imp_physics, me, asrfc, tsrfc, pt, pdtop, & mpi_comm_comp, im, jm, prec_acc_dt1 use rqstfld_mod, only: iget, lvls, id, iavblfld, lvlsxml + use grib2_module, only: read_grib2_head, read_grib2_sngle use upp_physics, only: fpvsnew, CALRH !- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - implicit none @@ -129,7 +130,8 @@ SUBROUTINE SURFCE t1d, q1d, zwet, & smcdry, smcmax,doms, domr, & domip, domzr, rsmin, smcref,& - rcq, rct, rcsoil, gc, rcs + rcq, rct, rcsoil, gc, rcs, & + mscValue real, dimension(im,jsta:jend) :: evp real, dimension(im,jsta_2l:jend_2u) :: egrid1, egrid2 @@ -139,18 +141,27 @@ SUBROUTINE SURFCE ! , ua, va real, allocatable, dimension(:,:,:) :: sleet, rain, freezr, snow ! real, dimension(im,jm,nalg) :: sleet, rain, freezr, snow - + real, allocatable, dimension(:,:) :: ylat, xlon + real, allocatable, dimension(:) :: msclon, msclat !GSD REAL totprcp, snowratio,t2,rainl ! + integer NLON,NLAT,NTOT,var_scale integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed + NX,NY,NZ,MSCNLON,MSCNLAT,MSCNLEV,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es + RLONMIN,RLATMAX,RLAT,RLON + + real*8 RDX,RDY,DLON,DLAT,LONMIN,LATMIN,LONMAX,LATMAX + + character(len=256) :: ffgfile + logical, parameter :: debugprint = .false. @@ -3660,6 +3671,357 @@ SUBROUTINE SURFCE endif ENDIF +! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG and ARI +! thresholds + IF (IGET(913).GT.0) THEN + ffgfile='ffg_01h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '1H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN +!$omp parallel do private(i,j) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .EQ. 0) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) + if(ITPREC>0) then + fld_info(cfld)%ntrange=(IFHR-ID(18))/ITPREC + else + fld_info(cfld)%ntrange=0 + endif + fld_info(cfld)%tinvstat=ITPREC + if(fld_info(cfld)%ntrange.eq.0) then + if (ifhr.eq.0) then + fld_info(cfld)%tinvstat=0 + else + fld_info(cfld)%tinvstat=1 + endif + fld_info(cfld)%ntrange=1 + end if +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + IF (IGET(914).GT.0) THEN + ffgfile='ffg_03h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '3H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN +!$omp parallel do private(i,j) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE.3) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) +THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) + fld_info(cfld)%ntrange=1 +! fld_info(cfld)%tinvstat=IFHR-ID(18) + if (ifhr.eq.3) then + fld_info(cfld)%tinvstat=3 + else + fld_info(cfld)%tinvstat=0 + endif +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + IF (IGET(915).GT.0) THEN + ffgfile='ffg_06h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '6H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 6) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) +THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) + fld_info(cfld)%ntrange=1 +! fld_info(cfld)%tinvstat=IFHR-ID(18) + if (ifhr.eq.6) then + fld_info(cfld)%tinvstat=6 + else + fld_info(cfld)%tinvstat=0 + endif +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + IF (IGET(916).GT.0) THEN + ffgfile='ffg_12h.grib2' + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + var_scale=1 + mscNlon=nx + mscNlat=ny + mscNlev=nz + dlon=rdx + dlat=rdy + lonMin=rlonmin + lonMax=lonMin+dlon*(mscNlon-1) + latMax=rlatmax + latMin=latMax-dlat*(mscNlat-1) + if (.not. allocated(msclon)) then + allocate(msclon(mscNlon)) + allocate(msclat(mscNlat)) + allocate(mscValue(mscNlon,mscNlat)) + endif + DO i=1,mscNlon + msclon(i)=lonMin+(i-1)*dlon + ENDDO + DO i=1,mscNlat + msclat(i)=latMin+(i-1)*dlat + ENDDO + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + write(*,*) '12H FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + ID(1:25) = 0 + ITPREC = NINT(TPREC) +!mp + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif +!mp + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .NE. 12) THEN + GRID1(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + GRID1(I,J) = 0.0 + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) +THEN + GRID1(I,J) = 1.0 + ELSE + GRID1(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(916)) + fld_info(cfld)%ntrange=1 +! fld_info(cfld)%tinvstat=IFHR-ID(18) + if (ifhr.eq.12) then + fld_info(cfld)%tinvstat=12 + else + fld_info(cfld)%tinvstat=0 + endif +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo + enddo + endif + ENDIF + ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR ! PRECIPITATION BUCKETS - accumulated between output times ! 'BUCKET1 TOTAL PRECIP ' diff --git a/sorc/ncep_post.fd/grib2_module.f b/sorc/ncep_post.fd/grib2_module.f index 47bf52965..d0ca00419 100644 --- a/sorc/ncep_post.fd/grib2_module.f +++ b/sorc/ncep_post.fd/grib2_module.f @@ -94,7 +94,8 @@ module grib2_module character*255 fl_nametbl,fl_gdss3 logical :: first_grbtbl ! - public num_pset,pset,nrecout,gribit2,grib_info_init,first_grbtbl,grib_info_finalize + public num_pset,pset,nrecout,gribit2,grib_info_init,first_grbtbl,grib_info_finalize,read_grib2_head,read_grib2_sngle + real(8), EXTERNAL :: timef !------------------------------------------------------------------------------------- ! contains @@ -989,6 +990,330 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs end subroutine gengrb2msg ! !-------------------------------------------------------------------------------------- +! +! E. JAMES: 10 JUN 2021 - Adding section to read in GRIB2 files for comparison +! within UPP. Two new subroutines added below. +! + subroutine read_grib2_head(filenameG2,nx,ny,nz,rlonmin,rlatmax,rdx,rdy) +! +!--- read grib2 file head information +! + use grib_mod + implicit none + character*256,intent(in) :: filenameG2 + integer, intent(out) :: nx,ny,nz + real, intent(out) :: rlonmin,rlatmax + real*8, intent(out) :: rdx,rdy +! +! + type(gribfield) :: gfld + logical :: expand=.true. + integer :: ifile + character(len=1),allocatable,dimension(:) :: cgrib + integer,parameter :: msk1=32000 + integer :: lskip, lgrib,iseek + integer :: currlen + integer :: icount , lengrib + integer :: listsec0(3) + integer :: listsec1(13) + integer year, month, day, hour, minute, second, fcst + integer :: numfields,numlocal,maxlocal,ierr + integer :: grib_edition + integer :: itot +! real :: dx,dy,lat1,lon1 + real :: scale_factor,scale_factor2 +! +! + integer :: nn,n,j,iret + real :: fldmax,fldmin,sum +! +! + scale_factor=1.0e6 + scale_factor2=1.0e3 + ifile=10 + loopfile: do nn=1,1 +! write(6,*) 'read in grib2 file head', trim(filenameG2) + lskip=0 + lgrib=0 + iseek=0 + icount=0 + itot=0 + currlen=0 +! Open GRIB2 file + call baopenr(ifile,trim(filenameG2),iret) + if (iret.eq.0) then + VERSION: do + ! Search opend file for the next GRIB2 messege (record). + call skgb(ifile,iseek,msk1,lskip,lgrib) + ! Check for EOF, or problem + if (lgrib.eq.0) then + exit + endif + ! Check size, if needed allocate more memory. + if (lgrib.gt.currlen) then + if (allocated(cgrib)) deallocate(cgrib) + allocate(cgrib(lgrib)) + currlen=lgrib + endif + ! Read a given number of bytes from unblocked file. + call baread(ifile,lskip,lgrib,lengrib,cgrib) + if(lgrib.ne.lengrib) then + write(*,*) 'ERROR, read_grib2 lgrib ne lengrib', & + lgrib,lengrib + stop 1234 + endif + iseek=lskip+lgrib + icount=icount+1 + ! Unpack GRIB2 field + call gb_info(cgrib,lengrib,listsec0,listsec1, & + numfields,numlocal,maxlocal,ierr) + if(ierr.ne.0) then + write(6,*) 'Error querying GRIB2 message',ierr + stop + endif + itot=itot+numfields + grib_edition=listsec0(2) + if (grib_edition.ne.2) then + exit VERSION + endif +! write(*,*) 'listsec0=',listsec0 +! write(*,*) 'listsec1=',listsec1 +! write(*,*) 'numfields=',numfields +! get information form grib2 file + n=1 + call gf_getfld(cgrib,lengrib,n,.FALSE.,expand,gfld,ierr) + year =gfld%idsect(6) !(FOUR-DIGIT) YEAR OF THE DATA + month =gfld%idsect(7) ! MONTH OF THE DATA + day =gfld%idsect(8) ! DAY OF THE DATA + hour =gfld%idsect(9) ! HOUR OF THE DATA + minute=gfld%idsect(10) ! MINUTE OF THE DATA + second=gfld%idsect(11) ! SECOND OF THE DATA + write(*,*) 'year,month,day,hour,minute,second=' + write(*,*) year,month,day,hour,minute,second + write(*,*) 'source center =',gfld%idsect(1) + write(*,*) 'Indicator of model =',gfld%ipdtmpl(5) + write(*,*) 'observation level (m)=',gfld%ipdtmpl(12) + write(*,*) 'map projection=',gfld%igdtnum + if (gfld%igdtnum.eq.0) then ! Lat/Lon grid aka Cylindrical + ! Equidistant + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(17)/scale_factor + rdy = gfld%igdtmpl(18)/scale_factor + rlatmax = gfld%igdtmpl(12)/scale_factor + rlonmin = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(15)/scale_factor2 + rdy = gfld%igdtmpl(16)/scale_factor2 + rlatmax = gfld%igdtmpl(10)/scale_factor + rlonmin = gfld%igdtmpl(11)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else + write(*,*) 'unknown projection' + stop 1235 + endif + call gf_free(gfld) + enddo VERSION ! skgb + endif + CALL BACLOSE(ifile,ierr) + nullify(gfld%local) + if (allocated(cgrib)) deallocate(cgrib) + enddo loopfile + return + end subroutine read_grib2_head +! +!--- +! + subroutine read_grib2_sngle(filenameG2,ntot,height,var) +! +!--- read grib2 files +! + use grib_mod + implicit none + character*256,intent(in) :: filenameG2 + integer, intent(in) :: ntot + real, intent(out) :: var(ntot) + integer, intent(out) :: height +! +! + type(gribfield) :: gfld + logical :: expand=.true. + integer :: ifile + character(len=1),allocatable,dimension(:) :: cgrib + integer,parameter :: msk1=32000 + integer :: lskip, lgrib,iseek + integer :: currlen + integer :: icount , lengrib + integer :: listsec0(3) + integer :: listsec1(13) + integer year, month, day, hour, minute, second, fcst + integer :: numfields,numlocal,maxlocal,ierr + integer :: grib_edition + integer :: itot + integer :: nx,ny + real :: dx,dy,lat1,lon1,rtnum + real :: ref_value,bin_scale_fac,dec_scale_fac,bit_number,field_type + real :: bit_map + real :: scale_factor,scale_factor2 +! +! + integer :: nn,n,j,iret + real :: fldmax,fldmin,sum +! +! + scale_factor=1.0e6 + scale_factor2=1.0e3 + ifile=12 + loopfile: do nn=1,1 +! write(6,*) 'read mosaic in grib2 file ', trim(filenameG2) + lskip=0 + lgrib=0 + iseek=0 + icount=0 + itot=0 + currlen=0 +! Open GRIB2 file + call baopenr(ifile,trim(filenameG2),iret) + if (iret.eq.0) then + VERSION: do + ! Search opend file for the next GRIB2 messege (record). + call skgb(ifile,iseek,msk1,lskip,lgrib) + ! Check for EOF, or problem + if (lgrib.eq.0) then + exit + endif + ! Check size, if needed allocate more memory. + if (lgrib.gt.currlen) then + if (allocated(cgrib)) deallocate(cgrib) + allocate(cgrib(lgrib)) + currlen=lgrib + endif + ! Read a given number of bytes from unblocked file. + call baread(ifile,lskip,lgrib,lengrib,cgrib) + if(lgrib.ne.lengrib) then + write(*,*) 'ERROR, read_grib2 lgrib ne lengrib', & + lgrib,lengrib + stop 1234 + endif +! write(*,*) 'lengrib=',lengrib + iseek=lskip+lgrib + icount=icount+1 + ! Unpack GRIB2 field + call gb_info(cgrib,lengrib,listsec0,listsec1, & + numfields,numlocal,maxlocal,ierr) + if(ierr.ne.0) then + write(6,*) 'Error querying GRIB2 message',ierr + stop + endif + itot=itot+numfields + grib_edition=listsec0(2) + if (grib_edition.ne.2) then + exit VERSION + endif +! write(*,*) 'listsec0=',listsec0 +! write(*,*) 'listsec1=',listsec1 +! write(*,*) 'numfields=',numfields! +! get information form grib2 file + n=1 + call gf_getfld(cgrib,lengrib,n,.FALSE.,expand,gfld,ierr) + year =gfld%idsect(6) !(FOUR-DIGIT) YEAR OF THE DATA + month =gfld%idsect(7) ! MONTH OF THE DATA + day =gfld%idsect(8) ! DAY OF THE DATA + hour =gfld%idsect(9) ! HOUR OF THE DATA + minute=gfld%idsect(10) ! MINUTE OF THE DATA + second=gfld%idsect(11) ! SECOND OF THE DATA +! write(*,*) 'year,month,day,hour,minute,second=' +! write(*,*) year,month,day,hour,minute,second +! write(*,*) 'source center =',gfld%idsect(1) +! write(*,*) 'Indicator of model =',gfld%ipdtmpl(5) +! write(*,*) 'observation level (m)=',gfld%ipdtmpl(12) +! write(*,*) 'map projection=',gfld%igdtnum + height=gfld%ipdtmpl(12) + if (gfld%igdtnum.eq.0) then ! Lat/Lon grid aka Cylindrical + ! Equidistant + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(17)/scale_factor + dy = gfld%igdtmpl(18)/scale_factor + lat1 = gfld%igdtmpl(12)/scale_factor + lon1 = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',dx,dy +! write(*,*) 'lat1,lon1=',lat1,lon1 + else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(15)/scale_factor2 + dy = gfld%igdtmpl(16)/scale_factor2 + lat1 = gfld%igdtmpl(10)/scale_factor + lon1 = gfld%igdtmpl(11)/scale_factor +! write(*,*) 'In read_grib2_sngle:' +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',dx,dy +! write(*,*) 'lat1,lon1=',lat1,lon1 + rtnum = gfld%idrtnum +! write(*,*) 'rtnum=',rtnum + ref_value = gfld%idrtmpl(1) + bin_scale_fac = gfld%idrtmpl(2) + dec_scale_fac = gfld%idrtmpl(3) + bit_number = gfld%idrtmpl(4) + field_type = gfld%idrtmpl(5) + bit_map = gfld%ibmap +! write(*,*) 'ref_value=',ref_value +! write(*,*) 'bin_scale_fac=',bin_scale_fac +! write(*,*) 'dec_scale_fac=',dec_scale_fac +! write(*,*) 'bit_number=',bit_number +! write(*,*) 'field_type=',field_type +! write(*,*) 'bit map indicator=',bit_map + else + write(*,*) 'unknown projection' + stop 1235 + endif + call gf_free(gfld) + ! Continue to unpack GRIB2 field. + NUM_FIELDS: do n = 1, numfields + ! e.g. U and V would =2, otherwise its usually =1 + call gf_getfld(cgrib,lengrib,n,.true.,expand,gfld,ierr) + if (ierr.ne.0) then + write(*,*) ' ERROR extracting field gf_getfld = ',ierr + cycle + endif +! write(*,*) 'gfld%ndpts=',n,gfld%ndpts +! write(*,*) 'gfld%ngrdpts=',n,gfld%ngrdpts +! write(*,*) 'gfld%unpacked=',n,gfld%unpacked + fldmax=gfld%fld(1) + fldmin=gfld%fld(1) + sum=gfld%fld(1) + if(ntot .ne. gfld%ngrdpts) then + write(*,*) 'Error, wrong dimension ',ntot, gfld%ngrdpts + stop 1234 + endif + do j=1,gfld%ngrdpts + var(j)=gfld%fld(j) + enddo +! write(*,*) 'j,first,last:',j,var(954370),var(953920) +! write(*,*) 'height,max,min',height,maxval(var),minval(var) + call gf_free(gfld) + enddo NUM_FIELDS + enddo VERSION ! skgb + endif + CALL BACLOSE(ifile,ierr) + if (allocated(cgrib)) deallocate(cgrib) + nullify(gfld%local) + enddo loopfile + return + end subroutine read_grib2_sngle +! +!---------------------------------------------------------------------------------------- ! subroutine g2sec3tmpl40(nx,nY,lat1,lon1,lat2,lon2,lad,ds1,len3,igds,ifield3) implicit none From d3c989080164dfc93d6d990d914b23e8146f2abf Mon Sep 17 00:00:00 2001 From: eric james Date: Sun, 11 Jul 2021 04:13:57 +0000 Subject: [PATCH 15/46] Correcting minor typos in SURFCE.f to allow testing. --- sorc/ncep_post.fd/SURFCE.f | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 84098d5a0..f6bbd801d 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -150,12 +150,12 @@ SUBROUTINE SURFCE integer NLON,NLAT,NTOT,var_scale integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & - IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed + IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, & NX,NY,NZ,MSCNLON,MSCNLAT,MSCNLEV,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & - qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es + qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es, & RLONMIN,RLATMAX,RLAT,RLON real*8 RDX,RDY,DLON,DLAT,LONMIN,LATMIN,LONMAX,LATMAX @@ -3822,8 +3822,7 @@ SUBROUTINE SURFCE GRID1(I,J) = 0.0 ELSE IF (mscValue(I,J) .LE. 0.0) THEN GRID1(I,J) = 0.0 - ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) -THEN + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN GRID1(I,J) = 1.0 ELSE GRID1(I,J) = 0.0 @@ -3907,8 +3906,7 @@ SUBROUTINE SURFCE GRID1(I,J) = 0.0 ELSE IF (mscValue(I,J) .LE. 0.0) THEN GRID1(I,J) = 0.0 - ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) -THEN + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN GRID1(I,J) = 1.0 ELSE GRID1(I,J) = 0.0 @@ -3992,8 +3990,7 @@ SUBROUTINE SURFCE GRID1(I,J) = 0.0 ELSE IF (mscValue(I,J) .LE. 0.0) THEN GRID1(I,J) = 0.0 - ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) -THEN + ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN GRID1(I,J) = 1.0 ELSE GRID1(I,J) = 0.0 From 51419b7fb0713d6730281433fa5caf369d157255 Mon Sep 17 00:00:00 2001 From: "Ming.Hu" Date: Tue, 13 Jul 2021 21:43:03 +0000 Subject: [PATCH 16/46] Update code based on testing with RRFS cases. --- parm/fv3lam_post_avblflds.xml | 43 +- parm/fv3lam_rrfs.xml | 3356 +++++ parm/postxconfig-NT-fv3lam_rrfs.txt | 17647 ++++++++++++++++++++++++++ sorc/ncep_post.fd/CALUPDHEL.f | 2 +- sorc/ncep_post.fd/INITPOST_NETCDF.f | 39 +- 5 files changed, 21064 insertions(+), 23 deletions(-) create mode 100755 parm/fv3lam_rrfs.xml create mode 100644 parm/postxconfig-NT-fv3lam_rrfs.txt diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index 4f9b7b4ab..a8b2879c1 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -3545,10 +3545,10 @@ 408 - GSD_HGT_ON_CLOUD_BASE + GSD_HGT_ON_CLOUD_CEILING GSD_geopotential height on cloud base HGT - cloud_base + cloud_ceilng 6.0 @@ -3563,10 +3563,10 @@ 410 - GSD_VIS_ON_CLOUD_TOP - GSD_visibility on cloud top + GSD_VIS_ON_SURFACE + GSD_visibility on surface VIS - cloud_top + surface 6.0 @@ -4171,9 +4171,9 @@ 487 - GSD_PRES_ON_CLOUD_BASE - PRES - cloud_base + GSD_EXP_CEILING + CEIL + ceiling 3.0 @@ -5264,6 +5264,14 @@ 3.0 + + 711 + GSD_EXP_CEILING_2 + CEIL + cloud_base + 3.0 + + 727 GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km @@ -5387,6 +5395,25 @@ 4.0 + + 766 + GSD_NCWFA_ON_HYBRID_LVL + PMTF + NCEP + hybrid_lvl + 3.0 + + + + 767 + GSD_NCIFA_ON_HYBRID_LVL + PMTC + NCEP + hybrid_lvl + 3.0 + + + 768 GSD_ECHOTOP_ON_CLOUD_TOP diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml new file mode 100755 index 000000000..46547b148 --- /dev/null +++ b/parm/fv3lam_rrfs.xml @@ -0,0 +1,3356 @@ + + + + + BGDAWP + 32769 + ncep_nco + v2003 + local_tab_yes1 + fcst + oper + fcst + fcst + hour + noaa_fsl_boulder + hrrr + complex_packing_spatial_diff + 2nd_ord_sptdiff + fltng_pnt + lossless + + + PRES_ON_HYBRID_LVL + PRES + 1. 2. + 6.0 + + + + HGT_ON_HYBRID_LVL + HGT + 1. 2. + 4.0 + + + + TMP_ON_HYBRID_LVL + TMP + 1. 2. + 4.0 + + + + POT_ON_HYBRID_LVL + POT + 1. 2. + 4.0 + + + + DPT_ON_HYBRID_LVL + DPT + 1. 2. + 5.0 + + + + SPFH_ON_HYBRID_LVL + SPFH + 1. + 7.0 + + + + RH_ON_HYBRID_LVL + RH + 1. + 4.0 + + + + UGRD_ON_HYBRID_LVL + UGRD + 1. 2. + 4.0 + + + + VGRD_ON_HYBRID_LVL + VGRD + 1. 2. + 4.0 + + + + VVEL_ON_HYBRID_LVL + VVEL + 1. + 5.0 + + + + DZDT_ON_HYBRID_LVL + DZDT + 1. + -5.0 + + + + TKE_ON_HYBRID_LVL + TKE + 1. 2. + 3.0 + + + + RWMR_ON_HYBRID_LVL + RWMR + 1. 2. + 3.0 + + + + SNMR_ON_HYBRID_LVL + SNMR + 1. 2. + 3.0 + + + + RIME_ON_HYBRID_LVL + RIME + NCEP + 1. 2. + 3.0 + + + + TCOND_ON_HYBRID_LVL + TCOND + NCEP + 1. 2. + 3.0 + + + + REFD_ON_HYBRID_LVL + REFD + NCEP + 1. 2. + 4.0 + + + + BMIXL_ON_HYBRID_LVL + BMIXL + NCEP + 1. + 3.0 + + + + HGT_ON_ISOBARIC_SFC + HGT + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 6.0 + + + + TMP_ON_ISOBARIC_SFC + TMP + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + DPT_ON_ISOBARIC_SFC + DPT + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 5.0 + + + + SPFH_ON_ISOBARIC_SFC + SPFH + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + RH_ON_ISOBARIC_SFC + RH + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 2.0 + + + + UGRD_ON_ISOBARIC_SFC + UGRD + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + VGRD_ON_ISOBARIC_SFC + VGRD + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + VVEL_ON_ISOBARIC_SFC + VVEL + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 5.0 + + + + DZDT_ON_ISOBARIC_SFC + DZDT + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + -5.0 + + + + ABSV_ON_ISOBARIC_SFC + ABSV + 20000. 25000. 30000. 40000. 50000. 70000. 75000. 85000. 92500. 100000. + 4.0 + + + + STRM_ON_ISOBARIC_SFC + STRM + 25000. 50000. + 3.0 + + + + ICMR_ON_ISOBARIC_SFC + ICMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 6.0 + + + + CLWMR_ON_ISOBARIC_SFC + CLWMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 4.0 + + + + RWMR_ON_ISOBARIC_SFC + RWMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + GRLE_ON_ISOBARIC_SFC + GRLE + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + SNMR_ON_ISOBARIC_SFC + SNMR + 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. +47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. + 3.0 + + + + MSLET_ON_MEAN_SEA_LVL + MSLET + NCEP + 6.0 + + + + MAPS_PRMSL_ON_MEAN_SEA_LVL + PRMSL + 6.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMP + 4.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + SPFH + 4.0 + + + + DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + DPT + 4.0 + + + + RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + RH + 3.0 + + + + UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + UGRD + 10. + 4.0 + + + + VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + VGRD + 10. + 4.0 + + + + GUST_ON_SURFACE + GUST + 3.0 + + + + PLPL_ON_SPEC_PRES_ABOVE_GRND + PLPL + NCEP + 25500. + 0. + 6.0 + + + + POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + POT + 10. + 5.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + SPFH + 10. + 3.0 + + + + PRES_ON_SURFACE + PRES + 6.0 + + + + HGT_ON_SURFACE + HGT + 6.0 + + + + POT_ON_SURFACE + POT + 5.0 + + + + SPFH_ON_SURFACE + SPFH + 3.0 + + + + TMP_ON_SURFACE + TMP + 4.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC_3m + TSOIL + 3. + 3.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC + TSOIL + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 4.0 + + + + SOILW_ON_DEPTH_BEL_LAND_SFC + SOILW + NCEP + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 3.0 + + + + SOILL_ON_DEPTH_BEL_LAND_SFC + SOILL + NCEP + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 3.0 + + + + SOILM_ON_DEPTH_BEL_LAND_SFC + SOILM + 2 + 0. + 2 + 200. + 3.0 + + + + CNWAT_ON_SURFACE + CNWAT + NCEP + 1.0 + + + + WEASD_ON_SURFACE + WEASD + 4.0 + + + + SNOWC_ON_SURFACE + SNOWC + NCEP + 3.0 + + + + SFEXC_ON_SURFACE + SFEXC + NCEP + 3.0 + + + + VEG_ON_SURFACE + VEG + 3.0 + + + + VGTYP_ON_SURFACE + VGTYP + NCEP + 3.0 + + + + SOTYP_ON_SURFACE + SOTYP + 3.0 + + + + SNFALB_ON_SURFACE + SNFALB + NCEP + 3.0 + + + + MXSALB_ON_SURFACE + MXSALB + NCEP + 3.0 + + + + CCOND_ON_SURFACE + CCOND + NCEP + 3.0 + + + + RCS_ON_SURFACE + RCS + NCEP + 3.0 + + + + RCT_ON_SURFACE + RCT + NCEP + 5.0 + + + + RCQ_ON_SURFACE + RCQ + NCEP + 3.0 + + + + RCSOL_ON_SURFACE + RCSOL + NCEP + 3.0 + + + + SMREF_ON_SURFACE + SMREF + NCEP + 3.0 + + + + POROS_ON_SURFACE + POROS + NCEP + 3.0 + + + + RLYRS_ON_SURFACE + RLYRS + NCEP + 3.0 + + + + RSMIN_ON_SURFACE + RSMIN + NCEP + 3.0 + + + + SNOD_ON_SURFACE + SNOD + 6.0 + + + + SMDRY_ON_SURFACE + SMDRY + NCEP + 3.0 + + + + WILT_ON_SURFACE + WILT + NCEP + 3.0 + + + + MSTAV_ON_DEPTH_BEL_LAND_SFC + MSTAV + NCEP + 2 + 0. + 2 + 100. + 3.0 + + + + INST_GFLUX_ON_SURFACE + GFLUX + NCEP + 3.0 + + + + LFTX_ON_ISOBARIC_SFC_500-1000hpa + LFTX + NCEP + 50000. + 100000. + 3.0 + + + + 4LFTX_ON_SPEC_PRES_ABOVE_GRND + 4LFTX + NCEP + 18000. + 0. + 3.0 + + + + PLI_ON_SPEC_PRES_ABOVE_GRND + PLI + 3000. + 0. + 3.0 + + + + CAPE_ON_SURFACE + CAPE + 4.0 + + + + BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 9000. + 0. + 4.0 + + + + UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 25500. + 0. + 4.0 + + + + CIN_ON_SURFACE + CIN + 4.0 + + + + BEST_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 9000. + 0. + 4.0 + + + + UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 25500. + 0. + 4.0 + + + + PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR + PWAT + 3.0 + + + + HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND + HLCY + 3000. 1000. + 4.0 + + + + USTM_ON_SPEC_HGT_LVL_ABOVE_GRND + USTM + NCEP + 6000. + 4.0 + + + + VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND + VSTM + NCEP + 6000. + 4.0 + + + + ACM_APCP_ON_SURFACE + APCP + -4.0 + + + + ACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + CACM_APCP_ON_SURFACE + APCP + -4.0 + + + + CACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + ACM_WEASD_ON_SURFACE + WEASD + 4.0 + + + + ACM_SNOM_ON_SURFACE + SNOM + 4.0 + + + + ACM_SSRUN_ON_SURFACE + SSRUN + NCEP + 6.0 + + + + ACM_BGRUN_ON_SURFACE + BGRUN + NCEP + 6.0 + + + + ACM_WATR_ON_SURFACE + WATR + 6.0 + + + + INST_CRAIN_ON_SURFACE + CRAIN + NCEP + 1.0 + + + + CSNOW_ON_SURFACE + CSNOW + NCEP + 1.0 + + + + CICEP_ON_SURFACE + CICEP + NCEP + 1.0 + + + + CFRZR_ON_SURFACE + CFRZR + NCEP + 1.0 + + + + INST_PRATE_ON_SURFACE + PRATE + 3.0 + + + + CPOFP_ON_SURFACE + CPOFP + NCEP + 4.0 + + + + CLWMR_ON_HYBRID_LVL + CLWMR + 1. 2. + 3.0 + + + + ICMR_ON_HYBRID_LVL + ICMR + 1. 2. + 3.0 + + + + GRLE_ON_HYBRID_LVL + GRLE + 1. 2. + 3.0 + + + + TCDC_ON_HYBRID_LVL + TCDC + 1. 2. + 3.0 + + + + LCDC_ON_LOW_CLOUD_LYR + LCDC + 3.0 + + + + MCDC_ON_MID_CLOUD_LYR + MCDC + 3.0 + + + + HCDC_ON_HIGH_CLOUD_LYR + HCDC + 3.0 + + + + INST_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_CDLYR_ON_ENTIRE_ATMOS + CDLYR + NCEP + 3.0 + + + + GSD_VIS_ON_SURFACE + VIS + 6.0 + + + + HGT_ON_LVL_OF_ADIAB_COND_FROM_SFC + HGT + 5.0 + + + + PRES_ON_LVL_OF_ADIAB_COND_FROM_SFC + PRES + 6.0 + + + + INST_USWRF_ON_SURFACE + USWRF + NCEP + 4.0 + + + + INST_ULWRF_ON_SURFACE + ULWRF + NCEP + 4.0 + + + + AVE_DSWRF_ON_SURFACE + DSWRF + NCEP + 3.0 + + + + AVE_DLWRF_ON_SURFACE + DLWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_SURFACE + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_SURFACE + ULWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_TOP_OF_ATMOS + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_TOP_OF_ATMOS + ULWRF + NCEP + 3.0 + + + + INST_ULWRF_ON_TOP_OF_ATMOS + ULWRF + NCEP + 4.0 + + + + BRTMP_ON_TOP_OF_ATMOS + BRTMP + 3.0 + + + + INST_DSWRF_ON_SURFACE + DSWRF + NCEP + 4.0 + + + + INST_DLWRF_ON_SURFACE + DLWRF + NCEP + 4.0 + + + + INST_CSDSF_ON_SURFACE + CSDSF + NCEP + 4.0 + + + + SFCR_ON_SURFACE + SFCR + 2.7 + + + + FRICV_ON_SURFACE + FRICV + NCEP + 4.0 + + + + CD_ON_SURFACE + CD + NCEP + 3.0 + + + + UFLX_ON_SURFACE + UFLX + 3.0 + + + + VFLX_ON_SURFACE + VFLX + 3.0 + + + + AVE_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + AVE_GFLUX_ON_SURFACE + GFLUX + NCEP + 4.0 + + + + AVE_SNOHF_ON_SURFACE + SNOHF + NCEP + 4.0 + + + + AVE_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + ACM_EVP_ON_SURFACE + EVP + 4.0 + + + + ACM_PEVAP_ON_SURFACE + PEVAP + NCEP + 4.0 + + + + INST_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + INST_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + NLAT_ON_SURFACE + NLAT + NCEP + 4.0 + + + + ELON_ON_SURFACE + ELON + NCEP + 4.0 + + + + LAND_ON_SURFACE + LAND + 1.0 + + + + ICEC_ON_SURFACE + ICEC + 3.0 + + + + ALBDO_ON_SURFACE + ALBDO + 3.0 + + + + WTMP_ON_SURFACE + WTMP + 5.0 + + + + PRES_ON_TROPOPAUSE + PRES + 6.0 + + + + HGT_ON_TROPOPAUSE + HGT + 6.0 + + + + TMP_ON_TROPOPAUSE + TMP + 3.0 + + + + POT_ON_TROPOPAUSE + POT + 5.0 + + + + UGRD_ON_TROPOPAUSE + UGRD + 4.0 + + + + VGRD_ON_TROPOPAUSE + VGRD + 4.0 + + + + VWSH_ON_TROPOPAUSE + VWSH + NCEP + 3.0 + + + + VUCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km + VUCSH + 3.0 + + + + VVCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km + VVCSH + 3.0 + + + + TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + TMP + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 3.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + TMP + 30. 50. 80. 100. + 3.0 + + + + UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + UGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + UGRD + 30. 50. 80. 100. + 4.0 + + + + VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + VGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + VGRD + 30. 50. 80. 100. + 4.0 + + + + SPFH_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + SPFH + 305. + 5.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + SPFH + 30. 50. 80. 100. + 5.0 + + + + PRES_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT + PRES + 30. 50. 80. 100. + 3.0 + + + + HGT_ON_0C_ISOTHERM + HGT + 6.0 + + + + RH_ON_0C_ISOTHERM + RH + 2.0 + + + + HGT_ON_HGHST_TROP_FRZ_LVL + HGT + 6.0 + + + + HGT_ON_LWST_LVL_OF_WET_BULB_ZERO + HGT + -5.0 + + + + PRES_ON_SPEC_PRES_ABOVE_GRND + PRES + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 6.0 + + + + TMP_ON_SPEC_PRES_ABOVE_GRND + TMP + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 3.0 + + + + POT_ON_SPEC_PRES_ABOVE_GRND + POT + 3000. + 0. + 4.0 + + + + DPT_ON_SPEC_PRES_ABOVE_GRND + DPT + 3000. + 0. + 3.0 + + + + SPFH_ON_SPEC_PRES_ABOVE_GRND + SPFH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 5.0 + + + + RH_ON_SPEC_PRES_ABOVE_GRND + RH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 2.0 + + + + PWAT_ON_SPEC_PRES_ABOVE_GRND + PWAT + 3000. + 0. + 3.0 + + + + UGRD_ON_SPEC_PRES_ABOVE_GRND + UGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + VGRD_ON_SPEC_PRES_ABOVE_GRND + VGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + VVEL_ON_SPEC_PRES_ABOVE_GRND + VVEL + 3000. 9000. 18000. + 0. 6000. 15000. + 5.0 + + + + PRES_ON_CLOUD_BASE + PRES + 6.0 + + + + PRES_ON_CLOUD_TOP + PRES + 6.0 + + + + TMP_ON_CLOUD_TOP + TMP + 5.0 + + + + HGT_ON_CLOUD_BASE + HGT + 6.0 + + + + HGT_ON_CLOUD_TOP + HGT + 6.0 + + + + TMP_ON_CLOUD_TOP + TMP + 5.0 + + + + PRES_ON_MAX_WIND + PRES + 6.0 + + + + HGT_ON_MAX_WIND + HGT + 6.0 + + + + UGRD_ON_MAX_WIND + UGRD + 4.0 + + + + VGRD_ON_MAX_WIND + VGRD + 4.0 + + + + REFC_ON_ENTIRE_ATMOS + REFC + NCEP + 4.0 + + + + REFZR_ON_ENTIRE_ATMOS + REFZR + NCEP + -4.0 + + + + REFZI_ON_ENTIRE_ATMOS + REFZI + NCEP + -4.0 + + + + REFD_ON_SPEC_HGT_LVL_ABOVE_GRND + REFD + NCEP + 4000. 1000. + 4.0 + + + + REFZR_ON_SPEC_HGT_LVL_ABOVE_GRND + REFZR + NCEP + 4000. 1000. + -4.0 + + + + REFZI_ON_SPEC_HGT_LVL_ABOVE_GRND + REFZI + NCEP + 4000. 1000. + -4.0 + + + + HPBL_ON_SURFACE + HPBL + NCEP + 6.0 + + + + PRES_ON_GRID_SCALE_CLOUD_BOT_LVL + PRES + 6.0 + + + + PRES_ON_GRID_SCALE_CLOUD_TOP_LVL + PRES + 6.0 + + + + TCOLW_ON_ENTIRE_ATMOS + TCOLW + NCEP + 5.0 + + + + TCOLI_ON_ENTIRE_ATMOS + TCOLI + NCEP + 5.0 + + + + TCOLR_ON_ENTIRE_ATMOS + TCOLR + NCEP + 5.0 + + + + TCOLS_ON_ENTIRE_ATMOS + TCOLS + NCEP + 5.0 + + + + TCOLC_ON_ENTIRE_ATMOS + TCOLC + NCEP + 5.0 + + + + TCOLG_ON_ENTIRE_ATMOS + TCOLG + 5.0 + + + + TCLSW_ON_ENTIRE_ATMOS + TCLSW + NCEP + 5.0 + + + + TCOLM_ON_ENTIRE_ATMOS + TCOLM + NCEP + 5.0 + + + + HGT_ON_LWST_BOT_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR + HGT + 6.0 + + + + HGT_ON_HGHST_TOP_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR + HGT + 5.0 + + + + GSD_HGT_ON_CLOUD_CEILING + HGT + -3.0 + + + + GSD_EXP_CEILING + CEIL + -3.0 + + + + GSD_EXP_CEILING_2 + CEIL + -3.0 + + + + ACM_LSPA_ON_SURFACE + LSPA + NCEP + 3.0 + + + + PRES_ON_TOP_OF_ATMOS + PRES + 3.0 + + + + SWHR_ON_ENTIRE_ATMOS + SWHR + NCEP + 5.0 + + + + LWHR_ON_ENTIRE_ATMOS + LWHR + NCEP + 5.0 + + + + AVE_LRGHR_ON_ENTIRE_ATMOS + LRGHR + NCEP + 5.0 + + + + TMP_ON_SIGMA_LVL_HPC + TMP + 4 + 9000. 8500. 8000. 7500. 7000. + -4.0 + + + + PBLREG_ON_SURFACE + PBLREG + 2.0 + + + + UGRD_ON_PLANETARY_BOUND_LYR + UGRD + -4.0 + + + + VGRD_ON_PLANETARY_BOUND_LYR + VGRD + -4.0 + + + + HGT_ON_PLANETARY_BOUND_LYR + HGT + -4.0 + + + + MIXHT_ON_SURFACE + MIXHT + -4.0 + + + + RETOP_ON_ENTIRE_ATMOS_SINGLE_LYR + RETOP + NCEP + 6.0 + + + + VRATE_ON_PLANETARY_BOUND_LYR + VRATE + NCEP + 3.0 + + + + HINDEX_ON_SURFACE + HINDEX + 3.0 + + + + MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMAX + 4.0 + + + + MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMIN + 4.0 + + + + MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MAXRH + -2.0 + + + + MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MINRH + NCEP + -2.0 + + + + MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXUW + NCEP + 10. + -4.0 + + + + MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXVW + NCEP + 10. + -4.0 + + + + MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + WIND + -4.0 + + + + MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km + MAXREF + NCEP + -3.0 + + + + MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + MAXUVV + NCEP + -3.0 + + + + MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + MAXDVV + NCEP + -3.0 + + + + MAX_PRATE_ON_SURFACE + PRATE + 4.0 + + + + MAX_SRWEQ_ON_SURFACE + SRWEQ + 4.0 + + + + LTNG_ON_SURFACE + LTNG + NCEP + 1.0 + + + + VIL_ON_ENTIRE_ATMOS + VIL + 4.0 + + + + UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + UPHL + NCEP + -3.0 + + + + MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MXUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MNUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MNUPHL + NCEP + -3.0 + + + + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MXUPHL + NCEP + -3.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + 5.0 + + + + MAX_REF_ON_ISOTHERMAL_-10C + MAXREF + NCEP + -3.0 + + + + REFD_ON_ISOTHERMAL + REFD + NCEP + isothermal + 263. + -4.0 + + + + + + BGRD3D + 32769 + ncep_nco + v2003 + local_tab_yes1 + fcst + oper + fcst + fcst + hour + noaa_fsl_boulder + hrrr + complex_packing_spatial_diff + 2nd_ord_sptdiff + fltng_pnt + lossless + + + HGT_ON_ISOBARIC_SFC + HGT + 25000. 50000. 70000. 85000. + 6.0 + + + + TMP_ON_ISOBARIC_SFC + TMP + 25000. 50000. 70000. 85000. 95000. + 3.0 + + + + RH_ON_ISOBARIC_SFC + RH + 25000. 50000. 70000. 85000. + 2.0 + + + + UGRD_ON_ISOBARIC_SFC + UGRD + 25000. 50000. 70000. 85000. + 4.0 + + + + VGRD_ON_ISOBARIC_SFC + VGRD + 25000. 50000. 70000. 85000. + 4.0 + + + + VVEL_ON_ISOBARIC_SFC + VVEL + 25000. 50000. 70000. 85000. + 5.0 + + + + SPFH_ON_ISOBARIC_SFC + SPFH + 25000. 50000. 70000. 85000. + 4.0 + + + + ABSV_ON_ISOBARIC_SFC + ABSV + 25000. 50000. 70000. 85000. + 4.0 + + + + PRES_ON_HYBRID_LVL + PRES + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 6.0 + + + + HGT_ON_HYBRID_LVL + HGT + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + TMP_ON_HYBRID_LVL + TMP + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + SPFH_ON_HYBRID_LVL + SPFH + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 7.0 + + + + UGRD_ON_HYBRID_LVL + UGRD + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + VGRD_ON_HYBRID_LVL + VGRD + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 4.0 + + + + VVEL_ON_HYBRID_LVL + VVEL + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 5.0 + + + + DZDT_ON_HYBRID_LVL + DZDT + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + -5.0 + + + + TKE_ON_HYBRID_LVL + TKE + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + MSLET_ON_MEAN_SEA_LVL + MSLET + NCEP + 6.0 + + + + MAPS_PRMSL_ON_MEAN_SEA_LVL + PRMSL + 6.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMP + 4.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + SPFH + 4.0 + + + + DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + DPT + 4.0 + + + + RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + RH + 3.0 + + + + UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + UGRD + 10. + 4.0 + + + + VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + VGRD + 10. + 4.0 + + + + POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + POT + 10. + 5.0 + + + + SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + SPFH + 10. + 3.0 + + + + PRES_ON_SURFACE + PRES + 6.0 + + + + HGT_ON_SURFACE + HGT + 6.0 + + + + POT_ON_SURFACE + POT + 5.0 + + + + SPFH_ON_SURFACE + SPFH + 3.0 + + + + TMP_ON_SURFACE + TMP + 4.0 + + + + MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + MAXUVV + NCEP + -3.0 + + + + MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + MAXDVV + NCEP + -3.0 + + + + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MXUPHL + NCEP + -3.0 + + + + MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MXUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + MNUPHL + NCEP + -3.0 + + + + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + MNUPHL + NCEP + -3.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 + 5.0 + + + + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + 5.0 + + + + MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXUW + NCEP + 10. + -4.0 + + + + MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + MAXVW + NCEP + 10. + -4.0 + + + + MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km + MAXREF + NCEP + -3.0 + + + + MAX_REF_ON_ISOTHERMAL_-10C + MAXREF + NCEP + -3.0 + + + + REFD_ON_ISOTHERMAL + REFD + NCEP + isothermal + 263. + -4.0 + + + + MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMAX + 4.0 + + + + MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + TMIN + 4.0 + + + + MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MAXRH + -2.0 + + + + MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MINRH + NCEP + -2.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC + TSOIL + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 4.0 + + + + SOILW_ON_DEPTH_BEL_LAND_SFC + SOILW + NCEP + 2 2 2 2 + 0. 10. 40. 100. + 2 2 2 2 + 10. 40. 100. 200. + 3.0 + + + + SOILM_ON_DEPTH_BEL_LAND_SFC + SOILM + 2 + 0. + 2 + 200. + 3.0 + + + + SFEXC_ON_SURFACE + SFEXC + NCEP + 3.0 + + + + VEG_ON_SURFACE + VEG + 3.0 + + + + MSTAV_ON_DEPTH_BEL_LAND_SFC + MSTAV + NCEP + 2 + 0. + 2 + 100. + 3.0 + + + + TSOIL_ON_DEPTH_BEL_LAND_SFC_3m + TSOIL + 3. + 3.0 + + + + INST_GFLUX_ON_SURFACE + GFLUX + NCEP + 3.0 + + + + CNWAT_ON_SURFACE + CNWAT + NCEP + 1.0 + + + + WEASD_ON_SURFACE + WEASD + 4.0 + + + + 4LFTX_ON_SPEC_PRES_ABOVE_GRND + 4LFTX + NCEP + 18000. + 0. + 3.0 + + + + PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR + PWAT + 3.0 + + + + ACM_APCP_ON_SURFACE + APCP + -4.0 + + + + ACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + CACM_APCP_ON_SURFACE + APCP + -4.0 + + + + CACM_NCPCP_ON_SURFACE + NCPCP + -4.0 + + + + ACM_WEASD_ON_SURFACE + WEASD + 4.0 + + + + ACM_SNOM_ON_SURFACE + SNOM + 4.0 + + + + ACM_SSRUN_ON_SURFACE + SSRUN + NCEP + 4.0 + + + + ACM_BGRUN_ON_SURFACE + BGRUN + NCEP + 4.0 + + + + INST_CRAIN_ON_SURFACE + CRAIN + NCEP + 1.0 + + + + CSNOW_ON_SURFACE + CSNOW + NCEP + 1.0 + + + + CICEP_ON_SURFACE + CICEP + NCEP + 1.0 + + + + CFRZR_ON_SURFACE + CFRZR + NCEP + 1.0 + + + + INST_PRATE_ON_SURFACE + PRATE + 3.0 + + + + CPOFP_ON_SURFACE + CPOFP + NCEP + 4.0 + + + + CLWMR_ON_HYBRID_LVL + CLWMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + ICMR_ON_HYBRID_LVL + ICMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + GRLE_ON_HYBRID_LVL + GRLE + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + TCDC_ON_HYBRID_LVL + TCDC + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + RWMR_ON_HYBRID_LVL + RWMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + SNMR_ON_HYBRID_LVL + SNMR + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + GSD_NCWFA_ON_HYBRID_LVL + PMTF + NCEP + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + GSD_NCIFA_ON_HYBRID_LVL + PMTC + NCEP + 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. +25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. + 3.0 + + + + LCDC_ON_LOW_CLOUD_LYR + LCDC + 3.0 + + + + MCDC_ON_MID_CLOUD_LYR + MCDC + 3.0 + + + + HCDC_ON_HIGH_CLOUD_LYR + HCDC + 3.0 + + + + INST_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_CDLYR_ON_ENTIRE_ATMOS + CDLYR + NCEP + 3.0 + + + + INST_USWRF_ON_SURFACE + USWRF + NCEP + 4.0 + + + + INST_ULWRF_ON_SURFACE + ULWRF + NCEP + 4.0 + + + + AVE_DSWRF_ON_SURFACE + DSWRF + NCEP + 3.0 + + + + AVE_DLWRF_ON_SURFACE + DLWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_SURFACE + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_SURFACE + ULWRF + NCEP + 3.0 + + + + AVE_USWRF_ON_TOP_OF_ATMOS + USWRF + NCEP + 3.0 + + + + AVE_ULWRF_ON_TOP_OF_ATMOS + ULWRF + NCEP + 3.0 + + + + INST_DSWRF_ON_SURFACE + DSWRF + NCEP + 4.0 + + + + INST_DLWRF_ON_SURFACE + DLWRF + NCEP + 4.0 + + + + INST_CSDSF_ON_SURFACE + CSDSF + NCEP + 4.0 + + + + SFCR_ON_SURFACE + SFCR + 2.7 + + + + FRICV_ON_SURFACE + FRICV + NCEP + 4.0 + + + + CD_ON_SURFACE + CD + NCEP + 3.0 + + + + UFLX_ON_SURFACE + UFLX + 3.0 + + + + VFLX_ON_SURFACE + VFLX + 3.0 + + + + AVE_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + AVE_GFLUX_ON_SURFACE + GFLUX + NCEP + 4.0 + + + + AVE_SNOHF_ON_SURFACE + SNOHF + NCEP + 4.0 + + + + AVE_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + ACM_EVP_ON_SURFACE + EVP + 4.0 + + + + ACM_PEVAP_ON_SURFACE + PEVAP + NCEP + 4.0 + + + + INST_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + INST_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + NLAT_ON_SURFACE + NLAT + NCEP + 4.0 + + + + ELON_ON_SURFACE + ELON + NCEP + 4.0 + + + + LAND_ON_SURFACE + LAND + 1.0 + + + + ICEC_ON_SURFACE + ICEC + 3.0 + + + + LMH_ON_SURFACE + LMH + NCEP + 2.0 + + + + LMV_ON_SURFACE + LMV + NCEP + 2.0 + + + + ALBDO_ON_SURFACE + ALBDO + 3.0 + + + + WTMP_ON_SURFACE + WTMP + 5.0 + + + + PRES_ON_SPEC_PRES_ABOVE_GRND + PRES + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 6.0 + + + + TMP_ON_SPEC_PRES_ABOVE_GRND + TMP + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 3.0 + + + + POT_ON_SPEC_PRES_ABOVE_GRND + POT + 3000. + 0. + 4.0 + + + + DPT_ON_SPEC_PRES_ABOVE_GRND + DPT + 3000. + 0. + 3.0 + + + + SPFH_ON_SPEC_PRES_ABOVE_GRND + SPFH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 5.0 + + + + RH_ON_SPEC_PRES_ABOVE_GRND + RH + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 2.0 + + + + PWAT_ON_SPEC_PRES_ABOVE_GRND + PWAT + 3000. + 0. + 3.0 + + + + UGRD_ON_SPEC_PRES_ABOVE_GRND + UGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + VGRD_ON_SPEC_PRES_ABOVE_GRND + VGRD + 3000. 6000. 9000. 12000. 15000. 18000. + 0. 3000. 6000. 9000. 12000. 15000. + 4.0 + + + + ACM_LSPA_ON_SURFACE + LSPA + NCEP + 3.0 + + + + PRES_ON_TOP_OF_ATMOS + PRES + 3.0 + + + + PRES_ON_HYBRID_LVL_1L + PRES + 1. + 21. + 3.0 + + + + PRES_ON_HYBRID_LVL_LLM + PRES + 1. + 61. + 3.0 + + + + CNWAT_ON_SURFACE + CNWAT + NCEP + 1.0 + + + + INST_GFLUX_ON_SURFACE + GFLUX + NCEP + 3.0 + + + + LFTX_ON_ISOBARIC_SFC_500-1000hpa + LFTX + NCEP + 50000. + 100000. + 3.0 + + + + CAPE_ON_SURFACE + CAPE + 4.0 + + + + BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 9000. + 0. + 4.0 + + + + UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND + CAPE + 25500. + 0. + 4.0 + + + + CIN_ON_SURFACE + CIN + 4.0 + + + + BEST_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 18000. + 0. + 4.0 + + + + MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 9000. + 0. + 4.0 + + + + UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND + CIN + 25500. + 0. + 4.0 + + + + PLPL_ON_SPEC_PRES_ABOVE_GRND + PLPL + NCEP + 25500. + 0. + 6.0 + + + + HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND + HLCY + 3000. 1000. + 4.0 + + + + USTM_ON_SPEC_HGT_LVL_ABOVE_GRND + USTM + NCEP + 6000. + 4.0 + + + + VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND + VSTM + NCEP + 6000. + 4.0 + + + + LCDC_ON_LOW_CLOUD_LYR + LCDC + 3.0 + + + + MCDC_ON_MID_CLOUD_LYR + MCDC + 3.0 + + + + HCDC_ON_HIGH_CLOUD_LYR + HCDC + 3.0 + + + + AVE_TCDC_ON_ENTIRE_ATMOS + TCDC + 3.0 + + + + AVE_CDLYR_ON_ENTIRE_ATMOS + CDLYR + NCEP + 3.0 + + + + PRES_ON_CLOUD_BASE + PRES + 6.0 + + + + PRES_ON_CLOUD_TOP + PRES + 6.0 + + + + TMP_ON_CLOUD_TOP + TMP + 5.0 + + + + AVE_GFLUX_ON_SURFACE + GFLUX + NCEP + 4.0 + + + + AVE_SNOHF_ON_SURFACE + SNOHF + NCEP + 4.0 + + + + ACM_EVP_ON_SURFACE + EVP + 4.0 + + + + INST_SHTFL_ON_SURFACE + SHTFL + 4.0 + + + + INST_LHTFL_ON_SURFACE + LHTFL + 4.0 + + + + PRES_ON_TROPOPAUSE + PRES + 6.0 + + + + HGT_ON_TROPOPAUSE + HGT + 6.0 + + + + TMP_ON_TROPOPAUSE + TMP + 3.0 + + + + UGRD_ON_TROPOPAUSE + UGRD + 4.0 + + + + VGRD_ON_TROPOPAUSE + VGRD + 4.0 + + + + VWSH_ON_TROPOPAUSE + VWSH + NCEP + 3.0 + + + + TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + TMP + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 3.0 + + + + UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + UGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + VGRD + 305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. + 4.0 + + + + HGT_ON_0C_ISOTHERM + HGT + 6.0 + + + + RH_ON_0C_ISOTHERM + RH + 2.0 + + + + HGT_ON_HGHST_TROP_FRZ_LVL + HGT + 6.0 + + + + PRES_ON_MAX_WIND + PRES + 6.0 + + + + HGT_ON_MAX_WIND + HGT + 6.0 + + + + UGRD_ON_MAX_WIND + UGRD + 4.0 + + + + VGRD_ON_MAX_WIND + VGRD + 4.0 + + + + MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + WIND + -4.0 + + + + HGT_ON_CLOUD_BASE + HGT + 6.0 + + + + HGT_ON_CLOUD_TOP + HGT + 6.0 + + + + GSD_VIS_ON_SURFACE + VIS + 6.0 + + + + REFC_ON_ENTIRE_ATMOS + REFC + NCEP + 4.0 + + + + PRES_ON_GRID_SCALE_CLOUD_BOT_LVL + PRES + 6.0 + + + + PRES_ON_GRID_SCALE_CLOUD_TOP_LVL + PRES + 6.0 + + + + TCOLW_ON_ENTIRE_ATMOS + TCOLW + NCEP + 5.0 + + + + TCOLI_ON_ENTIRE_ATMOS + TCOLI + NCEP + 5.0 + + + + TCOLR_ON_ENTIRE_ATMOS + TCOLR + NCEP + 5.0 + + + + TCOLS_ON_ENTIRE_ATMOS + TCOLS + NCEP + 5.0 + + + + TCOLC_ON_ENTIRE_ATMOS + TCOLC + NCEP + 5.0 + + + + TCOLG_ON_ENTIRE_ATMOS + TCOLG + 5.0 + + + + VGTYP_ON_SURFACE + VGTYP + NCEP + 3.0 + + + + SOTYP_ON_SURFACE + SOTYP + 3.0 + + + + CCOND_ON_SURFACE + CCOND + NCEP + 3.0 + + + + HPBL_ON_SURFACE + HPBL + NCEP + 6.0 + + + + SNOD_ON_SURFACE + SNOD + 6.0 + + + + SBSNO_ON_SURFACE + SBSNO + NCEP + 3.0 + + + + SMDRY_ON_SURFACE + SMDRY + NCEP + 3.0 + + + + POROS_ON_SURFACE + POROS + NCEP + 3.0 + + + + RSMIN_ON_SURFACE + RSMIN + NCEP + 3.0 + + + + RLYRS_ON_SURFACE + RLYRS + NCEP + 3.0 + + + + WILT_ON_SURFACE + WILT + NCEP + 3.0 + + + + SMREF_ON_SURFACE + SMREF + NCEP + 3.0 + + + + RCS_ON_SURFACE + RCS + NCEP + 3.0 + + + + RCT_ON_SURFACE + RCT + NCEP + 5.0 + + + + RCQ_ON_SURFACE + RCQ + NCEP + 3.0 + + + + RCSOL_ON_SURFACE + RCSOL + NCEP + 3.0 + + + + PEVPR_ON_SURFACE + PEVPR + NCEP + 6.0 + + + + GUST_ON_SURFACE + GUST + 3.0 + + + + HGT_ON_LWST_LVL_OF_WET_BULB_ZERO + HGT + -5.0 + + + + LAI_ON_SURFACE + LAI + NCEP + -3.0 + + + + INST_CSDSF_ON_SURFACE + CSDSF + NCEP + 4.0 + + + + TCDC_ON_SIGMA_LVLS + TCDC + 4 + 9975. 9915. 9835. 9745. 9650. 9490. 9260. 9015. 8755. 8480. 8190. 7890. 7585. 7185. 6690. 6180. 5470. 4550. 3595. 2605. 1580. 530. + 3.0 + + + + HGT_ON_PLANETARY_BOUND_LYR + HGT + -4.0 + + + + MIXHT_ON_SURFACE + MIXHT + -4.0 + + + + TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + TMP + 10. + -4.0 + + + + AVE_SNOWC_ON_SURFACE + SNOWC + NCEP + 3.0 + + + + AVE_PRES_ON_SURFACE + PRES + 5.0 + + + + AVE_TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + TMP + 10. + -4.0 + + + + AVE_AKHS_ON_SURFACE + AKHS + NCEP + 3.0 + + + + AVE_AKMS_ON_SURFACE + AKMS + NCEP + 3.0 + + + + diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt new file mode 100644 index 000000000..e0a17cc2e --- /dev/null +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -0,0 +1,17647 @@ +2 +222 +254 +BGDAWP +32769 +ncep_nco +v2003 +local_tab_yes1 +fcst +oper +fcst +fcst +hour +noaa_fsl_boulder +hrrr +complex_packing_spatial_diff +2nd_ord_sptdiff +fltng_pnt +lossless +1 +PRES_ON_HYBRID_LVL +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +77 +HGT_ON_HYBRID_LVL +? +1 +tmpl4_0 +HGT +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +2 +TMP_ON_HYBRID_LVL +? +1 +tmpl4_0 +TMP +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +3 +POT_ON_HYBRID_LVL +? +1 +tmpl4_0 +POT +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +4 +DPT_ON_HYBRID_LVL +? +1 +tmpl4_0 +DPT +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +5 +SPFH_ON_HYBRID_LVL +? +1 +tmpl4_0 +SPFH +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +7.0 +0 +0 +0 +? +? +? +6 +RH_ON_HYBRID_LVL +? +1 +tmpl4_0 +RH +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +7 +UGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +UGRD +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +8 +VGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +VGRD +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +9 +VVEL_ON_HYBRID_LVL +? +1 +tmpl4_0 +VVEL +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +264 +DZDT_ON_HYBRID_LVL +? +1 +tmpl4_0 +DZDT +? +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +11 +TKE_ON_HYBRID_LVL +? +1 +tmpl4_0 +TKE +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +181 +RWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +RWMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +182 +SNMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +SNMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +187 +RIME_ON_HYBRID_LVL +? +1 +tmpl4_0 +RIME +NCEP +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +199 +TCOND_ON_HYBRID_LVL +? +1 +tmpl4_0 +TCOND +NCEP +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +250 +REFD_ON_HYBRID_LVL +? +1 +tmpl4_0 +REFD +NCEP +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +146 +BMIXL_ON_HYBRID_LVL +? +1 +tmpl4_0 +BMIXL +NCEP +? +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +12 +HGT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +HGT +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +13 +TMP_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +TMP +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +15 +DPT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +DPT +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +16 +SPFH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +SPFH +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +17 +RH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +RH +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +18 +UGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +UGRD +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +19 +VGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VGRD +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +20 +VVEL_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VVEL +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +284 +DZDT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +DZDT +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +21 +ABSV_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +ABSV +? +? +isobaric_sfc +0 +? +10 +20000. 25000. 30000. 40000. 50000. 70000. 75000. 85000. 92500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +86 +STRM_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +STRM +? +? +isobaric_sfc +0 +? +2 +25000. 50000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +166 +ICMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +ICMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +153 +CLWMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +CLWMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +183 +RWMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +RWMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +416 +GRLE_ON_ISOBARIC_SFC +Graupel mixing ration on isobaric surface +1 +tmpl4_0 +GRLE +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +184 +SNMR_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +SNMR +? +? +isobaric_sfc +0 +? +46 +200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +23 +MSLET_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +MSLET +NCEP +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +445 +MAPS_PRMSL_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +PRMSL +? +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +106 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +112 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +113 +DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +DPT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +114 +RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +RH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +64 +UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +UGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +65 +VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +VGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +245 +GUST_ON_SURFACE +? +1 +tmpl4_0 +GUST +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +246 +PLPL_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PLPL +NCEP +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +158 +POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +POT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +159 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +24 +PRES_ON_SURFACE +? +1 +tmpl4_0 +PRES +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +25 +HGT_ON_SURFACE +? +1 +tmpl4_0 +HGT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +27 +POT_ON_SURFACE +? +1 +tmpl4_0 +POT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +28 +SPFH_ON_SURFACE +? +1 +tmpl4_0 +SPFH +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +26 +TMP_ON_SURFACE +? +1 +tmpl4_0 +TMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +115 +TSOIL_ON_DEPTH_BEL_LAND_SFC_3m +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +0 +? +1 +3. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +116 +TSOIL_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +117 +SOILW_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILW +NCEP +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +225 +SOILL_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILL +NCEP +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +36 +SOILM_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILM +? +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +118 +CNWAT_ON_SURFACE +? +1 +tmpl4_0 +CNWAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +119 +WEASD_ON_SURFACE +? +1 +tmpl4_0 +WEASD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +120 +SNOWC_ON_SURFACE +? +1 +tmpl4_0 +SNOWC +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +169 +SFEXC_ON_SURFACE +? +1 +tmpl4_0 +SFEXC +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +170 +VEG_ON_SURFACE +? +1 +tmpl4_0 +VEG +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +218 +VGTYP_ON_SURFACE +? +1 +tmpl4_0 +VGTYP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +219 +SOTYP_ON_SURFACE +? +1 +tmpl4_0 +SOTYP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +226 +SNFALB_ON_SURFACE +? +1 +tmpl4_0 +SNFALB +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +227 +MXSALB_ON_SURFACE +? +1 +tmpl4_0 +MXSALB +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +220 +CCOND_ON_SURFACE +? +1 +tmpl4_0 +CCOND +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +238 +RCS_ON_SURFACE +? +1 +tmpl4_0 +RCS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +239 +RCT_ON_SURFACE +? +1 +tmpl4_0 +RCT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +240 +RCQ_ON_SURFACE +? +1 +tmpl4_0 +RCQ +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +241 +RCSOL_ON_SURFACE +? +1 +tmpl4_0 +RCSOL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +237 +SMREF_ON_SURFACE +? +1 +tmpl4_0 +SMREF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +233 +POROS_ON_SURFACE +? +1 +tmpl4_0 +POROS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +235 +RLYRS_ON_SURFACE +? +1 +tmpl4_0 +RLYRS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +234 +RSMIN_ON_SURFACE +? +1 +tmpl4_0 +RSMIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +224 +SNOD_ON_SURFACE +? +1 +tmpl4_0 +SNOD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +232 +SMDRY_ON_SURFACE +? +1 +tmpl4_0 +SMDRY +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +236 +WILT_ON_SURFACE +? +1 +tmpl4_0 +WILT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +171 +MSTAV_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +MSTAV +NCEP +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +100. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +152 +INST_GFLUX_ON_SURFACE +? +1 +tmpl4_0 +GFLUX +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +30 +LFTX_ON_ISOBARIC_SFC_500-1000hpa +? +1 +tmpl4_0 +LFTX +NCEP +? +isobaric_sfc +0 +? +1 +50000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +31 +4LFTX_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +4LFTX +NCEP +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +75 +PLI_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PLI +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +32 +CAPE_ON_SURFACE +? +1 +tmpl4_0 +CAPE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +566 +BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +582 +MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +584 +UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +107 +CIN_ON_SURFACE +? +1 +tmpl4_0 +CIN +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +567 +BEST_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +583 +MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +585 +UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +80 +PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR +? +1 +tmpl4_0 +PWAT +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +162 +HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +HLCY +? +? +spec_hgt_lvl_above_grnd +0 +? +2 +3000. 1000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +163 +USTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +USTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +164 +VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +VSTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +87 +ACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +34 +ACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +417 +CACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +419 +CACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +35 +ACM_WEASD_ON_SURFACE +? +1 +tmpl4_8 +WEASD +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +121 +ACM_SNOM_ON_SURFACE +? +1 +tmpl4_8 +SNOM +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +122 +ACM_SSRUN_ON_SURFACE +? +1 +tmpl4_8 +SSRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +123 +ACM_BGRUN_ON_SURFACE +? +1 +tmpl4_8 +BGRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +343 +ACM_WATR_ON_SURFACE +? +1 +tmpl4_8 +WATR +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +160 +INST_CRAIN_ON_SURFACE +? +1 +tmpl4_0 +CRAIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +551 +CSNOW_ON_SURFACE +Categorical snow on surface +1 +tmpl4_0 +CSNOW +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +552 +CICEP_ON_SURFACE +Categorical ice pellets on surface +1 +tmpl4_0 +CICEP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +553 +CFRZR_ON_SURFACE +Categorical freezing rain on surface +1 +tmpl4_0 +CFRZR +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +167 +INST_PRATE_ON_SURFACE +? +1 +tmpl4_0 +PRATE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +172 +CPOFP_ON_SURFACE +? +1 +tmpl4_0 +CPOFP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +124 +CLWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +CLWMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +125 +ICMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +ICMR +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +415 +GRLE_ON_HYBRID_LVL +Graupel mixing ration on hybrid level +1 +tmpl4_0 +GRLE +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +145 +TCDC_ON_HYBRID_LVL +? +1 +tmpl4_0 +TCDC +? +? +hybrid_lvl +0 +? +2 +1. 2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +37 +LCDC_ON_LOW_CLOUD_LYR +? +1 +tmpl4_0 +LCDC +? +? +low_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +38 +MCDC_ON_MID_CLOUD_LYR +? +1 +tmpl4_0 +MCDC +? +? +mid_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +39 +HCDC_ON_HIGH_CLOUD_LYR +? +1 +tmpl4_0 +HCDC +? +? +high_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +161 +INST_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCDC +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +144 +AVE_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +TCDC +? +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +139 +AVE_CDLYR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +CDLYR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +410 +GSD_VIS_ON_SURFACE +GSD_visibility on surface +1 +tmpl4_0 +VIS +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +109 +HGT_ON_LVL_OF_ADIAB_COND_FROM_SFC +? +1 +tmpl4_0 +HGT +? +? +lvl_of_adiab_cond_from_sfc +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +110 +PRES_ON_LVL_OF_ADIAB_COND_FROM_SFC +? +1 +tmpl4_0 +PRES +? +? +lvl_of_adiab_cond_from_sfc +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +141 +INST_USWRF_ON_SURFACE +? +1 +tmpl4_0 +USWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +142 +INST_ULWRF_ON_SURFACE +? +1 +tmpl4_0 +ULWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +126 +AVE_DSWRF_ON_SURFACE +? +1 +tmpl4_8 +DSWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +127 +AVE_DLWRF_ON_SURFACE +? +1 +tmpl4_8 +DLWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +128 +AVE_USWRF_ON_SURFACE +? +1 +tmpl4_8 +USWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +129 +AVE_ULWRF_ON_SURFACE +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +130 +AVE_USWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +USWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +131 +AVE_ULWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +274 +INST_ULWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +ULWRF +NCEP +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +275 +BRTMP_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +BRTMP +? +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +156 +INST_DSWRF_ON_SURFACE +? +1 +tmpl4_0 +DSWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +157 +INST_DLWRF_ON_SURFACE +? +1 +tmpl4_0 +DLWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +262 +INST_CSDSF_ON_SURFACE +? +1 +tmpl4_0 +CSDSF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +44 +SFCR_ON_SURFACE +? +1 +tmpl4_0 +SFCR +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.7 +0 +0 +0 +? +? +? +45 +FRICV_ON_SURFACE +? +1 +tmpl4_0 +FRICV +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +132 +CD_ON_SURFACE +? +1 +tmpl4_0 +CD +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +133 +UFLX_ON_SURFACE +? +1 +tmpl4_0 +UFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +134 +VFLX_ON_SURFACE +? +1 +tmpl4_0 +VFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +43 +AVE_SHTFL_ON_SURFACE +? +1 +tmpl4_8 +SHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +135 +AVE_GFLUX_ON_SURFACE +? +1 +tmpl4_8 +GFLUX +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +136 +AVE_SNOHF_ON_SURFACE +? +1 +tmpl4_8 +SNOHF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +42 +AVE_LHTFL_ON_SURFACE +? +1 +tmpl4_8 +LHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +47 +ACM_EVP_ON_SURFACE +? +1 +tmpl4_8 +EVP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +137 +ACM_PEVAP_ON_SURFACE +? +1 +tmpl4_8 +PEVAP +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +154 +INST_SHTFL_ON_SURFACE +? +1 +tmpl4_0 +SHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +155 +INST_LHTFL_ON_SURFACE +? +1 +tmpl4_0 +LHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +48 +NLAT_ON_SURFACE +? +1 +tmpl4_0 +NLAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +49 +ELON_ON_SURFACE +? +1 +tmpl4_0 +ELON +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +50 +LAND_ON_SURFACE +? +1 +tmpl4_0 +LAND +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +51 +ICEC_ON_SURFACE +? +1 +tmpl4_0 +ICEC +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +150 +ALBDO_ON_SURFACE +? +1 +tmpl4_0 +ALBDO +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +151 +WTMP_ON_SURFACE +? +1 +tmpl4_0 +WTMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +54 +PRES_ON_TROPOPAUSE +? +1 +tmpl4_0 +PRES +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +177 +HGT_ON_TROPOPAUSE +? +1 +tmpl4_0 +HGT +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +55 +TMP_ON_TROPOPAUSE +? +1 +tmpl4_0 +TMP +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +108 +POT_ON_TROPOPAUSE +? +1 +tmpl4_0 +POT +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +56 +UGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +UGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +57 +VGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +VGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +58 +VWSH_ON_TROPOPAUSE +? +1 +tmpl4_0 +VWSH +NCEP +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +432 +VUCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km +Vertical u-component shear between 0 to 6000m Above Ground +1 +tmpl4_0 +VUCSH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +0. +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +433 +VVCSH_ON_SPEC_HGT_LVL_ABOVE_GRND_0-6km +Vertical v-component shear between 0 to 6000m Above Ground +1 +tmpl4_0 +VVCSH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +0. +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +59 +TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +TMP +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +586 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +60 +UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +UGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +576 +UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +UGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +61 +VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +VGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +577 +VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +VGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +451 +SPFH_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +SPFH +? +? +spec_alt_above_mean_sea_lvl +0 +? +1 +305. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +578 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +579 +PRES_ON_SPEC_HGT_LVL_ABOVE_GRND_FDHGT +? +1 +tmpl4_0 +PRES +? +? +spec_hgt_lvl_above_grnd +0 +? +4 +30. 50. 80. 100. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +62 +HGT_ON_0C_ISOTHERM +? +1 +tmpl4_0 +HGT +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +63 +RH_ON_0C_ISOTHERM +? +1 +tmpl4_0 +RH +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +165 +HGT_ON_HGHST_TROP_FRZ_LVL +? +1 +tmpl4_0 +HGT +? +? +hghst_trop_frz_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +247 +HGT_ON_LWST_LVL_OF_WET_BULB_ZERO +? +1 +tmpl4_0 +HGT +? +? +lwst_lvl_of_wet_bulb_zero +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +67 +PRES_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PRES +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +68 +TMP_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +TMP +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +69 +POT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +POT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +70 +DPT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +DPT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +71 +SPFH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +SPFH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +72 +RH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +RH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +89 +PWAT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PWAT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +73 +UGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +UGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +74 +VGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +VGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +90 +VVEL_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +VVEL +? +? +spec_pres_above_grnd +0 +? +3 +3000. 9000. 18000. +spec_pres_above_grnd +0 +? +3 +0. 6000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +148 +PRES_ON_CLOUD_BASE +? +1 +tmpl4_0 +PRES +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +149 +PRES_ON_CLOUD_TOP +? +1 +tmpl4_0 +PRES +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +168 +TMP_ON_CLOUD_TOP +? +1 +tmpl4_0 +TMP +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +178 +HGT_ON_CLOUD_BASE +? +1 +tmpl4_0 +HGT +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +179 +HGT_ON_CLOUD_TOP +? +1 +tmpl4_0 +HGT +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +168 +TMP_ON_CLOUD_TOP +? +1 +tmpl4_0 +TMP +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +173 +PRES_ON_MAX_WIND +? +1 +tmpl4_0 +PRES +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +174 +HGT_ON_MAX_WIND +? +1 +tmpl4_0 +HGT +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +175 +UGRD_ON_MAX_WIND +? +1 +tmpl4_0 +UGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +176 +VGRD_ON_MAX_WIND +? +1 +tmpl4_0 +VGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +252 +REFC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +276 +REFZR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFZR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +277 +REFZI_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFZI +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +253 +REFD_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +REFD +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +2 +4000. 1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +279 +REFZR_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +REFZR +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +2 +4000. 1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +280 +REFZI_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +REFZI +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +2 +4000. 1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +221 +HPBL_ON_SURFACE +? +1 +tmpl4_0 +HPBL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +194 +PRES_ON_GRID_SCALE_CLOUD_BOT_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_bot_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +195 +PRES_ON_GRID_SCALE_CLOUD_TOP_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_top_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +200 +TCOLW_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLW +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +201 +TCOLI_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLI +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +202 +TCOLR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +203 +TCOLS_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLS +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +204 +TCOLC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +428 +TCOLG_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLG +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +285 +TCLSW_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCLSW +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +286 +TCOLM_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLM +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +287 +HGT_ON_LWST_BOT_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR +? +1 +tmpl4_0 +HGT +? +? +lwst_bot_lvl_of_supercooled_liq_water_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +288 +HGT_ON_HGHST_TOP_LVL_OF_SUPERCOOLED_LIQ_WATER_LYR +? +1 +tmpl4_0 +HGT +? +? +hghst_top_lvl_of_supercooled_liq_water_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +408 +GSD_HGT_ON_CLOUD_CEILING +GSD_geopotential height on cloud base +1 +tmpl4_0 +HGT +? +? +cloud_ceilng +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +487 +GSD_EXP_CEILING +? +1 +tmpl4_0 +CEIL +? +? +ceiling +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +711 +GSD_EXP_CEILING_2 +? +1 +tmpl4_0 +CEIL +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +256 +ACM_LSPA_ON_SURFACE +? +1 +tmpl4_8 +LSPA +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +282 +PRES_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +PRES +? +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +290 +SWHR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +SWHR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +291 +LWHR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +LWHR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +292 +AVE_LRGHR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +LRGHR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +296 +TMP_ON_SIGMA_LVL_HPC +? +1 +tmpl4_0 +TMP +? +? +sigma_lvl +1 +4 +5 +9000. 8500. 8000. 7500. 7000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +344 +PBLREG_ON_SURFACE +? +1 +tmpl4_0 +PBLREG +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +389 +UGRD_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +UGRD +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +390 +VGRD_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +VGRD +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +289 +HGT_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +HGT +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +381 +MIXHT_ON_SURFACE +? +1 +tmpl4_0 +MIXHT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +400 +RETOP_ON_ENTIRE_ATMOS_SINGLE_LYR +? +1 +tmpl4_0 +RETOP +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +454 +VRATE_ON_PLANETARY_BOUND_LYR +Ventilation Rate on planetary boundary layer +1 +tmpl4_0 +VRATE +NCEP +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +455 +HINDEX_ON_SURFACE +Haines Index on surface +1 +tmpl4_0 +HINDEX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +345 +MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMAX +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +346 +MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMIN +? +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +347 +MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MAXRH +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +348 +MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MINRH +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +506 +MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +U Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXUW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +507 +MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +V Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXVW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +422 +MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +maximum wind speed on 10 meter Above Ground +1 +tmpl4_8 +WIND +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +421 +MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MAXREF +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +423 +MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Upward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXUVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +424 +MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Downward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXDVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +444 +LTNG_ON_SURFACE +lightning +1 +tmpl4_0 +LTNG +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +581 +VIL_ON_ENTIRE_ATMOS +entire atmosphere Vertically Integrated Liquid (kg/m-2) +1 +tmpl4_0 +VIL +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +427 +UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_0 +UPHL +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +420 +MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +786 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +791 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +790 +GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +793 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +890 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 +Hourly max relative vorticity on hybrid level 1 +1 +tmpl4_8 +RELV +? +MAX +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +792 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +785 +MAX_REF_ON_ISOTHERMAL_-10C +maximum reflectivity on -10C suface +1 +tmpl4_8 +MAXREF +NCEP +MAX +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +912 +REFD_ON_ISOTHERMAL +? +1 +tmpl4_0 +REFD +NCEP +? +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +BGRD3D +32769 +ncep_nco +v2003 +local_tab_yes1 +fcst +oper +fcst +fcst +hour +noaa_fsl_boulder +hrrr +complex_packing_spatial_diff +2nd_ord_sptdiff +fltng_pnt +lossless +12 +HGT_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +HGT +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +13 +TMP_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +TMP +? +? +isobaric_sfc +0 +? +5 +25000. 50000. 70000. 85000. 95000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +17 +RH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +RH +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +18 +UGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +UGRD +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +19 +VGRD_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VGRD +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +20 +VVEL_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +VVEL +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +16 +SPFH_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +SPFH +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +21 +ABSV_ON_ISOBARIC_SFC +? +1 +tmpl4_0 +ABSV +? +? +isobaric_sfc +0 +? +4 +25000. 50000. 70000. 85000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +1 +PRES_ON_HYBRID_LVL +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +77 +HGT_ON_HYBRID_LVL +? +1 +tmpl4_0 +HGT +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +2 +TMP_ON_HYBRID_LVL +? +1 +tmpl4_0 +TMP +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +5 +SPFH_ON_HYBRID_LVL +? +1 +tmpl4_0 +SPFH +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +7.0 +0 +0 +0 +? +? +? +7 +UGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +UGRD +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +8 +VGRD_ON_HYBRID_LVL +? +1 +tmpl4_0 +VGRD +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +9 +VVEL_ON_HYBRID_LVL +? +1 +tmpl4_0 +VVEL +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +264 +DZDT_ON_HYBRID_LVL +? +1 +tmpl4_0 +DZDT +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +11 +TKE_ON_HYBRID_LVL +? +1 +tmpl4_0 +TKE +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +23 +MSLET_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +MSLET +NCEP +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +445 +MAPS_PRMSL_ON_MEAN_SEA_LVL +? +1 +tmpl4_0 +PRMSL +? +? +mean_sea_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +106 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +112 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +113 +DPT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +DPT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +114 +RH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_0 +RH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +64 +UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +UGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +65 +VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +VGRD +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +158 +POT_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +POT +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +159 +SPFH_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +SPFH +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +24 +PRES_ON_SURFACE +? +1 +tmpl4_0 +PRES +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +25 +HGT_ON_SURFACE +? +1 +tmpl4_0 +HGT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +27 +POT_ON_SURFACE +? +1 +tmpl4_0 +POT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +28 +SPFH_ON_SURFACE +? +1 +tmpl4_0 +SPFH +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +26 +TMP_ON_SURFACE +? +1 +tmpl4_0 +TMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +423 +MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Upward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXUVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +424 +MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa +hourly maximum Downward Vertical Velocity between 10-100hpa +1 +tmpl4_8 +MAXDVV +NCEP +MAX +isobaric_sfc +0 +? +1 +10000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +790 +GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +420 +MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MXUPHL +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +786 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +5000. +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +791 +GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km +? +1 +tmpl4_8 +MNUPHL +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +3000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +793 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +890 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 +Hourly max relative vorticity on hybrid level 1 +1 +tmpl4_8 +RELV +? +MAX +hybrid_lvl +0 +? +1 +1. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +792 +GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km +? +1 +tmpl4_8 +RELV +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2000. +spec_hgt_lvl_above_grnd +0 +? +1 +0000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +506 +MAX_MAXUW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +U Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXUW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +507 +MAX_MAXVW_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +V Component of Hourly Maximum 10m Wind Speed (m/s) +1 +tmpl4_8 +MAXVW +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +421 +MAX_REF_ON_SPEC_HGT_LVL_ABOVE_GRND_1km +maximum Updraft Helicity on Specified Height Level Above Ground +1 +tmpl4_8 +MAXREF +NCEP +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +1000. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +785 +MAX_REF_ON_ISOTHERMAL_-10C +maximum reflectivity on -10C suface +1 +tmpl4_8 +MAXREF +NCEP +MAX +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +912 +REFD_ON_ISOTHERMAL +? +1 +tmpl4_0 +REFD +NCEP +? +isothermal +0 +? +1 +263. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +345 +MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMAX +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +346 +MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +TMIN +? +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +347 +MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MAXRH +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +348 +MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m +? +1 +tmpl4_8 +MINRH +NCEP +MIN +spec_hgt_lvl_above_grnd +0 +? +1 +2. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-2.0 +0 +0 +0 +? +? +? +116 +TSOIL_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +117 +SOILW_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILW +NCEP +? +depth_bel_land_sfc +4 +2 2 2 2 +4 +0. 10. 40. 100. +depth_bel_land_sfc +4 +2 2 2 2 +4 +10. 40. 100. 200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +36 +SOILM_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +SOILM +? +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +200. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +169 +SFEXC_ON_SURFACE +? +1 +tmpl4_0 +SFEXC +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +170 +VEG_ON_SURFACE +? +1 +tmpl4_0 +VEG +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +171 +MSTAV_ON_DEPTH_BEL_LAND_SFC +? +1 +tmpl4_0 +MSTAV +NCEP +? +depth_bel_land_sfc +1 +2 +1 +0. +depth_bel_land_sfc +1 +2 +1 +100. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +115 +TSOIL_ON_DEPTH_BEL_LAND_SFC_3m +? +1 +tmpl4_0 +TSOIL +? +? +depth_bel_land_sfc +0 +? +1 +3. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +152 +INST_GFLUX_ON_SURFACE +? +1 +tmpl4_0 +GFLUX +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +118 +CNWAT_ON_SURFACE +? +1 +tmpl4_0 +CNWAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +119 +WEASD_ON_SURFACE +? +1 +tmpl4_0 +WEASD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +31 +4LFTX_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +4LFTX +NCEP +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +80 +PWAT_ON_ENTIRE_ATMOS_SINGLE_LYR +? +1 +tmpl4_0 +PWAT +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +87 +ACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +34 +ACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +417 +CACM_APCP_ON_SURFACE +? +1 +tmpl4_8 +APCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +419 +CACM_NCPCP_ON_SURFACE +? +1 +tmpl4_8 +NCPCP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +35 +ACM_WEASD_ON_SURFACE +? +1 +tmpl4_8 +WEASD +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +121 +ACM_SNOM_ON_SURFACE +? +1 +tmpl4_8 +SNOM +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +122 +ACM_SSRUN_ON_SURFACE +? +1 +tmpl4_8 +SSRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +123 +ACM_BGRUN_ON_SURFACE +? +1 +tmpl4_8 +BGRUN +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +160 +INST_CRAIN_ON_SURFACE +? +1 +tmpl4_0 +CRAIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +551 +CSNOW_ON_SURFACE +Categorical snow on surface +1 +tmpl4_0 +CSNOW +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +552 +CICEP_ON_SURFACE +Categorical ice pellets on surface +1 +tmpl4_0 +CICEP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +553 +CFRZR_ON_SURFACE +Categorical freezing rain on surface +1 +tmpl4_0 +CFRZR +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +167 +INST_PRATE_ON_SURFACE +? +1 +tmpl4_0 +PRATE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +172 +CPOFP_ON_SURFACE +? +1 +tmpl4_0 +CPOFP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +124 +CLWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +CLWMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +125 +ICMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +ICMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +415 +GRLE_ON_HYBRID_LVL +Graupel mixing ration on hybrid level +1 +tmpl4_0 +GRLE +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +145 +TCDC_ON_HYBRID_LVL +? +1 +tmpl4_0 +TCDC +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +181 +RWMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +RWMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +182 +SNMR_ON_HYBRID_LVL +? +1 +tmpl4_0 +SNMR +? +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +766 +GSD_NCWFA_ON_HYBRID_LVL +? +1 +tmpl4_0 +PMTF +NCEP +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +767 +GSD_NCIFA_ON_HYBRID_LVL +? +1 +tmpl4_0 +PMTC +NCEP +? +hybrid_lvl +0 +? +64 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +37 +LCDC_ON_LOW_CLOUD_LYR +? +1 +tmpl4_0 +LCDC +? +? +low_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +38 +MCDC_ON_MID_CLOUD_LYR +? +1 +tmpl4_0 +MCDC +? +? +mid_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +39 +HCDC_ON_HIGH_CLOUD_LYR +? +1 +tmpl4_0 +HCDC +? +? +high_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +161 +INST_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCDC +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +144 +AVE_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +TCDC +? +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +139 +AVE_CDLYR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +CDLYR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +141 +INST_USWRF_ON_SURFACE +? +1 +tmpl4_0 +USWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +142 +INST_ULWRF_ON_SURFACE +? +1 +tmpl4_0 +ULWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +126 +AVE_DSWRF_ON_SURFACE +? +1 +tmpl4_8 +DSWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +127 +AVE_DLWRF_ON_SURFACE +? +1 +tmpl4_8 +DLWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +128 +AVE_USWRF_ON_SURFACE +? +1 +tmpl4_8 +USWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +129 +AVE_ULWRF_ON_SURFACE +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +130 +AVE_USWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +USWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +131 +AVE_ULWRF_ON_TOP_OF_ATMOS +? +1 +tmpl4_8 +ULWRF +NCEP +AVE +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +156 +INST_DSWRF_ON_SURFACE +? +1 +tmpl4_0 +DSWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +157 +INST_DLWRF_ON_SURFACE +? +1 +tmpl4_0 +DLWRF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +262 +INST_CSDSF_ON_SURFACE +? +1 +tmpl4_0 +CSDSF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +44 +SFCR_ON_SURFACE +? +1 +tmpl4_0 +SFCR +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.7 +0 +0 +0 +? +? +? +45 +FRICV_ON_SURFACE +? +1 +tmpl4_0 +FRICV +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +132 +CD_ON_SURFACE +? +1 +tmpl4_0 +CD +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +133 +UFLX_ON_SURFACE +? +1 +tmpl4_0 +UFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +134 +VFLX_ON_SURFACE +? +1 +tmpl4_0 +VFLX +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +43 +AVE_SHTFL_ON_SURFACE +? +1 +tmpl4_8 +SHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +135 +AVE_GFLUX_ON_SURFACE +? +1 +tmpl4_8 +GFLUX +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +136 +AVE_SNOHF_ON_SURFACE +? +1 +tmpl4_8 +SNOHF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +42 +AVE_LHTFL_ON_SURFACE +? +1 +tmpl4_8 +LHTFL +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +47 +ACM_EVP_ON_SURFACE +? +1 +tmpl4_8 +EVP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +137 +ACM_PEVAP_ON_SURFACE +? +1 +tmpl4_8 +PEVAP +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +154 +INST_SHTFL_ON_SURFACE +? +1 +tmpl4_0 +SHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +155 +INST_LHTFL_ON_SURFACE +? +1 +tmpl4_0 +LHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +48 +NLAT_ON_SURFACE +? +1 +tmpl4_0 +NLAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +49 +ELON_ON_SURFACE +? +1 +tmpl4_0 +ELON +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +50 +LAND_ON_SURFACE +? +1 +tmpl4_0 +LAND +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +51 +ICEC_ON_SURFACE +? +1 +tmpl4_0 +ICEC +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +52 +LMH_ON_SURFACE +? +1 +tmpl4_0 +LMH +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +53 +LMV_ON_SURFACE +? +1 +tmpl4_0 +LMV +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +150 +ALBDO_ON_SURFACE +? +1 +tmpl4_0 +ALBDO +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +151 +WTMP_ON_SURFACE +? +1 +tmpl4_0 +WTMP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +67 +PRES_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PRES +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +68 +TMP_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +TMP +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +69 +POT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +POT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +70 +DPT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +DPT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +71 +SPFH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +SPFH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +72 +RH_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +RH +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +89 +PWAT_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PWAT +? +? +spec_pres_above_grnd +0 +? +1 +3000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +73 +UGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +UGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +74 +VGRD_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +VGRD +? +? +spec_pres_above_grnd +0 +? +6 +3000. 6000. 9000. 12000. 15000. 18000. +spec_pres_above_grnd +0 +? +6 +0. 3000. 6000. 9000. 12000. 15000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +256 +ACM_LSPA_ON_SURFACE +? +1 +tmpl4_8 +LSPA +NCEP +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +282 +PRES_ON_TOP_OF_ATMOS +? +1 +tmpl4_0 +PRES +? +? +top_of_atmos +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +283 +PRES_ON_HYBRID_LVL_1L +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +1 +1. +hybrid_lvl +0 +? +1 +21. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +273 +PRES_ON_HYBRID_LVL_LLM +? +1 +tmpl4_0 +PRES +? +? +hybrid_lvl +0 +? +1 +1. +hybrid_lvl +0 +? +1 +61. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +118 +CNWAT_ON_SURFACE +? +1 +tmpl4_0 +CNWAT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +1.0 +0 +0 +0 +? +? +? +152 +INST_GFLUX_ON_SURFACE +? +1 +tmpl4_0 +GFLUX +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +30 +LFTX_ON_ISOBARIC_SFC_500-1000hpa +? +1 +tmpl4_0 +LFTX +NCEP +? +isobaric_sfc +0 +? +1 +50000. +isobaric_sfc +0 +? +1 +100000. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +32 +CAPE_ON_SURFACE +? +1 +tmpl4_0 +CAPE +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +566 +BEST_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +582 +MIXED_LAYER_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +584 +UNSTABLE_CAPE_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CAPE +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +107 +CIN_ON_SURFACE +? +1 +tmpl4_0 +CIN +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +567 +BEST_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +18000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +583 +MIXED_LAYER_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +9000. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +585 +UNSTABLE_CIN_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +CIN +? +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +246 +PLPL_ON_SPEC_PRES_ABOVE_GRND +? +1 +tmpl4_0 +PLPL +NCEP +? +spec_pres_above_grnd +0 +? +1 +25500. +spec_pres_above_grnd +0 +? +1 +0. +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +162 +HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +HLCY +? +? +spec_hgt_lvl_above_grnd +0 +? +2 +3000. 1000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +163 +USTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +USTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +164 +VSTM_ON_SPEC_HGT_LVL_ABOVE_GRND +? +1 +tmpl4_0 +VSTM +NCEP +? +spec_hgt_lvl_above_grnd +0 +? +1 +6000. +spec_hgt_lvl_above_grnd +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +37 +LCDC_ON_LOW_CLOUD_LYR +? +1 +tmpl4_0 +LCDC +? +? +low_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +38 +MCDC_ON_MID_CLOUD_LYR +? +1 +tmpl4_0 +MCDC +? +? +mid_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +39 +HCDC_ON_HIGH_CLOUD_LYR +? +1 +tmpl4_0 +HCDC +? +? +high_cloud_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +144 +AVE_TCDC_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +TCDC +? +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +139 +AVE_CDLYR_ON_ENTIRE_ATMOS +? +1 +tmpl4_8 +CDLYR +NCEP +AVE +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +148 +PRES_ON_CLOUD_BASE +? +1 +tmpl4_0 +PRES +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +149 +PRES_ON_CLOUD_TOP +? +1 +tmpl4_0 +PRES +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +168 +TMP_ON_CLOUD_TOP +? +1 +tmpl4_0 +TMP +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +135 +AVE_GFLUX_ON_SURFACE +? +1 +tmpl4_8 +GFLUX +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +136 +AVE_SNOHF_ON_SURFACE +? +1 +tmpl4_8 +SNOHF +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +47 +ACM_EVP_ON_SURFACE +? +1 +tmpl4_8 +EVP +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +154 +INST_SHTFL_ON_SURFACE +? +1 +tmpl4_0 +SHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +155 +INST_LHTFL_ON_SURFACE +? +1 +tmpl4_0 +LHTFL +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +54 +PRES_ON_TROPOPAUSE +? +1 +tmpl4_0 +PRES +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +177 +HGT_ON_TROPOPAUSE +? +1 +tmpl4_0 +HGT +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +55 +TMP_ON_TROPOPAUSE +? +1 +tmpl4_0 +TMP +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +56 +UGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +UGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +57 +VGRD_ON_TROPOPAUSE +? +1 +tmpl4_0 +VGRD +? +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +58 +VWSH_ON_TROPOPAUSE +? +1 +tmpl4_0 +VWSH +NCEP +? +tropopause +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +59 +TMP_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +TMP +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +60 +UGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +UGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +61 +VGRD_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL +? +1 +tmpl4_0 +VGRD +? +? +spec_alt_above_mean_sea_lvl +0 +? +10 +305. 457. 610. 914. 1524. 1829. 2134. 2743. 3658. 4572. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +62 +HGT_ON_0C_ISOTHERM +? +1 +tmpl4_0 +HGT +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +63 +RH_ON_0C_ISOTHERM +? +1 +tmpl4_0 +RH +? +? +0C_isotherm +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +2.0 +0 +0 +0 +? +? +? +165 +HGT_ON_HGHST_TROP_FRZ_LVL +? +1 +tmpl4_0 +HGT +? +? +hghst_trop_frz_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +173 +PRES_ON_MAX_WIND +? +1 +tmpl4_0 +PRES +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +174 +HGT_ON_MAX_WIND +? +1 +tmpl4_0 +HGT +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +175 +UGRD_ON_MAX_WIND +? +1 +tmpl4_0 +UGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +176 +VGRD_ON_MAX_WIND +? +1 +tmpl4_0 +VGRD +? +? +max_wind +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +422 +MAX_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +maximum wind speed on 10 meter Above Ground +1 +tmpl4_8 +WIND +? +MAX +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +178 +HGT_ON_CLOUD_BASE +? +1 +tmpl4_0 +HGT +? +? +cloud_base +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +179 +HGT_ON_CLOUD_TOP +? +1 +tmpl4_0 +HGT +? +? +cloud_top +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +410 +GSD_VIS_ON_SURFACE +GSD_visibility on surface +1 +tmpl4_0 +VIS +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +252 +REFC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +REFC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +194 +PRES_ON_GRID_SCALE_CLOUD_BOT_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_bot_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +195 +PRES_ON_GRID_SCALE_CLOUD_TOP_LVL +? +1 +tmpl4_0 +PRES +? +? +grid_scale_cloud_top_lvl +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +200 +TCOLW_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLW +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +201 +TCOLI_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLI +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +202 +TCOLR_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLR +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +203 +TCOLS_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLS +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +204 +TCOLC_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLC +NCEP +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +428 +TCOLG_ON_ENTIRE_ATMOS +? +1 +tmpl4_0 +TCOLG +? +? +entire_atmos_single_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +218 +VGTYP_ON_SURFACE +? +1 +tmpl4_0 +VGTYP +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +219 +SOTYP_ON_SURFACE +? +1 +tmpl4_0 +SOTYP +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +220 +CCOND_ON_SURFACE +? +1 +tmpl4_0 +CCOND +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +221 +HPBL_ON_SURFACE +? +1 +tmpl4_0 +HPBL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +224 +SNOD_ON_SURFACE +? +1 +tmpl4_0 +SNOD +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +231 +SBSNO_ON_SURFACE +? +1 +tmpl4_0 +SBSNO +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +232 +SMDRY_ON_SURFACE +? +1 +tmpl4_0 +SMDRY +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +233 +POROS_ON_SURFACE +? +1 +tmpl4_0 +POROS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +234 +RSMIN_ON_SURFACE +? +1 +tmpl4_0 +RSMIN +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +235 +RLYRS_ON_SURFACE +? +1 +tmpl4_0 +RLYRS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +236 +WILT_ON_SURFACE +? +1 +tmpl4_0 +WILT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +237 +SMREF_ON_SURFACE +? +1 +tmpl4_0 +SMREF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +238 +RCS_ON_SURFACE +? +1 +tmpl4_0 +RCS +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +239 +RCT_ON_SURFACE +? +1 +tmpl4_0 +RCT +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +240 +RCQ_ON_SURFACE +? +1 +tmpl4_0 +RCQ +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +241 +RCSOL_ON_SURFACE +? +1 +tmpl4_0 +RCSOL +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +242 +PEVPR_ON_SURFACE +? +1 +tmpl4_0 +PEVPR +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +6.0 +0 +0 +0 +? +? +? +245 +GUST_ON_SURFACE +? +1 +tmpl4_0 +GUST +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +247 +HGT_ON_LWST_LVL_OF_WET_BULB_ZERO +? +1 +tmpl4_0 +HGT +? +? +lwst_lvl_of_wet_bulb_zero +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-5.0 +0 +0 +0 +? +? +? +254 +LAI_ON_SURFACE +? +1 +tmpl4_0 +LAI +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-3.0 +0 +0 +0 +? +? +? +262 +INST_CSDSF_ON_SURFACE +? +1 +tmpl4_0 +CSDSF +NCEP +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? +222 +TCDC_ON_SIGMA_LVLS +? +1 +tmpl4_0 +TCDC +? +? +sigma_lvl +1 +4 +22 +9975. 9915. 9835. 9745. 9650. 9490. 9260. 9015. 8755. 8480. 8190. 7890. 7585. 7185. 6690. 6180. 5470. 4550. 3595. 2605. 1580. 530. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +289 +HGT_ON_PLANETARY_BOUND_LYR +? +1 +tmpl4_0 +HGT +? +? +planetary_bound_lyr +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +381 +MIXHT_ON_SURFACE +? +1 +tmpl4_0 +MIXHT +? +? +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +505 +TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_0 +TMP +? +? +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +500 +AVE_SNOWC_ON_SURFACE +? +1 +tmpl4_8 +SNOWC +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +501 +AVE_PRES_ON_SURFACE +? +1 +tmpl4_8 +PRES +? +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +502 +AVE_TMP_ON_SPEC_HGT_LVL_ABOVE_GRND_10m +? +1 +tmpl4_8 +TMP +? +AVE +spec_hgt_lvl_above_grnd +0 +? +1 +10. +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +-4.0 +0 +0 +0 +? +? +? +503 +AVE_AKHS_ON_SURFACE +? +1 +tmpl4_8 +AKHS +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? +504 +AVE_AKMS_ON_SURFACE +? +1 +tmpl4_8 +AKMS +NCEP +AVE +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +3.0 +0 +0 +0 +? +? +? diff --git a/sorc/ncep_post.fd/CALUPDHEL.f b/sorc/ncep_post.fd/CALUPDHEL.f index 11fbc98b2..ed8df327b 100644 --- a/sorc/ncep_post.fd/CALUPDHEL.f +++ b/sorc/ncep_post.fd/CALUPDHEL.f @@ -65,7 +65,7 @@ SUBROUTINE CALUPDHEL(UPDHEL) ! ! write(6,*) 'min/max WH(:,:,20):: ', minval(WH(:,:,20)), & ! maxval(WH(:,:,20)) - +!mhu debug return DO L=1,LM CALL EXCH(UH(1,jsta_2l,L)) END DO diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 88c32087b..1e5c737e0 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -826,6 +826,16 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) do j=jsta,jend do i=1,im cwm(i,j,l)=spval +! zint(i,j,l)=zint(i,j,l+1)+buf(i,j) +! if(abs(dpres(i,j,l))>1.0e5)print*,'bad dpres ',i,j,dpres(i,j,l) +!make sure delz is positive + if(dpres(i,j,l)/=spval .and. t(i,j,l)/=spval .and. & + q(i,j,l)/=spval .and. buf3d(i,j,l)/=spval)then + pmid(i,j,l)=rgas*dpres(i,j,l)* & + t(i,j,l)*(q(i,j,l)*fv+1.0)/grav/abs(buf3d(i,j,l)) + else + pmid(i,j,l)=spval + end if ! dong add missing value if (wh(i,j,l) < spval) then omga(i,j,l)=(-1.)*wh(i,j,l)*dpres(i,j,l)/abs(buf3d(i,j,l)) @@ -856,9 +866,9 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) cwm(i,j,l)=qqg(i,j,l)+qqs(i,j,l)+qqr(i,j,l)+qqi(i,j,l)+qqw(i,j,l) enddo enddo - if(debugprint)print*,'sample l,t,q,u,v,w= ',isa,jsa,l & + if(debugprint)print*,'sample l,t,q,u,v,w,pmid= ',isa,jsa,l & ,t(isa,jsa,l),q(isa,jsa,l),uh(isa,jsa,l),vh(isa,jsa,l) & - ,wh(isa,jsa,l) + ,wh(isa,jsa,l),pmid(isa,jsa,l) if(debugprint)print*,'sample l cwm for FV3',l, & cwm(isa,jsa,l) end do @@ -941,22 +951,23 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) endif enddo enddo + ! The next two lines crash. ! if (me == 0) print*,'sample model pint,pmid' ,ii,jj,l & ! ,pint(ii,jj,l),pmid(ii,jj,l) end do -!compute pmid from averaged two layer pint - do l=lm,1,-1 - do j=jsta,jend - do i=1,im - if (pint(i,j,l) 0) THEN ! GRID1=SPVAL - IF(MODELNAME == 'GFS')THEN + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R')THEN !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM @@ -1320,7 +1321,8 @@ SUBROUTINE CLDRAD ENDDO ENDDO END IF - IF(MODELNAME == 'NMM' .OR. MODELNAME == 'GFS')THEN + IF(MODELNAME == 'NMM' .OR. MODELNAME == 'GFS' .OR. & + MODELNAME == 'FV3R')THEN ID(1:25)= 0 ITCLOD = NINT(TCLOD) IF(ITCLOD /= 0) then @@ -2135,13 +2137,22 @@ SUBROUTINE CLDRAD ! "spread" onto the ajacent hills/peaks as very low ceilings ! (fog). In actuality, these hills/peaks may exist above the cloud ! layer. + allocate(full_ceil(IM,JM),full_fis(IM,JM)) + DO J=JSTA,JEND + DO I=1,IM + full_ceil(i,j)=ceil(i,j) + full_fis(i,j)=fis(i,j) + ENDDO + ENDDO + CALL AllGETHERV(full_ceil) + CALL AllGETHERV(full_fis) numr = 1 DO J=JSTA,JEND DO I=1,IM ceil_min = max( ceil(I,J)-FIS(I,J)*GI , 5.0) ! ceil_min in AGL - do jc = max(JSTA,J-numr),min(JEND,J+numr) + do jc = max(1,J-numr),min(JM,J+numr) do ic = max(1,I-numr),min(IM,I+numr) - ceil_neighbor = max( ceil(ic,jc)-FIS(ic,jc)*GI , 5.0) ! ceil_neighbor in AGL + ceil_neighbor = max( full_ceil(ic,jc)-full_fis(ic,jc)*GI , 5.0) ! ceil_neighbor in AGL ceil_min = min( ceil_min, ceil_neighbor ) enddo enddo @@ -2158,6 +2169,8 @@ SUBROUTINE CLDRAD enddo ENDDO ENDDO + if (allocated(full_ceil)) deallocate(full_ceil) + if (allocated(full_fis)) deallocate(full_fis) ! Parameters 711/798: experimental ceiling diagnostic #2 (height and pressure, respectively) IF (IGET(711)>0) THEN diff --git a/sorc/ncep_post.fd/CTLBLK.f b/sorc/ncep_post.fd/CTLBLK.f index 13797bd5e..74e48a718 100644 --- a/sorc/ncep_post.fd/CTLBLK.f +++ b/sorc/ncep_post.fd/CTLBLK.f @@ -41,7 +41,7 @@ module CTLBLK_mod real*8 :: gdsdegr real,allocatable :: datapd(:,:,:) ! - logical :: gocart_on, d3d_on, hyb_sigp + logical :: gocart_on, d3d_on, hyb_sigp, rdaod logical :: SIGMA,RUN,FIRST,RESTRT logical :: global logical :: SMFLAG @@ -67,7 +67,8 @@ module CTLBLK_mod ! real(kind=8) :: ETAFLD2_tim=0.,ETA2P_tim=0.,SURFCE2_tim=0., & CLDRAD_tim=0.,MISCLN_tim=0.,FIXED_tim=0., & - MDL2SIGMA_tim=0.,READxml_tim=0. !comm tim_info + MDL2SIGMA_tim=0.,READxml_tim=0.,MDL2AGL_tim=0., & + MDL2STD_tim=0.,MDL2THANDPV_tim=0.,CALRAD_WCLOUD_tim=0.!comm tim_info ! real(kind=8) :: time_output=0., time_e2out=0. !comm jjt ! diff --git a/sorc/ncep_post.fd/MDLFLD.f b/sorc/ncep_post.fd/MDLFLD.f index dfe0430c0..86bb85986 100644 --- a/sorc/ncep_post.fd/MDLFLD.f +++ b/sorc/ncep_post.fd/MDLFLD.f @@ -3385,7 +3385,11 @@ SUBROUTINE MDLFLD !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM + IF(PBLRI(I,J)0) THEN - DO J=JSTA,JEND - DO I=1,IM - GRID1(I,J)=AKHSAVG(I,J) - ENDDO - ENDDO - ID(1:25) = 0 - ID(02)= 133 - ID(19) = IFHR - IF (IFHR==0) THEN - ID(18) = 0 - ELSE - ID(18) = IFHR - 1 - ENDIF - ID(20) = 3 - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(503)) - fld_info(cfld)%ntrange=IFHR-ID(18) - fld_info(cfld)%tinvstat=1 - datapd(1:im,1:jend-jsta+1,cfld)=GRID1(1:im,jsta:jend) - endif - ENDIF - -! TIME-AVERAGED EXCHANGE COEFFICIENTS FOR WIND REQUESTED FOR CMAQ - IF (IGET(504)>0) THEN - DO J=JSTA,JEND - DO I=1,IM - GRID1(I,J)=AKMSAVG(I,J) - ENDDO - ENDDO - ID(1:25) = 0 - ID(02)= 133 - ID(19) = IFHR - IF (IFHR==0) THEN - ID(18) = 0 - ELSE - ID(18) = IFHR - 1 - ENDIF - ID(20) = 3 - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(504)) - fld_info(cfld)%ntrange=IFHR-ID(18) - fld_info(cfld)%tinvstat=1 - datapd(1:im,1:jend-jsta+1,cfld)=GRID1(1:im,jsta:jend) - endif - ENDIF - RETURN END diff --git a/sorc/ncep_post.fd/WRFPOST.f b/sorc/ncep_post.fd/WRFPOST.f index f674a2ba6..72123ffdc 100644 --- a/sorc/ncep_post.fd/WRFPOST.f +++ b/sorc/ncep_post.fd/WRFPOST.f @@ -437,6 +437,7 @@ PROGRAM WRFPOST call ext_ncd_ioclose ( DataHandle, Status ) ELSE ! use netcdf lib directly to read FV3 output in netCDF + spval = 9.99e20 Status = nf90_open(trim(fileName),NF90_NOWRITE, ncid3d) if ( Status /= 0 ) then print*,'error opening ',fileName, ' Status = ', Status @@ -484,6 +485,7 @@ PROGRAM WRFPOST END IF ! use netcdf_parallel lib directly to read FV3 output in netCDF ELSE IF(TRIM(IOFORM) == 'netcdfpara') THEN + spval = 9.99e20 Status = nf90_open(trim(fileName),ior(nf90_nowrite, nf90_mpiio), & ncid3d, comm=mpi_comm_world, info=mpi_info_null) if ( Status /= 0 ) then From 0443565880564d7fb30e54124c94ca864f17a68d Mon Sep 17 00:00:00 2001 From: "Ming.Hu" Date: Fri, 16 Jul 2021 05:59:09 +0000 Subject: [PATCH 18/46] Fixed several bugs in the code. --- sorc/ncep_post.fd/MAPSSLP.f | 18 +++++++++++------- sorc/ncep_post.fd/MDL2P.f | 3 +++ sorc/ncep_post.fd/MDLFLD.f | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/sorc/ncep_post.fd/MAPSSLP.f b/sorc/ncep_post.fd/MAPSSLP.f index 3b0728a8f..4fff5884d 100644 --- a/sorc/ncep_post.fd/MAPSSLP.f +++ b/sorc/ncep_post.fd/MAPSSLP.f @@ -29,7 +29,7 @@ SUBROUTINE MAPSSLP(TPRES) real,dimension(im,2) :: sdummy REAL,dimension(im,jm) :: GRID1, TH700 INTEGER NSMOOTH - integer l, j, i, k, ii, jj + integer l, j, i, k, ii, jj ,ll real dxm !----------------------------------------------------------------------- !*** @@ -38,13 +38,16 @@ SUBROUTINE MAPSSLP(TPRES) EXPo = ROG*LAPSES EXPINV = 1./EXPo + ll=0 DO L=1,LSM - + if( SPL(L) == 70000. ) ll=l + ENDDO + if(ll > 0) then !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM - if(SPL(L) == 70000. .and. TPRES(I,J,L) 0) THEN - CALL NGMSLP !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM From abb6f8c083dc8ab450848ca75f1d0f2ada1ca7e9 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 13 Aug 2021 12:51:45 +0000 Subject: [PATCH 19/46] Modifications to SURFCE.f to check for existence of FFG files. --- sorc/ncep_post.fd/SURFCE.f | 175 ++++++++++++++----------------------- 1 file changed, 66 insertions(+), 109 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index b3eafa0a8..5102912df 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -142,24 +142,21 @@ SUBROUTINE SURFCE real, allocatable, dimension(:,:,:) :: sleet, rain, freezr, snow ! real, dimension(im,jm,nalg) :: sleet, rain, freezr, snow real, allocatable, dimension(:,:) :: ylat, xlon - real, allocatable, dimension(:) :: msclon, msclat !GSD REAL totprcp, snowratio,t2,rainl ! - integer NLON,NLAT,NTOT,var_scale + integer NLON,NLAT,NTOT integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, & - NX,NY,NZ,MSCNLON,MSCNLAT,MSCNLEV,HEIGHT + NX,NY,NZ,MSCNLON,MSCNLAT,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es, & RLONMIN,RLATMAX,RLAT,RLON - real*8 RDX,RDY,DLON,DLAT,LONMIN,LATMIN,LONMAX,LATMAX - character(len=256) :: ffgfile logical, parameter :: debugprint = .false. @@ -3674,33 +3671,23 @@ SUBROUTINE SURFCE ! thresholds IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - var_scale=1 - mscNlon=nx - mscNlat=ny - mscNlev=nz - dlon=rdx - dlat=rdy - lonMin=rlonmin - lonMax=lonMin+dlon*(mscNlon-1) - latMax=rlatmax - latMin=latMax-dlat*(mscNlat-1) - if (.not. allocated(msclon)) then - allocate(msclon(mscNlon)) - allocate(msclat(mscNlat)) - allocate(mscValue(mscNlon,mscNlat)) + INQUIRE(FILE=ffgfile, EXIST=file_exists) + if (file_exists) then + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + mscNlon=nx + mscNlat=ny + if (.not. allocated(mscValue)) then + allocate(mscValue(mscNlon,mscNlat)) + endif + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + else + write(*,*) 'WARNING: 1h FFG file not available' + mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 endif - DO i=1,mscNlon - msclon(i)=lonMin+(i-1)*dlon - ENDDO - DO i=1,mscNlat - msclat(i)=latMin+(i-1)*dlat - ENDDO - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - write(*,*) '1H FFG MAX, MIN:', & - maxval(mscValue),minval(mscValue) +! write(*,*) '1H FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) ID(1:25) = 0 ITPREC = NINT(TPREC) !mp @@ -3766,33 +3753,23 @@ SUBROUTINE SURFCE ENDIF IF (IGET(914).GT.0) THEN ffgfile='ffg_03h.grib2' - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - var_scale=1 - mscNlon=nx - mscNlat=ny - mscNlev=nz - dlon=rdx - dlat=rdy - lonMin=rlonmin - lonMax=lonMin+dlon*(mscNlon-1) - latMax=rlatmax - latMin=latMax-dlat*(mscNlat-1) - if (.not. allocated(msclon)) then - allocate(msclon(mscNlon)) - allocate(msclat(mscNlat)) - allocate(mscValue(mscNlon,mscNlat)) + INQUIRE(FILE=ffgfile, EXIST=file_exists) + if (file_exists) then + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + mscNlon=nx + mscNlat=ny + if (.not. allocated(mscValue)) then + allocate(mscValue(mscNlon,mscNlat)) + endif + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + else + write(*,*) 'WARNING: 3h FFG file not available' + mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 endif - DO i=1,mscNlon - msclon(i)=lonMin+(i-1)*dlon - ENDDO - DO i=1,mscNlat - msclat(i)=latMin+(i-1)*dlat - ENDDO - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - write(*,*) '3H FFG MAX, MIN:', & - maxval(mscValue),minval(mscValue) +! write(*,*) '3H FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) ID(1:25) = 0 ITPREC = NINT(TPREC) !mp @@ -3851,33 +3828,23 @@ SUBROUTINE SURFCE ENDIF IF (IGET(915).GT.0) THEN ffgfile='ffg_06h.grib2' - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - var_scale=1 - mscNlon=nx - mscNlat=ny - mscNlev=nz - dlon=rdx - dlat=rdy - lonMin=rlonmin - lonMax=lonMin+dlon*(mscNlon-1) - latMax=rlatmax - latMin=latMax-dlat*(mscNlat-1) - if (.not. allocated(msclon)) then - allocate(msclon(mscNlon)) - allocate(msclat(mscNlat)) - allocate(mscValue(mscNlon,mscNlat)) + INQUIRE(FILE=ffgfile, EXIST=file_exists) + if (file_exists) then + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + mscNlon=nx + mscNlat=ny + if (.not. allocated(mscValue)) then + allocate(mscValue(mscNlon,mscNlat)) + endif + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + else + write(*,*) 'WARNING: 6h FFG file not available' + mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 endif - DO i=1,mscNlon - msclon(i)=lonMin+(i-1)*dlon - ENDDO - DO i=1,mscNlat - msclat(i)=latMin+(i-1)*dlat - ENDDO - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - write(*,*) '6H FFG MAX, MIN:', & - maxval(mscValue),minval(mscValue) +! write(*,*) '6H FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) ID(1:25) = 0 ITPREC = NINT(TPREC) !mp @@ -3935,33 +3902,23 @@ SUBROUTINE SURFCE ENDIF IF (IGET(916).GT.0) THEN ffgfile='ffg_12h.grib2' - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - var_scale=1 - mscNlon=nx - mscNlat=ny - mscNlev=nz - dlon=rdx - dlat=rdy - lonMin=rlonmin - lonMax=lonMin+dlon*(mscNlon-1) - latMax=rlatmax - latMin=latMax-dlat*(mscNlat-1) - if (.not. allocated(msclon)) then - allocate(msclon(mscNlon)) - allocate(msclat(mscNlat)) - allocate(mscValue(mscNlon,mscNlat)) + INQUIRE(FILE=ffgfile, EXIST=file_exists) + if (file_exists) then + call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + mscNlon=nx + mscNlat=ny + if (.not. allocated(mscValue)) then + allocate(mscValue(mscNlon,mscNlat)) + endif + ntot = nx*ny + call read_grib2_sngle(ffgfile,ntot,height,mscValue) + else + write(*,*) 'WARNING: 12h FFG file not available' + mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 endif - DO i=1,mscNlon - msclon(i)=lonMin+(i-1)*dlon - ENDDO - DO i=1,mscNlat - msclat(i)=latMin+(i-1)*dlat - ENDDO - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - write(*,*) '12H FFG MAX, MIN:', & - maxval(mscValue),minval(mscValue) +! write(*,*) '12H FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) ID(1:25) = 0 ITPREC = NINT(TPREC) !mp From adbbf6acd7bf0ac5065b9de8a3a69f32e2601d1f Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 13 Aug 2021 15:44:45 +0000 Subject: [PATCH 20/46] Bug fixes for FFG file existence check, and changes to handle rotated lat-lon grid interpolation for FFG --- sorc/ncep_post.fd/SURFCE.f | 6 +++++- sorc/ncep_post.fd/grib2_module.f | 21 +++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 5102912df..6f1963e72 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -155,10 +155,14 @@ SUBROUTINE SURFCE real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es, & - RLONMIN,RLATMAX,RLAT,RLON + RLONMIN,RLATMAX + + real*8 RDX,RDY character(len=256) :: ffgfile + logical file_exists + logical, parameter :: debugprint = .false. !**************************************************************************** diff --git a/sorc/ncep_post.fd/grib2_module.f b/sorc/ncep_post.fd/grib2_module.f index d0ca00419..35c064c53 100644 --- a/sorc/ncep_post.fd/grib2_module.f +++ b/sorc/ncep_post.fd/grib2_module.f @@ -1105,6 +1105,17 @@ subroutine read_grib2_head(filenameG2,nx,ny,nz,rlonmin,rlatmax,rdx,rdy) rlonmin = gfld%igdtmpl(13)/scale_factor ! write(*,*) 'nx,ny=',nx,ny ! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else if (gfld%igdtnum.eq.1) then ! Rotated Lat Lon Grid (RRFS_NA) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(17)/scale_factor + rdy = gfld%igdtmpl(18)/scale_factor + rlatmax = gfld%igdtmpl(12)/scale_factor + rlonmin = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy ! write(*,*) 'lat1,lon1=',rlatmax,rlonmin else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) nx = gfld%igdtmpl(8) @@ -1249,6 +1260,16 @@ subroutine read_grib2_sngle(filenameG2,ntot,height,var) ! write(*,*) 'nx,ny=',nx,ny ! write(*,*) 'dx,dy=',dx,dy ! write(*,*) 'lat1,lon1=',lat1,lon1 + else if (gfld%igdtnum.eq.1) then ! Rotated Lat Lon Grid (RRFS_NA) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(17)/scale_factor + dy = gfld%igdtmpl(18)/scale_factor + lat1 = gfld%igdtmpl(12)/scale_factor + lon1 = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) nx = gfld%igdtmpl(8) ny = gfld%igdtmpl(9) From 1762cb065d286d8021e8db3a777fc81167368de9 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 13 Aug 2021 16:17:39 +0000 Subject: [PATCH 21/46] Bug fixes for FFG existence checks in SURFCE.f --- sorc/ncep_post.fd/SURFCE.f | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 6f1963e72..e732c98b8 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3688,7 +3688,8 @@ SUBROUTINE SURFCE call read_grib2_sngle(ffgfile,ntot,height,mscValue) else write(*,*) 'WARNING: 1h FFG file not available' - mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 +! In this case, set mscValue to a large number + mscValue = AVGPREC_CONT*FLOAT(IFHR)*3600.*10000./DTQ2 endif ! write(*,*) '1H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) @@ -3770,7 +3771,8 @@ SUBROUTINE SURFCE call read_grib2_sngle(ffgfile,ntot,height,mscValue) else write(*,*) 'WARNING: 3h FFG file not available' - mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 +! In this case, set mscValue to a large number + mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 endif ! write(*,*) '3H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) @@ -3845,7 +3847,8 @@ SUBROUTINE SURFCE call read_grib2_sngle(ffgfile,ntot,height,mscValue) else write(*,*) 'WARNING: 6h FFG file not available' - mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 +! In this case, set mscValue to a large number + mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 endif ! write(*,*) '6H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) @@ -3919,7 +3922,8 @@ SUBROUTINE SURFCE call read_grib2_sngle(ffgfile,ntot,height,mscValue) else write(*,*) 'WARNING: 12h FFG file not available' - mscValue = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*10000./DTQ2 +! In this case, set mscValue to a large number + mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 endif ! write(*,*) '12H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) From 54e5dc9f1f5b3d7186bd4f31150e8f28b7331ba8 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 13 Aug 2021 19:10:51 +0000 Subject: [PATCH 22/46] Another bug fix for SURFCE.f --- sorc/ncep_post.fd/SURFCE.f | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index e732c98b8..c74f8720b 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3772,7 +3772,7 @@ SUBROUTINE SURFCE else write(*,*) 'WARNING: 3h FFG file not available' ! In this case, set mscValue to a large number - mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 + mscValue = AVGPREC*FLOAT(IFHR)*3600.*10000./DTQ2 endif ! write(*,*) '3H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) @@ -3848,7 +3848,7 @@ SUBROUTINE SURFCE else write(*,*) 'WARNING: 6h FFG file not available' ! In this case, set mscValue to a large number - mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 + mscValue = AVGPREC*FLOAT(IFHR)*3600.*10000./DTQ2 endif ! write(*,*) '6H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) @@ -3923,7 +3923,7 @@ SUBROUTINE SURFCE else write(*,*) 'WARNING: 12h FFG file not available' ! In this case, set mscValue to a large number - mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 + mscValue = AVGPREC*FLOAT(IFHR)*3600.*10000./DTQ2 endif ! write(*,*) '12H FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) From 9b8f6f13f23e18bb03ebbf9fa603f1ad224798b3 Mon Sep 17 00:00:00 2001 From: EricJames-NOAA Date: Wed, 25 Aug 2021 11:35:00 -0600 Subject: [PATCH 23/46] Updating XML and flat txt files to include a 65th vertical level to be consistent with updated FV3LAM model with higher model top. (#13) --- parm/fv3lam_rrfs.xml | 34 +++++++-------- parm/postxconfig-NT-fv3lam_rrfs.txt | 68 ++++++++++++++--------------- 2 files changed, 51 insertions(+), 51 deletions(-) diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index 7846b9497..0e11533f4 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -1884,7 +1884,7 @@ PRES 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 6.0 @@ -1893,7 +1893,7 @@ HGT 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 4.0 @@ -1902,7 +1902,7 @@ TMP 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 4.0 @@ -1911,7 +1911,7 @@ SPFH 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 7.0 @@ -1920,7 +1920,7 @@ UGRD 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 4.0 @@ -1929,7 +1929,7 @@ VGRD 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 4.0 @@ -1938,7 +1938,7 @@ VVEL 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 5.0 @@ -1947,7 +1947,7 @@ DZDT 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. -5.0 @@ -1956,7 +1956,7 @@ TKE 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2369,7 +2369,7 @@ CLWMR 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2378,7 +2378,7 @@ ICMR 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2387,7 +2387,7 @@ GRLE 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2396,7 +2396,7 @@ TCDC 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2405,7 +2405,7 @@ RWMR 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2414,7 +2414,7 @@ SNMR 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2424,7 +2424,7 @@ NCEP 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 @@ -2434,7 +2434,7 @@ NCEP 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. -49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 3.0 diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index d5e4b3861..93fe30cf4 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -9886,8 +9886,8 @@ PRES hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -9923,8 +9923,8 @@ HGT hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -9960,8 +9960,8 @@ TMP hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -9997,8 +9997,8 @@ SPFH hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -10034,8 +10034,8 @@ UGRD hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -10071,8 +10071,8 @@ VGRD hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -10108,8 +10108,8 @@ VVEL hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -10145,8 +10145,8 @@ DZDT hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -10182,8 +10182,8 @@ TKE hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12402,8 +12402,8 @@ CLWMR hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12439,8 +12439,8 @@ ICMR hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12476,8 +12476,8 @@ GRLE hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12513,8 +12513,8 @@ TCDC hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12550,8 +12550,8 @@ RWMR hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12587,8 +12587,8 @@ SNMR hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12624,8 +12624,8 @@ NCEP hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? @@ -12661,8 +12661,8 @@ NCEP hybrid_lvl 0 ? -64 -1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. +65 +1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. ? 0 ? From 384cb7196fd89c7a08ce9bac567de8071110ed0b Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 21 Sep 2021 16:50:50 +0000 Subject: [PATCH 24/46] Code cleanup for QPF - FFG comparison. Comparison put into subroutine. --- sorc/ncep_post.fd/SURFCE.f | 457 ++++++++++++++----------------------- 1 file changed, 167 insertions(+), 290 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index c74f8720b..1eea2257a 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -146,7 +146,7 @@ SUBROUTINE SURFCE REAL totprcp, snowratio,t2,rainl ! - integer NLON,NLAT,NTOT + integer NLON,NLAT,NTOT,ntr,tinv integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, & @@ -3675,312 +3675,71 @@ SUBROUTINE SURFCE ! thresholds IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' - INQUIRE(FILE=ffgfile, EXIST=file_exists) - if (file_exists) then - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - mscNlon=nx - mscNlat=ny - if (.not. allocated(mscValue)) then - allocate(mscValue(mscNlon,mscNlat)) - endif - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - else - write(*,*) 'WARNING: 1h FFG file not available' -! In this case, set mscValue to a large number - mscValue = AVGPREC_CONT*FLOAT(IFHR)*3600.*10000./DTQ2 - endif -! write(*,*) '1H FFG MAX, MIN:', & -! maxval(mscValue),minval(mscValue) - ID(1:25) = 0 - ITPREC = NINT(TPREC) -!mp - if (ITPREC /= 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif -!mp - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR==0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN -!$omp parallel do private(i,j) - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .EQ. 0) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ENDIF - IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) - if(ITPREC>0) then - fld_info(cfld)%ntrange=(IFHR-ID(18))/ITPREC - else - fld_info(cfld)%ntrange=0 - endif - fld_info(cfld)%tinvstat=ITPREC - if(fld_info(cfld)%ntrange.eq.0) then - if (ifhr.eq.0) then - fld_info(cfld)%tinvstat=0 - else - fld_info(cfld)%tinvstat=1 - endif - fld_info(cfld)%ntrange=1 - end if + call qpf_comp(ffgfile,1,AVGPREC_CONT,GRID1,ntr,tinv) + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) + fld_info(cfld)%ntrange=ntr + fld_info(cfld)%tinvstat=tinv !$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo enddo - enddo - endif + endif ENDIF IF (IGET(914).GT.0) THEN ffgfile='ffg_03h.grib2' - INQUIRE(FILE=ffgfile, EXIST=file_exists) - if (file_exists) then - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - mscNlon=nx - mscNlat=ny - if (.not. allocated(mscValue)) then - allocate(mscValue(mscNlon,mscNlat)) - endif - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - else - write(*,*) 'WARNING: 3h FFG file not available' -! In this case, set mscValue to a large number - mscValue = AVGPREC*FLOAT(IFHR)*3600.*10000./DTQ2 - endif -! write(*,*) '3H FFG MAX, MIN:', & -! maxval(mscValue),minval(mscValue) - ID(1:25) = 0 - ITPREC = NINT(TPREC) -!mp - if (ITPREC /= 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif -!mp - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR==0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN -!$omp parallel do private(i,j) - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .NE.3) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ENDIF - IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) - fld_info(cfld)%ntrange=1 -! fld_info(cfld)%tinvstat=IFHR-ID(18) - if (ifhr.eq.3) then - fld_info(cfld)%tinvstat=3 - else - fld_info(cfld)%tinvstat=0 - endif + call qpf_comp(ffgfile,3,AVGPREC,GRID1,ntr,tinv) + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) + fld_info(cfld)%ntrange=ntr + fld_info(cfld)%tinvstat=tinv !$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo enddo - enddo - endif + endif ENDIF IF (IGET(915).GT.0) THEN ffgfile='ffg_06h.grib2' - INQUIRE(FILE=ffgfile, EXIST=file_exists) - if (file_exists) then - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - mscNlon=nx - mscNlat=ny - if (.not. allocated(mscValue)) then - allocate(mscValue(mscNlon,mscNlat)) - endif - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - else - write(*,*) 'WARNING: 6h FFG file not available' -! In this case, set mscValue to a large number - mscValue = AVGPREC*FLOAT(IFHR)*3600.*10000./DTQ2 - endif -! write(*,*) '6H FFG MAX, MIN:', & -! maxval(mscValue),minval(mscValue) - ID(1:25) = 0 - ITPREC = NINT(TPREC) -!mp - if (ITPREC /= 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif -!mp - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR==0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .NE. 6) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ENDIF - IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) - fld_info(cfld)%ntrange=1 -! fld_info(cfld)%tinvstat=IFHR-ID(18) - if (ifhr.eq.6) then - fld_info(cfld)%tinvstat=6 - else - fld_info(cfld)%tinvstat=0 - endif + call qpf_comp(ffgfile,6,AVGPREC,GRID1,ntr,tinv) + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) + fld_info(cfld)%ntrange=ntr + fld_info(cfld)%tinvstat=tinv !$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo enddo - enddo - endif + endif ENDIF IF (IGET(916).GT.0) THEN ffgfile='ffg_12h.grib2' - INQUIRE(FILE=ffgfile, EXIST=file_exists) - if (file_exists) then - call read_grib2_head(ffgfile,nx,ny,nz,rlonmin,rlatmax,& - rdx,rdy) - mscNlon=nx - mscNlat=ny - if (.not. allocated(mscValue)) then - allocate(mscValue(mscNlon,mscNlat)) - endif - ntot = nx*ny - call read_grib2_sngle(ffgfile,ntot,height,mscValue) - else - write(*,*) 'WARNING: 12h FFG file not available' -! In this case, set mscValue to a large number - mscValue = AVGPREC*FLOAT(IFHR)*3600.*10000./DTQ2 - endif -! write(*,*) '12H FFG MAX, MIN:', & -! maxval(mscValue),minval(mscValue) - ID(1:25) = 0 - ITPREC = NINT(TPREC) -!mp - if (ITPREC /= 0) then - IFINCR = MOD(IFHR,ITPREC) - IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) - else - IFINCR = 0 - endif -!mp - ID(18) = 0 - ID(19) = IFHR - IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN - ID(20) = 4 - IF (IFINCR==0) THEN - ID(18) = IFHR-ITPREC - ELSE - ID(18) = IFHR-IFINCR - IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR - ENDIF - IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN - DO J=JSTA,JEND - DO I=1,IM - IF (IFHR .NE. 12) THEN - GRID1(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - GRID1(I,J) = 0.0 - ELSE IF (AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN - GRID1(I,J) = 1.0 - ELSE - GRID1(I,J) = 0.0 - ENDIF - ENDDO - ENDDO - ENDIF - IF (ID(18).LT.0) ID(18) = 0 - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(916)) - fld_info(cfld)%ntrange=1 -! fld_info(cfld)%tinvstat=IFHR-ID(18) - if (ifhr.eq.12) then - fld_info(cfld)%tinvstat=12 - else - fld_info(cfld)%tinvstat=0 - endif + call qpf_comp(ffgfile,12,AVGPREC,GRID1,ntr,tinv) + if(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(916)) + fld_info(cfld)%ntrange=ntr + fld_info(cfld)%tinvstat=tinv !$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = GRID1(i,jj) + enddo enddo - enddo - endif + endif ENDIF ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR @@ -6272,3 +6031,121 @@ SUBROUTINE SURFCE ENDIF RETURN END + + subroutine qpf_comp(compfile,fcst,qpfvar,outgrid,trange,invstat) +! Read in QPF threshold for exceedance grid. +! Calculate exceedance grid. +! compfile: file name for reference grid. +! fcst: forecast length in hours. +! qpfvar: UPP name for QPF variable. +! outgrid: exceedance grid. +! trange: GRIB2 variable ntrange. +! invstat: GRIB2 variable tinvstat. + use ctlblk_mod, only: SPVAL,JSTA,JEND,IM,DTQ2,IFHR,IFMIN,TPREC, & + MODELNAME + use rqstfld_mod, only: id + use grib2_module, only: read_grib2_head, read_grib2_sngle + implicit none + character(len=256), intent(in) :: compfile + integer, intent(in) :: fcst + integer, intent(inout) :: trange,invstat + real, intent(in) :: qpfvar(IM,JSTA:JEND) + real, intent(inout) :: outgrid(IM,JSTA:JEND) + + real, allocatable, dimension(:,:) :: mscValue + + integer :: nx, ny, nz, ntot, mscNlon, mscNlat, height + integer :: ITPREC, IFINCR + real :: rlonmin, rlatmax + real*8 rdx, rdy + + logical :: file_exists + + integer :: i, j, k + +! Read in reference grid. + INQUIRE(FILE=compfile, EXIST=file_exists) + if (file_exists) then + call read_grib2_head(compfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + mscNlon=nx + mscNlat=ny + allocate(mscValue(mscNlon,mscNlat)) + ntot = nx*ny + call read_grib2_sngle(compfile,ntot,height,mscValue) + else + write(*,*) 'WARNING: FFG file not available for hour: ', fcst +! In this case, set mscValue to a large number + mscValue = qpfvar*FLOAT(IFHR)*3600.*10000./DTQ2 + endif +! write(*,*) '1H FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) + +! Set GRIB variables. + ID(1:25) = 0 + ITPREC = NINT(TPREC) + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + +! Calculate exceedance grid. + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN + outgrid = qpfvar - qpfvar + !$omp parallel do private(i,j) + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .EQ. 0) THEN + outgrid(I,J) = 0.0 + ELSE IF (IFHR .NE. fcst) THEN + outgrid(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + outgrid(I,J) = 0.0 + ELSE IF (qpfvar(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + outgrid(I,J) = 1.0 + ELSE + outgrid(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ENDIF + IF (ID(18).LT.0) ID(18) = 0 + +! Set GRIB2 variables. + IF(fcst .EQ. 1) THEN + IF(ITPREC>0) THEN + trange = (IFHR-ID(18))/ITPREC + ELSE + trange = 0 + ENDIF + invstat = ITPREC + IF(trange .EQ. 0) THEN + IF (IFHR .EQ. 0) THEN + invstat = 0 + ELSE + invstat = 1 + ENDIF + trange = 1 + ENDIF + ELSE + trange = 1 + IF (IFHR .EQ. fcst) THEN + invstat = fcst + ELSE + invstat = 0 + ENDIF + ENDIF + + end subroutine qpf_comp From 0cb6a03c048c665dbf8072202ea255cb65a56372 Mon Sep 17 00:00:00 2001 From: eric james Date: Sun, 26 Sep 2021 21:26:48 +0000 Subject: [PATCH 25/46] Cleanup of SURFCE.f; moving the FFG comparisons into a subroutine. --- sorc/ncep_post.fd/SURFCE.f | 154 ++++++++++++++++--------------------- 1 file changed, 66 insertions(+), 88 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 1eea2257a..8be3702fc 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -130,13 +130,12 @@ SUBROUTINE SURFCE t1d, q1d, zwet, & smcdry, smcmax,doms, domr, & domip, domzr, rsmin, smcref,& - rcq, rct, rcsoil, gc, rcs, & - mscValue + rcq, rct, rcsoil, gc, rcs real, dimension(im,jsta:jend) :: evp real, dimension(im,jsta_2l:jend_2u) :: egrid1, egrid2 real, dimension(im,jsta_2l:jend_2u) :: grid2 - real, dimension(im,jm) :: grid1 + real, dimension(im,jm) :: grid1, grid3 real, dimension(im,jsta_2l:jend_2u) :: iceg ! , ua, va real, allocatable, dimension(:,:,:) :: sleet, rain, freezr, snow @@ -3675,71 +3674,21 @@ SUBROUTINE SURFCE ! thresholds IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' - call qpf_comp(ffgfile,1,AVGPREC_CONT,GRID1,ntr,tinv) - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(913)) - fld_info(cfld)%ntrange=ntr - fld_info(cfld)%tinvstat=tinv -!$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) - enddo - enddo - endif +! call qpf_comp(913,ffgfile,1,AVGPREC_CONT) + call qpf_comp(913,ffgfile,1) ENDIF IF (IGET(914).GT.0) THEN ffgfile='ffg_03h.grib2' - call qpf_comp(ffgfile,3,AVGPREC,GRID1,ntr,tinv) - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(914)) - fld_info(cfld)%ntrange=ntr - fld_info(cfld)%tinvstat=tinv -!$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) - enddo - enddo - endif +! call qpf_comp(914,ffgfile,3,AVGPREC) + call qpf_comp(914,ffgfile,3) ENDIF IF (IGET(915).GT.0) THEN ffgfile='ffg_06h.grib2' - call qpf_comp(ffgfile,6,AVGPREC,GRID1,ntr,tinv) - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(915)) - fld_info(cfld)%ntrange=ntr - fld_info(cfld)%tinvstat=tinv -!$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) - enddo - enddo - endif + call qpf_comp(915,ffgfile,6) ENDIF IF (IGET(916).GT.0) THEN ffgfile='ffg_12h.grib2' - call qpf_comp(ffgfile,12,AVGPREC,GRID1,ntr,tinv) - if(grib=='grib2') then - cfld=cfld+1 - fld_info(cfld)%ifld=IAVBLFLD(IGET(916)) - fld_info(cfld)%ntrange=ntr - fld_info(cfld)%tinvstat=tinv -!$omp parallel do private(i,j,jj) - do j=1,jend-jsta+1 - jj = jsta+j-1 - do i=1,im - datapd(i,j,cfld) = GRID1(i,jj) - enddo - enddo - endif + call qpf_comp(916,ffgfile,12) ENDIF ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR @@ -6032,25 +5981,24 @@ SUBROUTINE SURFCE RETURN END - subroutine qpf_comp(compfile,fcst,qpfvar,outgrid,trange,invstat) + subroutine qpf_comp(igetfld,compfile,fcst) ! Read in QPF threshold for exceedance grid. ! Calculate exceedance grid. ! compfile: file name for reference grid. ! fcst: forecast length in hours. -! qpfvar: UPP name for QPF variable. -! outgrid: exceedance grid. -! trange: GRIB2 variable ntrange. -! invstat: GRIB2 variable tinvstat. - use ctlblk_mod, only: SPVAL,JSTA,JEND,IM,DTQ2,IFHR,IFMIN,TPREC, & - MODELNAME - use rqstfld_mod, only: id + use ctlblk_mod, only: SPVAL,JSTA,JEND,IM,DTQ2,IFHR,IFMIN,TPREC,GRIB, & + MODELNAME,JM,CFLD,DATAPD,FLD_INFO,JSTA_2L,JEND_2U + use rqstfld_mod, only: IGET, ID, LVLS, IAVBLFLD use grib2_module, only: read_grib2_head, read_grib2_sngle + use vrbls2d, only: AVGPREC, AVGPREC_CONT implicit none character(len=256), intent(in) :: compfile - integer, intent(in) :: fcst - integer, intent(inout) :: trange,invstat - real, intent(in) :: qpfvar(IM,JSTA:JEND) - real, intent(inout) :: outgrid(IM,JSTA:JEND) + integer, intent(in) :: igetfld,fcst + integer :: trange,invstat +! real, intent(in) :: qpfvar(IM,JM) +! real, intent(in) :: qpfvar(IM,JSTA:JEND) + real, dimension(IM,JM) :: outgrid +! real, dimension(IM,jsta:jend) :: outgrid real, allocatable, dimension(:,:) :: mscValue @@ -6061,7 +6009,7 @@ subroutine qpf_comp(compfile,fcst,qpfvar,outgrid,trange,invstat) logical :: file_exists - integer :: i, j, k + integer :: i, j, k, jj ! Read in reference grid. INQUIRE(FILE=compfile, EXIST=file_exists) @@ -6070,16 +6018,19 @@ subroutine qpf_comp(compfile,fcst,qpfvar,outgrid,trange,invstat) rdx,rdy) mscNlon=nx mscNlat=ny - allocate(mscValue(mscNlon,mscNlat)) + if (.not. allocated(mscValue)) then + allocate(mscValue(mscNlon,mscNlat)) + endif ntot = nx*ny call read_grib2_sngle(compfile,ntot,height,mscValue) else write(*,*) 'WARNING: FFG file not available for hour: ', fcst -! In this case, set mscValue to a large number - mscValue = qpfvar*FLOAT(IFHR)*3600.*10000./DTQ2 + IF(fcst .EQ. 1) THEN + mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 + ELSE + mscValue = AVGPREC_CONT*FLOAT(IFHR)*3600.*10000./DTQ2 + ENDIF endif -! write(*,*) '1H FFG MAX, MIN:', & -! maxval(mscValue),minval(mscValue) ! Set GRIB variables. ID(1:25) = 0 @@ -6103,24 +6054,35 @@ subroutine qpf_comp(compfile,fcst,qpfvar,outgrid,trange,invstat) ! Calculate exceedance grid. IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN - outgrid = qpfvar - qpfvar - !$omp parallel do private(i,j) +! !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM - IF (IFHR .EQ. 0) THEN - outgrid(I,J) = 0.0 - ELSE IF (IFHR .NE. fcst) THEN - outgrid(I,J) = 0.0 - ELSE IF (mscValue(I,J) .LE. 0.0) THEN - outgrid(I,J) = 0.0 - ELSE IF (qpfvar(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN - outgrid(I,J) = 1.0 +! IF (IFHR .EQ. 0) THEN +! outgrid(I,J) = 0.0 +! ELSE IF (IFHR .NE. fcst) THEN +! outgrid(I,J) = 0.0 +! ELSE IF (mscValue(I,J) .LE. 0.0) THEN +! outgrid(I,J) = 0.0 +! ELSE IF (qpfvar(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN +! outgrid(I,J) = 1.0 +! ELSE +! outgrid(I,J) = 0.0 +! ENDIF + IF(fcst .EQ. 1) THEN + outgrid(I,J) = AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 ELSE - outgrid(I,J) = 0.0 + outgrid(I,J) = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 ENDIF +! outgrid(I,J) = AVGPREC_CONT(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 ENDDO ENDDO ENDIF + write(*,*) 'FFG MAX, MIN:', & + maxval(mscValue),minval(mscValue) + write(*,*) '1H FFG EXCEEDANCE MAX, MIN:', & + maxval(outgrid),minval(outgrid) + write(*,*) 'ID(19): ', FLOAT(ID(19)) + write(*,*) 'ID(18): ', FLOAT(ID(18)) IF (ID(18).LT.0) ID(18) = 0 ! Set GRIB2 variables. @@ -6148,4 +6110,20 @@ subroutine qpf_comp(compfile,fcst,qpfvar,outgrid,trange,invstat) ENDIF ENDIF + IF(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(igetfld)) + fld_info(cfld)%ntrange=trange + fld_info(cfld)%tinvstat=invstat +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = outgrid(i,jj) + enddo + enddo + endif + + RETURN + end subroutine qpf_comp From bc793780e8cd60730385eddf1cf155778ef0c78e Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 27 Sep 2021 18:13:42 +0000 Subject: [PATCH 26/46] Final cleanup of exceedance code for QPF vs FFG. --- sorc/ncep_post.fd/SURFCE.f | 55 +++++++++++++++----------------------- 1 file changed, 21 insertions(+), 34 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 8be3702fc..11c42081c 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -135,28 +135,28 @@ SUBROUTINE SURFCE real, dimension(im,jsta:jend) :: evp real, dimension(im,jsta_2l:jend_2u) :: egrid1, egrid2 real, dimension(im,jsta_2l:jend_2u) :: grid2 - real, dimension(im,jm) :: grid1, grid3 + real, dimension(im,jm) :: grid1 real, dimension(im,jsta_2l:jend_2u) :: iceg ! , ua, va real, allocatable, dimension(:,:,:) :: sleet, rain, freezr, snow ! real, dimension(im,jm,nalg) :: sleet, rain, freezr, snow - real, allocatable, dimension(:,:) :: ylat, xlon +! real, allocatable, dimension(:,:) :: ylat, xlon !GSD REAL totprcp, snowratio,t2,rainl ! - integer NLON,NLAT,NTOT,ntr,tinv +! integer NLON,NLAT,NTOT,ntr,tinv integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & - IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed, & - NX,NY,NZ,MSCNLON,MSCNLAT,HEIGHT + IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed +! NX,NY,NZ,MSCNLON,MSCNLAT,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & - qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es, & - RLONMIN,RLATMAX + qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es +! RLONMIN,RLATMAX - real*8 RDX,RDY +! real*8 RDX,RDY character(len=256) :: ffgfile @@ -3674,12 +3674,10 @@ SUBROUTINE SURFCE ! thresholds IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' -! call qpf_comp(913,ffgfile,1,AVGPREC_CONT) call qpf_comp(913,ffgfile,1) ENDIF IF (IGET(914).GT.0) THEN ffgfile='ffg_03h.grib2' -! call qpf_comp(914,ffgfile,3,AVGPREC) call qpf_comp(914,ffgfile,3) ENDIF IF (IGET(915).GT.0) THEN @@ -5995,10 +5993,7 @@ subroutine qpf_comp(igetfld,compfile,fcst) character(len=256), intent(in) :: compfile integer, intent(in) :: igetfld,fcst integer :: trange,invstat -! real, intent(in) :: qpfvar(IM,JM) -! real, intent(in) :: qpfvar(IM,JSTA:JEND) real, dimension(IM,JM) :: outgrid -! real, dimension(IM,jsta:jend) :: outgrid real, allocatable, dimension(:,:) :: mscValue @@ -6057,32 +6052,24 @@ subroutine qpf_comp(igetfld,compfile,fcst) ! !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM -! IF (IFHR .EQ. 0) THEN -! outgrid(I,J) = 0.0 -! ELSE IF (IFHR .NE. fcst) THEN -! outgrid(I,J) = 0.0 -! ELSE IF (mscValue(I,J) .LE. 0.0) THEN -! outgrid(I,J) = 0.0 -! ELSE IF (qpfvar(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN -! outgrid(I,J) = 1.0 -! ELSE -! outgrid(I,J) = 0.0 -! ENDIF - IF(fcst .EQ. 1) THEN - outgrid(I,J) = AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 + IF (IFHR .EQ. 0) THEN + outgrid(I,J) = 0.0 + ELSE IF (IFHR .NE. fcst .AND. fcst .GT. 1) THEN + outgrid(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + outgrid(I,J) = 0.0 + ELSE IF (fcst .EQ. 1 .AND. AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + outgrid(I,J) = 1.0 + ELSE IF (fcst .GT. 1 .AND. AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + outgrid(I,J) = 1.0 ELSE - outgrid(I,J) = AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 + outgrid(I,J) = 0.0 ENDIF -! outgrid(I,J) = AVGPREC_CONT(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 ENDDO ENDDO ENDIF - write(*,*) 'FFG MAX, MIN:', & - maxval(mscValue),minval(mscValue) - write(*,*) '1H FFG EXCEEDANCE MAX, MIN:', & - maxval(outgrid),minval(outgrid) - write(*,*) 'ID(19): ', FLOAT(ID(19)) - write(*,*) 'ID(18): ', FLOAT(ID(18)) +! write(*,*) 'FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) IF (ID(18).LT.0) ID(18) = 0 ! Set GRIB2 variables. From e755d934e01dcb47c9998dd71f09e565fbc978f4 Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 27 Sep 2021 18:18:44 +0000 Subject: [PATCH 27/46] Removing some commented out variable declarations. --- sorc/ncep_post.fd/SURFCE.f | 5 ----- 1 file changed, 5 deletions(-) diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 11c42081c..526bd2658 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -140,23 +140,18 @@ SUBROUTINE SURFCE ! , ua, va real, allocatable, dimension(:,:,:) :: sleet, rain, freezr, snow ! real, dimension(im,jm,nalg) :: sleet, rain, freezr, snow -! real, allocatable, dimension(:,:) :: ylat, xlon !GSD REAL totprcp, snowratio,t2,rainl ! -! integer NLON,NLAT,NTOT,ntr,tinv integer I,J,IWX,ITMAXMIN,IFINCR,ISVALUE,II,JJ, & ITPREC,ITSRFC,L,LS,IVEG,LLMH, & IVG,IRTN,ISEED, icat, cnt_snowratio(10),icnt_snow_rain_mixed -! NX,NY,NZ,MSCNLON,MSCNLAT,HEIGHT real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es -! RLONMIN,RLATMAX -! real*8 RDX,RDY character(len=256) :: ffgfile From 3521968c4b979105048486daed4f81258ccee585 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 8 Oct 2021 20:18:38 +0000 Subject: [PATCH 28/46] Additional cleanup recommended by Ming: we really only need two exceedance variables; one for 1h FFG and one for run total FFG exceedances. --- parm/fv3lam_post_avblflds.xml | 34 +++-------- parm/fv3lam_rrfs.xml | 24 +++----- parm/postxconfig-NT-fv3lam_rrfs.txt | 90 +++-------------------------- sorc/ncep_post.fd/SURFCE.f | 25 ++++---- 4 files changed, 36 insertions(+), 137 deletions(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index c6ad43b7f..690d8c526 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -1110,8 +1110,8 @@ 124 - CLWMR_ON_HYBRID_LVL - CLWMR + CLMR_ON_HYBRID_LVL + CLMR hybrid_lvl 3.0 @@ -1367,8 +1367,8 @@ 153 - CLWMR_ON_ISOBARIC_SFC - CLWMR + CLMR_ON_ISOBARIC_SFC + CLMR isobaric_sfc 4.0 @@ -1837,8 +1837,8 @@ 211 - CLWMR_ON_SIGMA_LVLS - CLWMR + CLMR_ON_SIGMA_LVLS + CLMR sigma_lvl 4.0 @@ -5557,27 +5557,7 @@ 914 - 3H_FFG_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 915 - 6H_FFG_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 916 - 12H_FFG_EXCEEDANCE + ACM_FFG_EXCEEDANCE tmpl4_8 FFLDRO ACM diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index 0e11533f4..77cd84606 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -244,8 +244,8 @@ - CLWMR_ON_ISOBARIC_SFC - CLWMR + CLMR_ON_ISOBARIC_SFC + CLMR 200. 500. 700. 1000. 2000. 3000. 5000. 7000. 7500. 10000. 12500. 15000. 17500. 20000. 22500. 25000. 27500. 30000. 32500. 35000. 37500. 40000. 42500. 45000. 47500. 50000. 52500. 55000. 57500. 60000. 62500. 65000. 67500. 70000. 72500. 75000. 77500. 80000. 82500. 85000. 87500. 90000. 92500. 95000. 97500. 100000. 4.0 @@ -808,8 +808,8 @@ - CLWMR_ON_HYBRID_LVL - CLWMR + CLMR_ON_HYBRID_LVL + CLMR 1. 2. 3.0 @@ -1789,17 +1789,7 @@ - 3H_FFG_EXCEEDANCE - 5.0 - - - - 6H_FFG_EXCEEDANCE - 5.0 - - - - 12H_FFG_EXCEEDANCE + ACM_FFG_EXCEEDANCE 5.0 @@ -2365,8 +2355,8 @@ - CLWMR_ON_HYBRID_LVL - CLWMR + CLMR_ON_HYBRID_LVL + CLMR 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index 93fe30cf4..0b2faaeee 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -1,6 +1,6 @@ 2 222 -258 +256 BGDAWP 32769 ncep_nco @@ -1128,11 +1128,11 @@ isobaric_sfc ? ? 153 -CLWMR_ON_ISOBARIC_SFC +CLMR_ON_ISOBARIC_SFC ? 1 tmpl4_0 -CLWMR +CLMR ? ? isobaric_sfc @@ -4051,11 +4051,11 @@ surface ? ? 124 -CLWMR_ON_HYBRID_LVL +CLMR_ON_HYBRID_LVL ? 1 tmpl4_0 -CLWMR +CLMR ? ? hybrid_lvl @@ -9453,81 +9453,7 @@ surface ? ? 914 -3H_FFG_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -915 -6H_FFG_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -916 -12H_FFG_EXCEEDANCE +ACM_FFG_EXCEEDANCE ? 1 tmpl4_8 @@ -12392,11 +12318,11 @@ surface ? ? 124 -CLWMR_ON_HYBRID_LVL +CLMR_ON_HYBRID_LVL ? 1 tmpl4_0 -CLWMR +CLMR ? ? hybrid_lvl diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 526bd2658..6d127e708 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3666,22 +3666,25 @@ SUBROUTINE SURFCE ENDIF ! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG and ARI -! thresholds +! thresholds. 913 is for 1h QPF, 914 for run total QPF. IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' call qpf_comp(913,ffgfile,1) ENDIF IF (IGET(914).GT.0) THEN - ffgfile='ffg_03h.grib2' - call qpf_comp(914,ffgfile,3) - ENDIF - IF (IGET(915).GT.0) THEN - ffgfile='ffg_06h.grib2' - call qpf_comp(915,ffgfile,6) - ENDIF - IF (IGET(916).GT.0) THEN - ffgfile='ffg_12h.grib2' - call qpf_comp(916,ffgfile,12) + IF (IFHR .EQ. 3) THEN + ffgfile='ffg_03h.grib2' + call qpf_comp(914,ffgfile,3) + ELSEIF (IFHR .EQ. 6) THEN + ffgfile='ffg_06h.grib2' + call qpf_comp(914,ffgfile,6) + ELSEIF (IFHR .EQ. 12) THEN + ffgfile='ffg_12h.grib2' + call qpf_comp(914,ffgfile,12) + ELSE + ffgfile='ffg_01h.grib2' + call qpf_comp(914,ffgfile,1) + ENDIF ENDIF ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR From 4ce8e177ef22b2ca1cf459a293176480f281e5d4 Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 12 Oct 2021 17:22:06 +0000 Subject: [PATCH 29/46] Further cleanup of FFG code, simplifying to two fields (1h acc and run total acc) --- parm/fv3lam_post_avblflds.xml | 140 ++++++++++++++++++++++++++++++++++ sorc/ncep_post.fd/SURFCE.f | 26 ++++--- 2 files changed, 155 insertions(+), 11 deletions(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index 690d8c526..f194c34ff 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -5565,6 +5565,146 @@ 4.0 + + 915 + 1H_1YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 916 + ACM_1YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 917 + 1H_2YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 918 + ACM_2YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 919 + 1H_5YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 920 + ACM_5YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 921 + 1H_10YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 922 + ACM_10YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 923 + 1H_25YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 924 + ACM_25YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 925 + 1H_50YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 926 + ACM_50YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 947 + 1H_100YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 948 + ACM_100YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + 927 SBTA167_ON_TOP_OF_ATMOS diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index 6d127e708..d5363a299 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -154,6 +154,7 @@ SUBROUTINE SURFCE character(len=256) :: ffgfile + character(len=256) :: arifile logical file_exists @@ -3665,14 +3666,17 @@ SUBROUTINE SURFCE endif ENDIF -! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG and ARI +! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG ! thresholds. 913 is for 1h QPF, 914 for run total QPF. IF (IGET(913).GT.0) THEN ffgfile='ffg_01h.grib2' call qpf_comp(913,ffgfile,1) ENDIF IF (IGET(914).GT.0) THEN - IF (IFHR .EQ. 3) THEN + IF (IFHR .EQ. 1) THEN + ffgfile='ffg_01h.grib2' + call qpf_comp(914,ffgfile,1) + ELSEIF (IFHR .EQ. 3) THEN ffgfile='ffg_03h.grib2' call qpf_comp(914,ffgfile,3) ELSEIF (IFHR .EQ. 6) THEN @@ -3683,10 +3687,13 @@ SUBROUTINE SURFCE call qpf_comp(914,ffgfile,12) ELSE ffgfile='ffg_01h.grib2' - call qpf_comp(914,ffgfile,1) + call qpf_comp(914,ffgfile,0) ENDIF ENDIF +! ERIC JAMES: 8 OCT 2021 -- adding precip comparison to ARI +! thresholds. 915 is for 1h QPF, 914 for run total QPF. + ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR ! PRECIPITATION BUCKETS - accumulated between output times ! 'BUCKET1 TOTAL PRECIP ' @@ -6018,11 +6025,6 @@ subroutine qpf_comp(igetfld,compfile,fcst) call read_grib2_sngle(compfile,ntot,height,mscValue) else write(*,*) 'WARNING: FFG file not available for hour: ', fcst - IF(fcst .EQ. 1) THEN - mscValue = AVGPREC*FLOAT(ID(19)-ID(18))*3600.*10000./DTQ2 - ELSE - mscValue = AVGPREC_CONT*FLOAT(IFHR)*3600.*10000./DTQ2 - ENDIF endif ! Set GRIB variables. @@ -6048,11 +6050,10 @@ subroutine qpf_comp(igetfld,compfile,fcst) ! Calculate exceedance grid. IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN ! !$omp parallel do private(i,j) + IF (file_exists) THEN DO J=JSTA,JEND DO I=1,IM - IF (IFHR .EQ. 0) THEN - outgrid(I,J) = 0.0 - ELSE IF (IFHR .NE. fcst .AND. fcst .GT. 1) THEN + IF (IFHR .EQ. 0 .OR. fcst .EQ. 0) THEN outgrid(I,J) = 0.0 ELSE IF (mscValue(I,J) .LE. 0.0) THEN outgrid(I,J) = 0.0 @@ -6065,6 +6066,9 @@ subroutine qpf_comp(igetfld,compfile,fcst) ENDIF ENDDO ENDDO + ELSE + outgrid = 0.0*AVGPREC + ENDIF ENDIF ! write(*,*) 'FFG MAX, MIN:', & ! maxval(mscValue),minval(mscValue) From 6b7c469d2e415bddd270e162d340cb2315fe9a83 Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 12 Oct 2021 19:45:15 +0000 Subject: [PATCH 30/46] Adding ARI comparison fields for 2y, 5y, 10y, and 100y ARIs. --- parm/fv3lam_post_avblflds.xml | 74 +------ parm/fv3lam_rrfs.xml | 38 ++++ parm/postxconfig-NT-fv3lam_rrfs.txt | 298 +++++++++++++++++++++++++++- sorc/ncep_post.fd/SURFCE.f | 106 +++++++++- 4 files changed, 447 insertions(+), 69 deletions(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index f194c34ff..108fb9621 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -5567,26 +5567,6 @@ 915 - 1H_1YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 916 - ACM_1YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 917 1H_2YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5596,7 +5576,7 @@ - 918 + 916 ACM_2YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5606,7 +5586,7 @@ - 919 + 917 1H_5YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5616,7 +5596,7 @@ - 920 + 918 ACM_5YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5626,7 +5606,7 @@ - 921 + 919 1H_10YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5636,7 +5616,7 @@ - 922 + 920 ACM_10YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5646,47 +5626,7 @@ - 923 - 1H_25YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 924 - ACM_25YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 925 - 1H_50YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 926 - ACM_50YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 947 + 921 1H_100YARI_EXCEEDANCE tmpl4_8 FFLDRO @@ -5696,7 +5636,7 @@ - 948 + 922 ACM_100YARI_EXCEEDANCE tmpl4_8 FFLDRO diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index 77cd84606..ea645dd36 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -1793,6 +1793,44 @@ 5.0 + + 1H_2YARI_EXCEEDANCE + 5.0 + + + + ACM_2YARI_EXCEEDANCE + 5.0 + + + + 1H_5YARI_EXCEEDANCE + 5.0 + + + + ACM_5YARI_EXCEEDANCE + 5.0 + + + 1H_10YARI_EXCEEDANCE + 5.0 + + + + ACM_10YARI_EXCEEDANCE + 5.0 + + + 1H_100YARI_EXCEEDANCE + 5.0 + + + + ACM_100YARI_EXCEEDANCE + 5.0 + + diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index 0b2faaeee..649fde3a7 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -1,6 +1,6 @@ 2 222 -256 +264 BGDAWP 32769 ncep_nco @@ -9489,6 +9489,302 @@ surface ? ? ? +915 +1H_2YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +916 +ACM_2YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +917 +1H_5YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +918 +ACM_5YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +919 +1H_10YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +920 +ACM_10YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +921 +1H_100YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? +922 +ACM_100YARI_EXCEEDANCE +? +1 +tmpl4_8 +FFLDRO +? +ACM +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +5.0 +0 +0 +0 +? +? +? BGRD3D 32769 ncep_nco diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index d5363a299..d0a1c1cb5 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -3692,7 +3692,111 @@ SUBROUTINE SURFCE ENDIF ! ERIC JAMES: 8 OCT 2021 -- adding precip comparison to ARI -! thresholds. 915 is for 1h QPF, 914 for run total QPF. +! thresholds. 915 is for 1h QPF, 916 for run total QPF. + + IF (IGET(915).GT.0) THEN + arifile='ari2y_01h.grib2' + call qpf_comp(915,arifile,1) + ENDIF + IF (IGET(916).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari2y_01h.grib2' + call qpf_comp(916,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari2y_03h.grib2' + call qpf_comp(916,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari2y_06h.grib2' + call qpf_comp(916,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari2y_12h.grib2' + call qpf_comp(916,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari2y_24h.grib2' + call qpf_comp(916,arifile,24) + ELSE + arifile='ari2y_01h.grib2' + call qpf_comp(916,arifile,0) + ENDIF + ENDIF + + IF (IGET(917).GT.0) THEN + arifile='ari5y_01h.grib2' + call qpf_comp(917,arifile,1) + ENDIF + IF (IGET(918).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari5y_01h.grib2' + call qpf_comp(918,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari5y_03h.grib2' + call qpf_comp(918,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari5y_06h.grib2' + call qpf_comp(918,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari5y_12h.grib2' + call qpf_comp(918,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari5y_24h.grib2' + call qpf_comp(918,arifile,24) + ELSE + arifile='ari5y_01h.grib2' + call qpf_comp(918,arifile,0) + ENDIF + ENDIF + + IF (IGET(919).GT.0) THEN + arifile='ari10y_01h.grib2' + call qpf_comp(919,arifile,1) + ENDIF + IF (IGET(920).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari10y_01h.grib2' + call qpf_comp(920,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari10y_03h.grib2' + call qpf_comp(920,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari10y_06h.grib2' + call qpf_comp(920,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari10y_12h.grib2' + call qpf_comp(920,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari10y_24h.grib2' + call qpf_comp(920,arifile,24) + ELSE + arifile='ari10y_01h.grib2' + call qpf_comp(920,arifile,0) + ENDIF + ENDIF + + IF (IGET(921).GT.0) THEN + arifile='ari100y_01h.grib2' + call qpf_comp(921,arifile,1) + ENDIF + IF (IGET(922).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari100y_01h.grib2' + call qpf_comp(922,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari100y_03h.grib2' + call qpf_comp(922,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari100y_06h.grib2' + call qpf_comp(922,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari100y_12h.grib2' + call qpf_comp(922,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari100y_24h.grib2' + call qpf_comp(922,arifile,24) + ELSE + arifile='ari100y_01h.grib2' + call qpf_comp(922,arifile,0) + ENDIF + ENDIF ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR ! PRECIPITATION BUCKETS - accumulated between output times From d4c9dd793df0271dd4556d186bf8e08f383da22b Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 12 Oct 2021 22:50:45 +0000 Subject: [PATCH 31/46] Changes to output 9 soil levels from FV3LAM if we are running 9 level RUC LSM. --- parm/fv3lam_rrfs.xml | 71 ++---------- sorc/ncep_post.fd/INITPOST_NETCDF.f | 171 +++++++++++++++++++++++++--- sorc/ncep_post.fd/WRFPOST.f | 24 +++- 3 files changed, 184 insertions(+), 82 deletions(-) diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index ea645dd36..e571700b1 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -385,55 +385,22 @@ 4.0 - - TSOIL_ON_DEPTH_BEL_LAND_SFC_3m - TSOIL - 3. - 3.0 - - TSOIL_ON_DEPTH_BEL_LAND_SFC TSOIL - 2 2 2 2 - 0. 10. 40. 100. - 2 2 2 2 - 10. 40. 100. 200. + 0. 1. 4. 10. 30. 60. 100. 160. 300. + 0. 1. 4. 10. 30. 60. 100. 160. 300. 4.0 SOILW_ON_DEPTH_BEL_LAND_SFC SOILW - NCEP - 2 2 2 2 - 0. 10. 40. 100. - 2 2 2 2 - 10. 40. 100. 200. - 3.0 - - - - SOILL_ON_DEPTH_BEL_LAND_SFC - SOILL - NCEP - 2 2 2 2 - 0. 10. 40. 100. - 2 2 2 2 - 10. 40. 100. 200. + 0. 1. 4. 10. 30. 60. 100. 160. 300. + 0. 1. 4. 10. 30. 60. 100. 160. 300. 3.0 - - SOILM_ON_DEPTH_BEL_LAND_SFC - SOILM - 2 - 0. - 2 - 200. - 3.0 - - CNWAT_ON_SURFACE CNWAT @@ -2207,34 +2174,19 @@ TSOIL_ON_DEPTH_BEL_LAND_SFC TSOIL - 2 2 2 2 - 0. 10. 40. 100. - 2 2 2 2 - 10. 40. 100. 200. + 0. 1. 4. 10. 30. 60. 100. 160. 300. + 0. 1. 4. 10. 30. 60. 100. 160. 300. 4.0 SOILW_ON_DEPTH_BEL_LAND_SFC SOILW - NCEP - 2 2 2 2 - 0. 10. 40. 100. - 2 2 2 2 - 10. 40. 100. 200. + 0. 1. 4. 10. 30. 60. 100. 160. 300. + 0. 1. 4. 10. 30. 60. 100. 160. 300. 3.0 - - SOILM_ON_DEPTH_BEL_LAND_SFC - SOILM - 2 - 0. - 2 - 200. - 3.0 - - SFEXC_ON_SURFACE SFEXC @@ -2259,13 +2211,6 @@ 3.0 - - TSOIL_ON_DEPTH_BEL_LAND_SFC_3m - TSOIL - 3. - 3.0 - - INST_GFLUX_ON_SURFACE GFLUX diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 1e5c737e0..2bdb3ff47 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -65,7 +65,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) avisbeamswin,avisdiffswin,airbeamswin,airdiffswin,refdm10c_max,wspd10max, & alwoutc,alwtoac,aswoutc,aswtoac,alwinc,aswinc,avgpotevp,snoavg, & ti,aod550,du_aod550,ss_aod550,su_aod550,oc_aod550,bc_aod550,prate_max - use soil, only: sldpth, sh2o, smc, stc + use soil, only: sldpth, sllevel, sh2o, smc, stc use masks, only: lmv, lmh, htm, vtm, gdlat, gdlon, dx, dy, hbm2, sm, sice use physcons_post, only: grav => con_g, fv => con_fvirt, rgas => con_rd, & eps => con_eps, epsm1 => con_epsm1 @@ -207,14 +207,6 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) else if(me==0)print*,'ak5= ',ak5 end if - Status=nf90_get_att(ncid3d,nf90_global,'sf_surface_physi', & - iSF_SURFACE_PHYSICS) - if(Status/=0)then - print*,'sf_surface_physi not found; assigning to 2' - iSF_SURFACE_PHYSICS=2 !set LSM physics to 2 for NOAH - else - if(me==0)print*,'SF_SURFACE_PHYSICS= ',iSF_SURFACE_PHYSICS - endif Status=nf90_get_att(ncid3d,nf90_global,'idrt',idrt) if(Status/=0)then print*,'idrt not in netcdf file,reading grid' @@ -1039,13 +1031,13 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) Status=nf90_close(ncid3d) deallocate(recname) -! open flux file - Status = nf90_open(trim(fileNameFlux),NF90_NOWRITE, ncid2d) - - if ( Status /= 0 ) then - print*,'error opening ',fileNameFlux, ' Status = ', Status - print*,'skip reading of flux file' - endif +!! open flux file +! Status = nf90_open(trim(fileNameFlux),NF90_NOWRITE, ncid2d) +! +! if ( Status /= 0 ) then +! print*,'error opening ',fileNameFlux, ' Status = ', Status +! print*,'skip reading of flux file' +! endif ! IVEGSRC=1 for IGBP, 0 for USGS, 2 for UMD VarName='IVEGSRC' @@ -1659,6 +1651,20 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) SLDPTH(2) = 0.3 SLDPTH(3) = 0.6 SLDPTH(4) = 1.0 + +! Eric James, 1 Oct 2021: Because FV3 does not have 1d var "zs", used to +! assign soil depths for RUC LSM, hard wire 9 soil depths here +! so they aren't missing. + + SLLEVEL(1) = 0.0 + SLLEVEL(2) = 0.01 + SLLEVEL(3) = 0.04 + SLLEVEL(4) = 0.1 + SLLEVEL(5) = 0.3 + SLLEVEL(6) = 0.6 + SLLEVEL(7) = 1.0 + SLLEVEL(8) = 1.6 + SLLEVEL(9) = 3.0 ! liquid volumetric soil mpisture in fraction using nemsio VarName='soill1' @@ -1758,6 +1764,70 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) enddo if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,4) + IF (NSOIL==9) THEN + + VarName='soilw5' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,5)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,5) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,5) + + VarName='soilw6' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,6)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,6) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,6) + + VarName='soilw7' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,7)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,7) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,7) + + VarName='soilw8' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,8)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,8) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,8) + + VarName='soilw9' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,9)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,9) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,9) + + END IF + ! soil temperature using nemsio VarName='soilt1' call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & @@ -1811,6 +1881,75 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) enddo if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,4) + IF (NSOIL==9) THEN + + VarName='soilt5' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,5)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,5) = spval + !if (sm(i,j) /= 0.0) stc(i,j,5) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,5) + + VarName='soilt6' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,6)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,6) = spval + !if (sm(i,j) /= 0.0) stc(i,j,6) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,6) + + VarName='soilt7' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,7)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,7) = spval + !if (sm(i,j) /= 0.0) stc(i,j,7) = spval enddo + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,7) + + VarName='soilt8' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,8)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,8) = spval + !if (sm(i,j) /= 0.0) stc(i,j,8) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,8) + + VarName='soilt9' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,9)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,9) = spval + !if (sm(i,j) /= 0.0) stc(i,j,9) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,9) + + END IF + !$omp parallel do private(i,j) do j=jsta,jend do i=1,im diff --git a/sorc/ncep_post.fd/WRFPOST.f b/sorc/ncep_post.fd/WRFPOST.f index d6caabadf..5a66f060e 100644 --- a/sorc/ncep_post.fd/WRFPOST.f +++ b/sorc/ncep_post.fd/WRFPOST.f @@ -165,7 +165,7 @@ PROGRAM WRFPOST real(kind=8) :: time_initpost=0.,INITPOST_tim=0.,btim,bbtim real rinc(5), untcnvt integer :: status=0,iostatusD3D=0,iostatusFlux=0 - integer i,j,iii,l,k,ierr,nrec,ist,lusig,idrt,ncid3d,varid + integer i,j,iii,l,k,ierr,nrec,ist,lusig,idrt,ncid3d,ncid2d,varid integer :: PRNTSEC,iim,jjm,llm,ioutcount,itmp,iret,iunit, & iunitd3d,iyear,imn,iday,LCNTRL,ieof integer :: iostatusAER @@ -444,6 +444,24 @@ PROGRAM WRFPOST print*,'error opening ',fileName, ' Status = ', Status stop endif + Status = nf90_open(trim(fileNameFlux),NF90_NOWRITE, ncid2d) + if ( Status /= 0 ) then + print*,'error opening ',fileNameFlux, ' Status = ', Status + stop + endif +! read in LSM index and nsoil here + Status=nf90_get_att(ncid2d,nf90_global,'landsfcmdl', iSF_SURFACE_PHYSICS) + if(Status/=0)then + print*,'landsfcmdl not found; assigning to 2' + iSF_SURFACE_PHYSICS=2 !set LSM physics to 2 for NOAH + endif + Status=nf90_get_att(ncid2d,nf90_global,'nsoil', NSOIL) + if(Status/=0)then + print*,'nsoil not found; assigning to 4' + NSOIL=4 !set nsoil to 4 for NOAH + endif + if(me==0)print*,'SF_SURFACE_PHYSICS= ',iSF_SURFACE_PHYSICS + if(me==0)print*,'NSOIL= ',NSOIL ! get dimesions Status = nf90_inq_dimid(ncid3d,'grid_xt',varid) if ( Status /= 0 ) then @@ -480,7 +498,7 @@ PROGRAM WRFPOST IM_JM = IM*JM ! set NSOIL to 4 as default for NOAH but change if using other ! SFC scheme - NSOIL = 4 +! NSOIL = 4 print*,'im jm lm nsoil from fv3 output = ',im,jm,lm,nsoil END IF @@ -712,7 +730,7 @@ PROGRAM WRFPOST ELSE IF (MODELNAME == 'FV3R') THEN ! use netcdf library to read output directly print*,'CALLING INITPOST_NETCDF' - CALL INITPOST_NETCDF(ncid3d) + CALL INITPOST_NETCDF(ncid2d,ncid3d) ELSE IF (MODELNAME == 'GFS') THEN print*,'CALLING INITPOST_GFS_NETCDF' CALL INITPOST_GFS_NETCDF(ncid3d) From d09379c9b901e92acacaf1a9ca587ec7a8dc562f Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 12 Oct 2021 23:05:15 +0000 Subject: [PATCH 32/46] Adding flat txt file for UPP. --- parm/postxconfig-NT-fv3lam_rrfs.txt | 237 +++------------------------- 1 file changed, 26 insertions(+), 211 deletions(-) diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index 649fde3a7..ab2f3e490 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -1,6 +1,6 @@ 2 -222 -264 +220 +261 BGDAWP 32769 ncep_nco @@ -1904,43 +1904,6 @@ surface ? ? ? -115 -TSOIL_ON_DEPTH_BEL_LAND_SFC_3m -? -1 -tmpl4_0 -TSOIL -? -? -depth_bel_land_sfc -0 -? -1 -3. -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -3.0 -0 -0 -0 -? -? -? 116 TSOIL_ON_DEPTH_BEL_LAND_SFC ? @@ -1950,15 +1913,15 @@ TSOIL ? ? depth_bel_land_sfc -4 -2 2 2 2 -4 -0. 10. 40. 100. +1 +2 +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. depth_bel_land_sfc -4 -2 2 2 2 -4 -10. 40. 100. 200. +1 +2 +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. ? ? 0 @@ -1987,89 +1950,15 @@ SOILW NCEP ? depth_bel_land_sfc -4 -2 2 2 2 -4 -0. 10. 40. 100. -depth_bel_land_sfc -4 -2 2 2 2 -4 -10. 40. 100. 200. -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -3.0 -0 -0 -0 -? -? -? -225 -SOILL_ON_DEPTH_BEL_LAND_SFC -? -1 -tmpl4_0 -SOILL -NCEP -? -depth_bel_land_sfc -4 -2 2 2 2 -4 -0. 10. 40. 100. -depth_bel_land_sfc -4 -2 2 2 2 -4 -10. 40. 100. 200. -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -3.0 -0 -0 -0 -? -? -? -36 -SOILM_ON_DEPTH_BEL_LAND_SFC -? -1 -tmpl4_0 -SOILM -? -? -depth_bel_land_sfc 1 2 -1 -0. +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. depth_bel_land_sfc 1 2 -1 -200. +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. ? ? 0 @@ -11660,15 +11549,15 @@ TSOIL ? ? depth_bel_land_sfc -4 -2 2 2 2 -4 -0. 10. 40. 100. +1 +2 +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. depth_bel_land_sfc -4 -2 2 2 2 -4 -10. 40. 100. 200. +1 +2 +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. ? ? 0 @@ -11697,52 +11586,15 @@ SOILW NCEP ? depth_bel_land_sfc -4 -2 2 2 2 -4 -0. 10. 40. 100. -depth_bel_land_sfc -4 -2 2 2 2 -4 -10. 40. 100. 200. -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -3.0 -0 -0 -0 -? -? -? -36 -SOILM_ON_DEPTH_BEL_LAND_SFC -? -1 -tmpl4_0 -SOILM -? -? -depth_bel_land_sfc 1 2 -1 -0. +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. depth_bel_land_sfc 1 2 -1 -200. +9 +0. 1. 4. 10. 30. 60. 100. 160. 300. ? ? 0 @@ -11873,43 +11725,6 @@ depth_bel_land_sfc ? ? ? -115 -TSOIL_ON_DEPTH_BEL_LAND_SFC_3m -? -1 -tmpl4_0 -TSOIL -? -? -depth_bel_land_sfc -0 -? -1 -3. -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -3.0 -0 -0 -0 -? -? -? 152 INST_GFLUX_ON_SURFACE ? From d78ae657343936315ea5bf7b47f10be413901a8b Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 15 Oct 2021 18:07:40 +0000 Subject: [PATCH 33/46] Commenting out the use of the ARI exceedances for now. We can switch them on later. --- parm/fv3lam_rrfs.xml | 4 + parm/postxconfig-NT-fv3lam_rrfs.txt | 298 +--------------------------- 2 files changed, 5 insertions(+), 297 deletions(-) diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index e571700b1..c14be3a59 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -1760,6 +1760,8 @@ 5.0 + + diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index ab2f3e490..be572085a 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -1,6 +1,6 @@ 2 220 -261 +253 BGDAWP 32769 ncep_nco @@ -9378,302 +9378,6 @@ surface ? ? ? -915 -1H_2YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -916 -ACM_2YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -917 -1H_5YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -918 -ACM_5YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -919 -1H_10YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -920 -ACM_10YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -921 -1H_100YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? -922 -ACM_100YARI_EXCEEDANCE -? -1 -tmpl4_8 -FFLDRO -? -ACM -surface -0 -? -0 -? -? -0 -? -0 -? -? -? -0 -0.0 -0 -0.0 -? -0 -0.0 -0 -0.0 -1 -5.0 -0 -0 -0 -? -? -? BGRD3D 32769 ncep_nco From bb01ce6129444beeb6a3142ffc4e979ee9224791 Mon Sep 17 00:00:00 2001 From: eric james Date: Wed, 20 Oct 2021 16:26:20 +0000 Subject: [PATCH 34/46] Bug fix in INITPOST_NETCDF.f : need to use both ncid2d and ncid3d in this subroutine! --- sorc/ncep_post.fd/INITPOST_NETCDF.f | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 2bdb3ff47..3b3fd7101 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -34,7 +34,7 @@ !! LANGUAGE: FORTRAN !! MACHINE : CRAY C-90 !! - SUBROUTINE INITPOST_NETCDF(ncid3d) + SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) use netcdf From fecc74c4c8f48aac588af21f9b60329d99a86de5 Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 2 Nov 2021 17:10:02 +0000 Subject: [PATCH 35/46] Adding NOAA-GSL code changes on top of latest NOAA-EMC UPP. --- sorc/ncep_post.fd/INITPOST_NETCDF.f | 202 ++++++++++++++-- sorc/ncep_post.fd/SURFCE.f | 272 ++++++++++++++++++++++ sorc/ncep_post.fd/WRFPOST.f | 24 +- sorc/ncep_post.fd/grib2_module.f | 348 +++++++++++++++++++++++++++- 4 files changed, 823 insertions(+), 23 deletions(-) diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 090f266f0..a4889c2d4 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -34,7 +34,7 @@ !! LANGUAGE: FORTRAN !! MACHINE : CRAY C-90 !! - SUBROUTINE INITPOST_NETCDF(ncid3d) + SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) use netcdf @@ -45,7 +45,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) o3vdiff, o3prod, o3tndy, mwpv, unknown, vdiffzacce, zgdrag,cnvctummixing, & vdiffmacce, mgdrag, cnvctvmmixing, ncnvctcfrac, cnvctumflx, cnvctdmflx, & cnvctzgdrag, sconvmois, cnvctmgdrag, cnvctdetmflx, duwt, duem, dusd, dudp, & - wh, qqg, ref_10cm, pmtf, ozcon + wh, qqg, ref_10cm, qqnifa, qqnwfa, pmtf, ozcon use vrbls2d, only: f, pd, fis, pblh, ustar, z0, ths, qs, twbs, qwbs, avgcprate, & cprate, avgprec, prec, lspa, sno, si, cldefi, th10, q10, tshltr, pshltr, & @@ -66,7 +66,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) avisbeamswin,avisdiffswin,airbeamswin,airdiffswin,refdm10c_max,wspd10max, & alwoutc,alwtoac,aswoutc,aswtoac,alwinc,aswinc,avgpotevp,snoavg, & ti,aod550,du_aod550,ss_aod550,su_aod550,oc_aod550,bc_aod550,prate_max - use soil, only: sldpth, sh2o, smc, stc + use soil, only: sldpth, sllevel, sh2o, smc, stc use masks, only: lmv, lmh, htm, vtm, gdlat, gdlon, dx, dy, hbm2, sm, sice use physcons_post, only: grav => con_g, fv => con_fvirt, rgas => con_rd, & eps => con_eps, epsm1 => con_epsm1 @@ -394,14 +394,6 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) else if(me==0)print*,'ak5= ',ak5 end if - Status=nf90_get_att(ncid3d,nf90_global,'sf_surface_physi', & - iSF_SURFACE_PHYSICS) - if(Status/=0)then - print*,'sf_surface_physi not found; assigning to 2' - iSF_SURFACE_PHYSICS=2 !set LSM physics to 2 for NOAH - else - if(me==0)print*,'SF_SURFACE_PHYSICS= ',iSF_SURFACE_PHYSICS - endif Status=nf90_get_att(ncid3d,nf90_global,'idrt',idrt) if(Status/=0)then print*,'idrt not in netcdf file,reading grid' @@ -1788,13 +1780,13 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) Status=nf90_close(ncid3d) deallocate(recname) -! open flux file - Status = nf90_open(trim(fileNameFlux),NF90_NOWRITE, ncid2d) - - if ( Status /= 0 ) then - print*,'error opening ',fileNameFlux, ' Status = ', Status - print*,'skip reading of flux file' - endif +!! open flux file +! Status = nf90_open(trim(fileNameFlux),NF90_NOWRITE, ncid2d) +! +! if ( Status /= 0 ) then +! print*,'error opening ',fileNameFlux, ' Status = ', Status +! print*,'skip reading of flux file' +! endif ! IVEGSRC=1 for IGBP, 0 for USGS, 2 for UMD VarName='IVEGSRC' @@ -1852,7 +1844,7 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! instantaneous 3D cloud fraction - VarName='cldfra' + VarName='cldfra_bl' ! do l=1,lm call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & @@ -1870,6 +1862,31 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) ! ,REF_10CM(isa,jsa,l),isa,jsa,l ! enddo +! turbulence kinetic energy (QKE = 2*TKE) + VarName='qke' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,q2(1,jsta_2l,1)) + do l=1,lm + do j=jsta,jend + do i=1,im + q2(i,j,l)=q2(i,j,l)/2.0 + enddo + enddo + enddo + +! ice-friendly aerosol number concentration + VarName='nifa' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,qqnifa(1,jsta_2l,1)) + +! water-friendly aerosol number concentration + VarName='nwfa' + call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & + ,lm,qqnwfa(1,jsta_2l,1)) + VarName='land' call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,sm) @@ -2383,6 +2400,20 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) SLDPTH(2) = 0.3 SLDPTH(3) = 0.6 SLDPTH(4) = 1.0 + +! Eric James, 1 Oct 2021: Because FV3 does not have 1d var "zs", used to +! assign soil depths for RUC LSM, hard wire 9 soil depths here +! so they aren't missing. + + SLLEVEL(1) = 0.0 + SLLEVEL(2) = 0.01 + SLLEVEL(3) = 0.04 + SLLEVEL(4) = 0.1 + SLLEVEL(5) = 0.3 + SLLEVEL(6) = 0.6 + SLLEVEL(7) = 1.0 + SLLEVEL(8) = 1.6 + SLLEVEL(9) = 3.0 ! liquid volumetric soil mpisture in fraction using nemsio VarName='soill1' @@ -2482,6 +2513,70 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) enddo if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,4) + IF (NSOIL==9) THEN + + VarName='soilw5' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,5)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,5) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,5) + + VarName='soilw6' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,6)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,6) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,6) + + VarName='soilw7' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,7)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,7) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,7) + + VarName='soilw8' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,8)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,8) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,8) + + VarName='soilw9' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,smc(1,jsta_2l,9)) +! mask water areas +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) /= 0.0) smc(i,j,9) = spval + enddo + enddo + if(debugprint)print*,'sample l',VarName,' = ',1,smc(isa,jsa,9) + + END IF + ! soil temperature using nemsio VarName='soilt1' call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & @@ -2535,6 +2630,75 @@ SUBROUTINE INITPOST_NETCDF(ncid3d) enddo if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,4) + IF (NSOIL==9) THEN + + VarName='soilt5' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,5)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,5) = spval + !if (sm(i,j) /= 0.0) stc(i,j,5) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,5) + + VarName='soilt6' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,6)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,6) = spval + !if (sm(i,j) /= 0.0) stc(i,j,6) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,6) + + VarName='soilt7' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,7)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,7) = spval + !if (sm(i,j) /= 0.0) stc(i,j,7) = spval enddo + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,7) + + VarName='soilt8' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,8)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,8) = spval + !if (sm(i,j) /= 0.0) stc(i,j,8) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,8) + + VarName='soilt9' + call read_netcdf_2d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & + ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName,stc(1,jsta_2l,9)) +! mask open water areas, combine with sea ice tmp +!$omp parallel do private(i,j) + do j=jsta,jend + do i=1,im + if (sm(i,j) == 1.0 .and. sice(i,j) ==0.) stc(i,j,9) = spval + !if (sm(i,j) /= 0.0) stc(i,j,9) = spval + enddo + enddo + if(debugprint)print*,'sample stc = ',1,stc(isa,jsa,9) + + END IF + !$omp parallel do private(i,j) do j=jsta,jend do i=1,im diff --git a/sorc/ncep_post.fd/SURFCE.f b/sorc/ncep_post.fd/SURFCE.f index e6c547baa..419987e5d 100644 --- a/sorc/ncep_post.fd/SURFCE.f +++ b/sorc/ncep_post.fd/SURFCE.f @@ -104,6 +104,7 @@ SUBROUTINE SURFCE lp1, imp_physics, me, asrfc, tsrfc, pt, pdtop, & mpi_comm_comp, im, jm, prec_acc_dt1 use rqstfld_mod, only: iget, lvls, id, iavblfld, lvlsxml + use grib2_module, only: read_grib2_head, read_grib2_sngle use upp_physics, only: fpvsnew, CALRH !- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - implicit none @@ -153,6 +154,12 @@ SUBROUTINE SURFCE real RDTPHS,TLOW,TSFCK,QSAT,DTOP,DBOT,SNEQV,RRNUM,SFCPRS,SFCQ, & RC,SFCTMP,SNCOVR,FACTRS,SOLAR, s,tk,tl,w,t2c,dlt,APE, & qv,e,dwpt,dum1,dum2,dum3,dum1s,dum3s,dum21,dum216,es + + character(len=256) :: ffgfile + character(len=256) :: arifile + + logical file_exists + logical, parameter :: debugprint = .false. @@ -3877,6 +3884,138 @@ SUBROUTINE SURFCE endif ENDIF +! ERIC JAMES: 10 JUN 2021 -- adding precip comparison to FFG +! thresholds. 913 is for 1h QPF, 914 for run total QPF. + IF (IGET(913).GT.0) THEN + ffgfile='ffg_01h.grib2' + call qpf_comp(913,ffgfile,1) + ENDIF + IF (IGET(914).GT.0) THEN + IF (IFHR .EQ. 1) THEN + ffgfile='ffg_01h.grib2' + call qpf_comp(914,ffgfile,1) + ELSEIF (IFHR .EQ. 3) THEN + ffgfile='ffg_03h.grib2' + call qpf_comp(914,ffgfile,3) + ELSEIF (IFHR .EQ. 6) THEN + ffgfile='ffg_06h.grib2' + call qpf_comp(914,ffgfile,6) + ELSEIF (IFHR .EQ. 12) THEN + ffgfile='ffg_12h.grib2' + call qpf_comp(914,ffgfile,12) + ELSE + ffgfile='ffg_01h.grib2' + call qpf_comp(914,ffgfile,0) + ENDIF + ENDIF + +! ERIC JAMES: 8 OCT 2021 -- adding precip comparison to ARI +! thresholds. 915 is for 1h QPF, 916 for run total QPF. + + IF (IGET(915).GT.0) THEN + arifile='ari2y_01h.grib2' + call qpf_comp(915,arifile,1) + ENDIF + IF (IGET(916).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari2y_01h.grib2' + call qpf_comp(916,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari2y_03h.grib2' + call qpf_comp(916,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari2y_06h.grib2' + call qpf_comp(916,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari2y_12h.grib2' + call qpf_comp(916,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari2y_24h.grib2' + call qpf_comp(916,arifile,24) + ELSE + arifile='ari2y_01h.grib2' + call qpf_comp(916,arifile,0) + ENDIF + ENDIF + + IF (IGET(917).GT.0) THEN + arifile='ari5y_01h.grib2' + call qpf_comp(917,arifile,1) + ENDIF + IF (IGET(918).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari5y_01h.grib2' + call qpf_comp(918,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari5y_03h.grib2' + call qpf_comp(918,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari5y_06h.grib2' + call qpf_comp(918,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari5y_12h.grib2' + call qpf_comp(918,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari5y_24h.grib2' + call qpf_comp(918,arifile,24) + ELSE + arifile='ari5y_01h.grib2' + call qpf_comp(918,arifile,0) + ENDIF + ENDIF + + IF (IGET(919).GT.0) THEN + arifile='ari10y_01h.grib2' + call qpf_comp(919,arifile,1) + ENDIF + IF (IGET(920).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari10y_01h.grib2' + call qpf_comp(920,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari10y_03h.grib2' + call qpf_comp(920,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari10y_06h.grib2' + call qpf_comp(920,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari10y_12h.grib2' + call qpf_comp(920,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari10y_24h.grib2' + call qpf_comp(920,arifile,24) + ELSE + arifile='ari10y_01h.grib2' + call qpf_comp(920,arifile,0) + ENDIF + ENDIF + + IF (IGET(921).GT.0) THEN + arifile='ari100y_01h.grib2' + call qpf_comp(921,arifile,1) + ENDIF + IF (IGET(922).GT.0) THEN + IF (IFHR .EQ. 1) THEN + arifile='ari100y_01h.grib2' + call qpf_comp(922,arifile,1) + ELSEIF (IFHR .EQ. 3) THEN + arifile='ari100y_03h.grib2' + call qpf_comp(922,arifile,3) + ELSEIF (IFHR .EQ. 6) THEN + arifile='ari100y_06h.grib2' + call qpf_comp(922,arifile,6) + ELSEIF (IFHR .EQ. 12) THEN + arifile='ari100y_12h.grib2' + call qpf_comp(922,arifile,12) + ELSEIF (IFHR .EQ. 24) THEN + arifile='ari100y_24h.grib2' + call qpf_comp(922,arifile,24) + ELSE + arifile='ari100y_01h.grib2' + call qpf_comp(922,arifile,0) + ENDIF + ENDIF + ! ERIC JAMES: 10 APR 2019 -- adding 15min precip output for RAP/HRRR ! PRECIPITATION BUCKETS - accumulated between output times ! 'BUCKET1 TOTAL PRECIP ' @@ -6184,3 +6323,136 @@ SUBROUTINE SURFCE RETURN END + + subroutine qpf_comp(igetfld,compfile,fcst) +! Read in QPF threshold for exceedance grid. +! Calculate exceedance grid. +! compfile: file name for reference grid. +! fcst: forecast length in hours. + use ctlblk_mod, only: SPVAL,JSTA,JEND,IM,DTQ2,IFHR,IFMIN,TPREC,GRIB, & + MODELNAME,JM,CFLD,DATAPD,FLD_INFO,JSTA_2L,JEND_2U + use rqstfld_mod, only: IGET, ID, LVLS, IAVBLFLD + use grib2_module, only: read_grib2_head, read_grib2_sngle + use vrbls2d, only: AVGPREC, AVGPREC_CONT + implicit none + character(len=256), intent(in) :: compfile + integer, intent(in) :: igetfld,fcst + integer :: trange,invstat + real, dimension(IM,JM) :: outgrid + + real, allocatable, dimension(:,:) :: mscValue + + integer :: nx, ny, nz, ntot, mscNlon, mscNlat, height + integer :: ITPREC, IFINCR + real :: rlonmin, rlatmax + real*8 rdx, rdy + + logical :: file_exists + + integer :: i, j, k, jj + +! Read in reference grid. + INQUIRE(FILE=compfile, EXIST=file_exists) + if (file_exists) then + call read_grib2_head(compfile,nx,ny,nz,rlonmin,rlatmax,& + rdx,rdy) + mscNlon=nx + mscNlat=ny + if (.not. allocated(mscValue)) then + allocate(mscValue(mscNlon,mscNlat)) + endif + ntot = nx*ny + call read_grib2_sngle(compfile,ntot,height,mscValue) + else + write(*,*) 'WARNING: FFG file not available for hour: ', fcst + endif + +! Set GRIB variables. + ID(1:25) = 0 + ITPREC = NINT(TPREC) + if (ITPREC /= 0) then + IFINCR = MOD(IFHR,ITPREC) + IF(IFMIN >= 1)IFINCR= MOD(IFHR*60+IFMIN,ITPREC*60) + else + IFINCR = 0 + endif + ID(18) = 0 + ID(19) = IFHR + IF(IFMIN >= 1)ID(19)=IFHR*60+IFMIN + ID(20) = 4 + IF (IFINCR==0) THEN + ID(18) = IFHR-ITPREC + ELSE + ID(18) = IFHR-IFINCR + IF(IFMIN >= 1)ID(18)=IFHR*60+IFMIN-IFINCR + ENDIF + +! Calculate exceedance grid. + IF(MODELNAME == 'GFS' .OR. MODELNAME == 'FV3R') THEN +! !$omp parallel do private(i,j) + IF (file_exists) THEN + DO J=JSTA,JEND + DO I=1,IM + IF (IFHR .EQ. 0 .OR. fcst .EQ. 0) THEN + outgrid(I,J) = 0.0 + ELSE IF (mscValue(I,J) .LE. 0.0) THEN + outgrid(I,J) = 0.0 + ELSE IF (fcst .EQ. 1 .AND. AVGPREC(I,J)*FLOAT(ID(19)-ID(18))*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + outgrid(I,J) = 1.0 + ELSE IF (fcst .GT. 1 .AND. AVGPREC_CONT(I,J)*FLOAT(IFHR)*3600.*1000./DTQ2 .GT. mscValue(I,J)) THEN + outgrid(I,J) = 1.0 + ELSE + outgrid(I,J) = 0.0 + ENDIF + ENDDO + ENDDO + ELSE + outgrid = 0.0*AVGPREC + ENDIF + ENDIF +! write(*,*) 'FFG MAX, MIN:', & +! maxval(mscValue),minval(mscValue) + IF (ID(18).LT.0) ID(18) = 0 + +! Set GRIB2 variables. + IF(fcst .EQ. 1) THEN + IF(ITPREC>0) THEN + trange = (IFHR-ID(18))/ITPREC + ELSE + trange = 0 + ENDIF + invstat = ITPREC + IF(trange .EQ. 0) THEN + IF (IFHR .EQ. 0) THEN + invstat = 0 + ELSE + invstat = 1 + ENDIF + trange = 1 + ENDIF + ELSE + trange = 1 + IF (IFHR .EQ. fcst) THEN + invstat = fcst + ELSE + invstat = 0 + ENDIF + ENDIF + + IF(grib=='grib2') then + cfld=cfld+1 + fld_info(cfld)%ifld=IAVBLFLD(IGET(igetfld)) + fld_info(cfld)%ntrange=trange + fld_info(cfld)%tinvstat=invstat +!$omp parallel do private(i,j,jj) + do j=1,jend-jsta+1 + jj = jsta+j-1 + do i=1,im + datapd(i,j,cfld) = outgrid(i,jj) + enddo + enddo + endif + + RETURN + + end subroutine qpf_comp diff --git a/sorc/ncep_post.fd/WRFPOST.f b/sorc/ncep_post.fd/WRFPOST.f index 26fface7d..b98127802 100644 --- a/sorc/ncep_post.fd/WRFPOST.f +++ b/sorc/ncep_post.fd/WRFPOST.f @@ -166,7 +166,7 @@ PROGRAM WRFPOST real(kind=8) :: time_initpost=0.,INITPOST_tim=0.,btim,bbtim real rinc(5), untcnvt integer :: status=0,iostatusD3D=0,iostatusFlux=0 - integer i,j,iii,l,k,ierr,nrec,ist,lusig,idrt,ncid3d,varid + integer i,j,iii,l,k,ierr,nrec,ist,lusig,idrt,ncid3d,ncid2d,varid integer :: PRNTSEC,iim,jjm,llm,ioutcount,itmp,iret,iunit, & iunitd3d,iyear,imn,iday,LCNTRL,ieof integer :: iostatusAER @@ -435,6 +435,24 @@ PROGRAM WRFPOST print*,'error opening ',fileName, ' Status = ', Status stop endif + Status = nf90_open(trim(fileNameFlux),NF90_NOWRITE, ncid2d) + if ( Status /= 0 ) then + print*,'error opening ',fileNameFlux, ' Status = ', Status + stop + endif +! read in LSM index and nsoil here + Status=nf90_get_att(ncid2d,nf90_global,'landsfcmdl', iSF_SURFACE_PHYSICS) + if(Status/=0)then + print*,'landsfcmdl not found; assigning to 2' + iSF_SURFACE_PHYSICS=2 !set LSM physics to 2 for NOAH + endif + Status=nf90_get_att(ncid2d,nf90_global,'nsoil', NSOIL) + if(Status/=0)then + print*,'nsoil not found; assigning to 4' + NSOIL=4 !set nsoil to 4 for NOAH + endif + if(me==0)print*,'SF_SURFACE_PHYSICS= ',iSF_SURFACE_PHYSICS + if(me==0)print*,'NSOIL= ',NSOIL ! get dimesions Status = nf90_inq_dimid(ncid3d,'grid_xt',varid) if ( Status /= 0 ) then @@ -471,7 +489,7 @@ PROGRAM WRFPOST IM_JM = IM*JM ! set NSOIL to 4 as default for NOAH but change if using other ! SFC scheme - NSOIL = 4 +! NSOIL = 4 print*,'im jm lm nsoil from fv3 output = ',im,jm,lm,nsoil END IF @@ -703,7 +721,7 @@ PROGRAM WRFPOST ELSE IF (MODELNAME == 'FV3R') THEN ! use netcdf library to read output directly print*,'CALLING INITPOST_NETCDF' - CALL INITPOST_NETCDF(ncid3d) + CALL INITPOST_NETCDF(ncid2d,ncid3d) ELSE IF (MODELNAME == 'GFS') THEN print*,'CALLING INITPOST_GFS_NETCDF' CALL INITPOST_GFS_NETCDF(ncid3d) diff --git a/sorc/ncep_post.fd/grib2_module.f b/sorc/ncep_post.fd/grib2_module.f index 47bf52965..35c064c53 100644 --- a/sorc/ncep_post.fd/grib2_module.f +++ b/sorc/ncep_post.fd/grib2_module.f @@ -94,7 +94,8 @@ module grib2_module character*255 fl_nametbl,fl_gdss3 logical :: first_grbtbl ! - public num_pset,pset,nrecout,gribit2,grib_info_init,first_grbtbl,grib_info_finalize + public num_pset,pset,nrecout,gribit2,grib_info_init,first_grbtbl,grib_info_finalize,read_grib2_head,read_grib2_sngle + real(8), EXTERNAL :: timef !------------------------------------------------------------------------------------- ! contains @@ -989,6 +990,351 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs end subroutine gengrb2msg ! !-------------------------------------------------------------------------------------- +! +! E. JAMES: 10 JUN 2021 - Adding section to read in GRIB2 files for comparison +! within UPP. Two new subroutines added below. +! + subroutine read_grib2_head(filenameG2,nx,ny,nz,rlonmin,rlatmax,rdx,rdy) +! +!--- read grib2 file head information +! + use grib_mod + implicit none + character*256,intent(in) :: filenameG2 + integer, intent(out) :: nx,ny,nz + real, intent(out) :: rlonmin,rlatmax + real*8, intent(out) :: rdx,rdy +! +! + type(gribfield) :: gfld + logical :: expand=.true. + integer :: ifile + character(len=1),allocatable,dimension(:) :: cgrib + integer,parameter :: msk1=32000 + integer :: lskip, lgrib,iseek + integer :: currlen + integer :: icount , lengrib + integer :: listsec0(3) + integer :: listsec1(13) + integer year, month, day, hour, minute, second, fcst + integer :: numfields,numlocal,maxlocal,ierr + integer :: grib_edition + integer :: itot +! real :: dx,dy,lat1,lon1 + real :: scale_factor,scale_factor2 +! +! + integer :: nn,n,j,iret + real :: fldmax,fldmin,sum +! +! + scale_factor=1.0e6 + scale_factor2=1.0e3 + ifile=10 + loopfile: do nn=1,1 +! write(6,*) 'read in grib2 file head', trim(filenameG2) + lskip=0 + lgrib=0 + iseek=0 + icount=0 + itot=0 + currlen=0 +! Open GRIB2 file + call baopenr(ifile,trim(filenameG2),iret) + if (iret.eq.0) then + VERSION: do + ! Search opend file for the next GRIB2 messege (record). + call skgb(ifile,iseek,msk1,lskip,lgrib) + ! Check for EOF, or problem + if (lgrib.eq.0) then + exit + endif + ! Check size, if needed allocate more memory. + if (lgrib.gt.currlen) then + if (allocated(cgrib)) deallocate(cgrib) + allocate(cgrib(lgrib)) + currlen=lgrib + endif + ! Read a given number of bytes from unblocked file. + call baread(ifile,lskip,lgrib,lengrib,cgrib) + if(lgrib.ne.lengrib) then + write(*,*) 'ERROR, read_grib2 lgrib ne lengrib', & + lgrib,lengrib + stop 1234 + endif + iseek=lskip+lgrib + icount=icount+1 + ! Unpack GRIB2 field + call gb_info(cgrib,lengrib,listsec0,listsec1, & + numfields,numlocal,maxlocal,ierr) + if(ierr.ne.0) then + write(6,*) 'Error querying GRIB2 message',ierr + stop + endif + itot=itot+numfields + grib_edition=listsec0(2) + if (grib_edition.ne.2) then + exit VERSION + endif +! write(*,*) 'listsec0=',listsec0 +! write(*,*) 'listsec1=',listsec1 +! write(*,*) 'numfields=',numfields +! get information form grib2 file + n=1 + call gf_getfld(cgrib,lengrib,n,.FALSE.,expand,gfld,ierr) + year =gfld%idsect(6) !(FOUR-DIGIT) YEAR OF THE DATA + month =gfld%idsect(7) ! MONTH OF THE DATA + day =gfld%idsect(8) ! DAY OF THE DATA + hour =gfld%idsect(9) ! HOUR OF THE DATA + minute=gfld%idsect(10) ! MINUTE OF THE DATA + second=gfld%idsect(11) ! SECOND OF THE DATA + write(*,*) 'year,month,day,hour,minute,second=' + write(*,*) year,month,day,hour,minute,second + write(*,*) 'source center =',gfld%idsect(1) + write(*,*) 'Indicator of model =',gfld%ipdtmpl(5) + write(*,*) 'observation level (m)=',gfld%ipdtmpl(12) + write(*,*) 'map projection=',gfld%igdtnum + if (gfld%igdtnum.eq.0) then ! Lat/Lon grid aka Cylindrical + ! Equidistant + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(17)/scale_factor + rdy = gfld%igdtmpl(18)/scale_factor + rlatmax = gfld%igdtmpl(12)/scale_factor + rlonmin = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else if (gfld%igdtnum.eq.1) then ! Rotated Lat Lon Grid (RRFS_NA) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(17)/scale_factor + rdy = gfld%igdtmpl(18)/scale_factor + rlatmax = gfld%igdtmpl(12)/scale_factor + rlonmin = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + nz = 1 + rdx = gfld%igdtmpl(15)/scale_factor2 + rdy = gfld%igdtmpl(16)/scale_factor2 + rlatmax = gfld%igdtmpl(10)/scale_factor + rlonmin = gfld%igdtmpl(11)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else + write(*,*) 'unknown projection' + stop 1235 + endif + call gf_free(gfld) + enddo VERSION ! skgb + endif + CALL BACLOSE(ifile,ierr) + nullify(gfld%local) + if (allocated(cgrib)) deallocate(cgrib) + enddo loopfile + return + end subroutine read_grib2_head +! +!--- +! + subroutine read_grib2_sngle(filenameG2,ntot,height,var) +! +!--- read grib2 files +! + use grib_mod + implicit none + character*256,intent(in) :: filenameG2 + integer, intent(in) :: ntot + real, intent(out) :: var(ntot) + integer, intent(out) :: height +! +! + type(gribfield) :: gfld + logical :: expand=.true. + integer :: ifile + character(len=1),allocatable,dimension(:) :: cgrib + integer,parameter :: msk1=32000 + integer :: lskip, lgrib,iseek + integer :: currlen + integer :: icount , lengrib + integer :: listsec0(3) + integer :: listsec1(13) + integer year, month, day, hour, minute, second, fcst + integer :: numfields,numlocal,maxlocal,ierr + integer :: grib_edition + integer :: itot + integer :: nx,ny + real :: dx,dy,lat1,lon1,rtnum + real :: ref_value,bin_scale_fac,dec_scale_fac,bit_number,field_type + real :: bit_map + real :: scale_factor,scale_factor2 +! +! + integer :: nn,n,j,iret + real :: fldmax,fldmin,sum +! +! + scale_factor=1.0e6 + scale_factor2=1.0e3 + ifile=12 + loopfile: do nn=1,1 +! write(6,*) 'read mosaic in grib2 file ', trim(filenameG2) + lskip=0 + lgrib=0 + iseek=0 + icount=0 + itot=0 + currlen=0 +! Open GRIB2 file + call baopenr(ifile,trim(filenameG2),iret) + if (iret.eq.0) then + VERSION: do + ! Search opend file for the next GRIB2 messege (record). + call skgb(ifile,iseek,msk1,lskip,lgrib) + ! Check for EOF, or problem + if (lgrib.eq.0) then + exit + endif + ! Check size, if needed allocate more memory. + if (lgrib.gt.currlen) then + if (allocated(cgrib)) deallocate(cgrib) + allocate(cgrib(lgrib)) + currlen=lgrib + endif + ! Read a given number of bytes from unblocked file. + call baread(ifile,lskip,lgrib,lengrib,cgrib) + if(lgrib.ne.lengrib) then + write(*,*) 'ERROR, read_grib2 lgrib ne lengrib', & + lgrib,lengrib + stop 1234 + endif +! write(*,*) 'lengrib=',lengrib + iseek=lskip+lgrib + icount=icount+1 + ! Unpack GRIB2 field + call gb_info(cgrib,lengrib,listsec0,listsec1, & + numfields,numlocal,maxlocal,ierr) + if(ierr.ne.0) then + write(6,*) 'Error querying GRIB2 message',ierr + stop + endif + itot=itot+numfields + grib_edition=listsec0(2) + if (grib_edition.ne.2) then + exit VERSION + endif +! write(*,*) 'listsec0=',listsec0 +! write(*,*) 'listsec1=',listsec1 +! write(*,*) 'numfields=',numfields! +! get information form grib2 file + n=1 + call gf_getfld(cgrib,lengrib,n,.FALSE.,expand,gfld,ierr) + year =gfld%idsect(6) !(FOUR-DIGIT) YEAR OF THE DATA + month =gfld%idsect(7) ! MONTH OF THE DATA + day =gfld%idsect(8) ! DAY OF THE DATA + hour =gfld%idsect(9) ! HOUR OF THE DATA + minute=gfld%idsect(10) ! MINUTE OF THE DATA + second=gfld%idsect(11) ! SECOND OF THE DATA +! write(*,*) 'year,month,day,hour,minute,second=' +! write(*,*) year,month,day,hour,minute,second +! write(*,*) 'source center =',gfld%idsect(1) +! write(*,*) 'Indicator of model =',gfld%ipdtmpl(5) +! write(*,*) 'observation level (m)=',gfld%ipdtmpl(12) +! write(*,*) 'map projection=',gfld%igdtnum + height=gfld%ipdtmpl(12) + if (gfld%igdtnum.eq.0) then ! Lat/Lon grid aka Cylindrical + ! Equidistant + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(17)/scale_factor + dy = gfld%igdtmpl(18)/scale_factor + lat1 = gfld%igdtmpl(12)/scale_factor + lon1 = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',dx,dy +! write(*,*) 'lat1,lon1=',lat1,lon1 + else if (gfld%igdtnum.eq.1) then ! Rotated Lat Lon Grid (RRFS_NA) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(17)/scale_factor + dy = gfld%igdtmpl(18)/scale_factor + lat1 = gfld%igdtmpl(12)/scale_factor + lon1 = gfld%igdtmpl(13)/scale_factor +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',rdx,rdy +! write(*,*) 'lat1,lon1=',rlatmax,rlonmin + else if (gfld%igdtnum.eq.30) then ! Lambert Conformal Grid (HRRR) + nx = gfld%igdtmpl(8) + ny = gfld%igdtmpl(9) + dx = gfld%igdtmpl(15)/scale_factor2 + dy = gfld%igdtmpl(16)/scale_factor2 + lat1 = gfld%igdtmpl(10)/scale_factor + lon1 = gfld%igdtmpl(11)/scale_factor +! write(*,*) 'In read_grib2_sngle:' +! write(*,*) 'nx,ny=',nx,ny +! write(*,*) 'dx,dy=',dx,dy +! write(*,*) 'lat1,lon1=',lat1,lon1 + rtnum = gfld%idrtnum +! write(*,*) 'rtnum=',rtnum + ref_value = gfld%idrtmpl(1) + bin_scale_fac = gfld%idrtmpl(2) + dec_scale_fac = gfld%idrtmpl(3) + bit_number = gfld%idrtmpl(4) + field_type = gfld%idrtmpl(5) + bit_map = gfld%ibmap +! write(*,*) 'ref_value=',ref_value +! write(*,*) 'bin_scale_fac=',bin_scale_fac +! write(*,*) 'dec_scale_fac=',dec_scale_fac +! write(*,*) 'bit_number=',bit_number +! write(*,*) 'field_type=',field_type +! write(*,*) 'bit map indicator=',bit_map + else + write(*,*) 'unknown projection' + stop 1235 + endif + call gf_free(gfld) + ! Continue to unpack GRIB2 field. + NUM_FIELDS: do n = 1, numfields + ! e.g. U and V would =2, otherwise its usually =1 + call gf_getfld(cgrib,lengrib,n,.true.,expand,gfld,ierr) + if (ierr.ne.0) then + write(*,*) ' ERROR extracting field gf_getfld = ',ierr + cycle + endif +! write(*,*) 'gfld%ndpts=',n,gfld%ndpts +! write(*,*) 'gfld%ngrdpts=',n,gfld%ngrdpts +! write(*,*) 'gfld%unpacked=',n,gfld%unpacked + fldmax=gfld%fld(1) + fldmin=gfld%fld(1) + sum=gfld%fld(1) + if(ntot .ne. gfld%ngrdpts) then + write(*,*) 'Error, wrong dimension ',ntot, gfld%ngrdpts + stop 1234 + endif + do j=1,gfld%ngrdpts + var(j)=gfld%fld(j) + enddo +! write(*,*) 'j,first,last:',j,var(954370),var(953920) +! write(*,*) 'height,max,min',height,maxval(var),minval(var) + call gf_free(gfld) + enddo NUM_FIELDS + enddo VERSION ! skgb + endif + CALL BACLOSE(ifile,ierr) + if (allocated(cgrib)) deallocate(cgrib) + nullify(gfld%local) + enddo loopfile + return + end subroutine read_grib2_sngle +! +!---------------------------------------------------------------------------------------- ! subroutine g2sec3tmpl40(nx,nY,lat1,lon1,lat2,lon2,lad,ds1,len3,igds,ifield3) implicit none From 6f8b20cdca5d574d905eba5b333108c58c707304 Mon Sep 17 00:00:00 2001 From: eric james Date: Thu, 4 Nov 2021 19:11:28 +0000 Subject: [PATCH 36/46] Couple of bug fixes in NOAA-EMC code. Bugs were leading to PRMSL and -10C REFD being all zeroes. --- sorc/ncep_post.fd/MAPSSLP.f | 20 ++++++++++++++------ sorc/ncep_post.fd/MDLFLD.f | 2 +- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/sorc/ncep_post.fd/MAPSSLP.f b/sorc/ncep_post.fd/MAPSSLP.f index 3b0728a8f..4b43a03a6 100644 --- a/sorc/ncep_post.fd/MAPSSLP.f +++ b/sorc/ncep_post.fd/MAPSSLP.f @@ -43,12 +43,20 @@ SUBROUTINE MAPSSLP(TPRES) !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM - if(SPL(L) == 70000. .and. TPRES(I,J,L) 0) THEN - CALL NGMSLP !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM From d833d931d7b41df5cf20382f89783a25e03cf469 Mon Sep 17 00:00:00 2001 From: eric james Date: Fri, 5 Nov 2021 18:55:39 +0000 Subject: [PATCH 37/46] Cleaning up code to get rid of unnecessary differences from EMC. --- parm/fv3lam.xml | 4 +-- parm/postxconfig-NT-fv3lam.txt | 8 ++--- sorc/ncep_post.fd/CALUPDHEL.f | 2 +- sorc/ncep_post.fd/CALVIS_GSD.f | 3 +- sorc/ncep_post.fd/INITPOST_NETCDF.f | 49 +++++++++-------------------- sorc/ncep_post.fd/MAPSSLP.f | 20 +++--------- sorc/ncep_post.fd/MDL2P.f | 3 -- sorc/ncep_post.fd/SURFCE.f | 3 ++ 8 files changed, 31 insertions(+), 61 deletions(-) diff --git a/parm/fv3lam.xml b/parm/fv3lam.xml index 7484594bc..2e78a58a5 100755 --- a/parm/fv3lam.xml +++ b/parm/fv3lam.xml @@ -1553,9 +1553,9 @@ - GSD_HGT_ON_CLOUD_CEILING + HGT_ON_CLOUD_CEILING HGT - -3.0 + 6.0 diff --git a/parm/postxconfig-NT-fv3lam.txt b/parm/postxconfig-NT-fv3lam.txt index 3f57d3a57..0e0401d86 100644 --- a/parm/postxconfig-NT-fv3lam.txt +++ b/parm/postxconfig-NT-fv3lam.txt @@ -8157,9 +8157,9 @@ hghst_top_lvl_of_supercooled_liq_water_lyr ? ? ? -408 -GSD_HGT_ON_CLOUD_CEILING -GSD_geopotential height on cloud base +260 +HGT_ON_CLOUD_CEILING +? 1 tmpl4_0 HGT @@ -8187,7 +8187,7 @@ cloud_ceilng 0 0.0 1 --3.0 +6.0 0 0 0 diff --git a/sorc/ncep_post.fd/CALUPDHEL.f b/sorc/ncep_post.fd/CALUPDHEL.f index ed8df327b..11fbc98b2 100644 --- a/sorc/ncep_post.fd/CALUPDHEL.f +++ b/sorc/ncep_post.fd/CALUPDHEL.f @@ -65,7 +65,7 @@ SUBROUTINE CALUPDHEL(UPDHEL) ! ! write(6,*) 'min/max WH(:,:,20):: ', minval(WH(:,:,20)), & ! maxval(WH(:,:,20)) -!mhu debug return + DO L=1,LM CALL EXCH(UH(1,jsta_2l,L)) END DO diff --git a/sorc/ncep_post.fd/CALVIS_GSD.f b/sorc/ncep_post.fd/CALVIS_GSD.f index 90b8afabd..ecd5d36b4 100644 --- a/sorc/ncep_post.fd/CALVIS_GSD.f +++ b/sorc/ncep_post.fd/CALVIS_GSD.f @@ -246,8 +246,7 @@ SUBROUTINE CALVIS_GSD(CZEN,VIS) !tgs 23 feb 2017 - increase of base value to 90 km to reduce attenuation ! from RH for clear-air visibility. (i.e., increase clear-air vis overall) - visrh = 90. * exp(-2.5*qrh) -! visrh = 60. * exp(-2.5*qrh) + visrh = 90. * exp(-2.5*qrh) ! -- add term to increase RH vis term for ! low-level wind shear increasing from 4 to 6 ms-1 diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index baa447b3c..41f1dcaca 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -877,7 +877,7 @@ SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) ! sample print point ii = im/2 - jj = (jsta+jend)/2 + jj = jm/2 print *,me,'max(gdlat)=', maxval(gdlat), & 'max(gdlon)=', maxval(gdlon) @@ -1005,16 +1005,6 @@ SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) do j=jsta,jend do i=1,im cwm(i,j,l)=spval -! zint(i,j,l)=zint(i,j,l+1)+buf(i,j) -! if(abs(dpres(i,j,l))>1.0e5)print*,'bad dpres ',i,j,dpres(i,j,l) -!make sure delz is positive - if(dpres(i,j,l)/=spval .and. t(i,j,l)/=spval .and. & - q(i,j,l)/=spval .and. buf3d(i,j,l)/=spval)then - pmid(i,j,l)=rgas*dpres(i,j,l)* & - t(i,j,l)*(q(i,j,l)*fv+1.0)/grav/abs(buf3d(i,j,l)) - else - pmid(i,j,l)=spval - end if ! dong add missing value if (wh(i,j,l) < spval) then omga(i,j,l)=(-1.)*wh(i,j,l)*dpres(i,j,l)/abs(buf3d(i,j,l)) @@ -1045,9 +1035,9 @@ SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) cwm(i,j,l)=qqg(i,j,l)+qqs(i,j,l)+qqr(i,j,l)+qqi(i,j,l)+qqw(i,j,l) enddo enddo - if(debugprint)print*,'sample l,t,q,u,v,w,pmid= ',isa,jsa,l & + if(debugprint)print*,'sample l,t,q,u,v,w= ',isa,jsa,l & ,t(isa,jsa,l),q(isa,jsa,l),uh(isa,jsa,l),vh(isa,jsa,l) & - ,wh(isa,jsa,l),pmid(isa,jsa,l) + ,wh(isa,jsa,l) if(debugprint)print*,'sample l cwm for FV3',l, & cwm(isa,jsa,l) end do @@ -1703,23 +1693,22 @@ SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) endif enddo enddo - ! The next two lines crash. ! if (me == 0) print*,'sample model pint,pmid' ,ii,jj,l & ! ,pint(ii,jj,l),pmid(ii,jj,l) end do -! do l=lm,1,-1 -! do j=jsta,jend -! do i=1,im -! if(pint(i,j,l+1)/=spval .and. dpres(i,j,l)/=spval)then -! pint(i,j,l)=pint(i,j,l+1)-dpres(i,j,l) -! else -! pint(i,j,l)=spval -! end if -! end do -! end do -! print*,'sample pint= ',isa,jsa,l,pint(isa,jsa,l) -! end do +!compute pmid from averaged two layer pint + do l=lm,1,-1 + do j=jsta,jend + do i=1,im + if (pint(i,j,l) 0) then + !$omp parallel do private(i,j) DO J=JSTA,JEND DO I=1,IM -! if(SPL(L) == 70000. .and. TPRES(I,J,L) Date: Tue, 23 Nov 2021 17:31:45 +0000 Subject: [PATCH 38/46] Putting all new GSL variables into EMC's unified post_avblflds.xml. Note that EMC's unified post_avblflds.xml does not validate using the avblflds Schema. --- parm/fv3lam_post_avblflds.xml | 3348 +++++++++++++++++++++++++++------ parm/fv3lam_rrfs.xml | 16 +- parm/post_avblflds.xml | 112 +- 3 files changed, 2852 insertions(+), 624 deletions(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index 108fb9621..9c569d24b 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -1,8 +1,8 @@ - + - + 1 PRES_ON_HYBRID_LVL @@ -267,27 +267,27 @@ 33 ACM_ACPCP_ON_SURFACE - tmpl4_8 + tmpl4_8 ACPCP ACM surface - 4.0 + -4.0 34 ACM_NCPCP_ON_SURFACE - tmpl4_8 + tmpl4_8 NCPCP ACM surface - 4.0 + -4.0 35 ACM_WEASD_ON_SURFACE - tmpl4_8 + tmpl4_8 WEASD ACM surface @@ -295,14 +295,12 @@ - 36 - SOILM_ON_DEPTH_BEL_LAND_SFC - SOILM - depth_bel_land_sfc - 2 - depth_bel_land_sfc - 2 - 3.0 + 36 + SOILM_ON_DEPTH_BEL_LAND_SFC + SOILM + depth_bel_land_sfc + depth_bel_land_sfc + 3.0 @@ -348,7 +346,7 @@ 42 AVE_LHTFL_ON_SURFACE - tmpl4_8 + tmpl4_8 LHTFL AVE surface @@ -358,7 +356,7 @@ 43 AVE_SHTFL_ON_SURFACE - tmpl4_8 + tmpl4_8 SHTFL AVE surface @@ -384,7 +382,7 @@ 46 AVE_MFLX_ON_SURFACE - tmpl4_8 + tmpl4_8 MFLX AVE surface @@ -394,7 +392,7 @@ 47 ACM_EVP_ON_SURFACE - tmpl4_8 + tmpl4_8 EVP ACM surface @@ -660,7 +658,7 @@ 78 AVE_LRGHR_ON_HYBRID_LVL - tmpl4_8 + tmpl4_8 LRGHR AVE hybrid_lvl @@ -670,7 +668,7 @@ 79 AVE_CNVHR_ON_HYBRID_LVL - tmpl4_8 + tmpl4_8 CNVHR AVE hybrid_lvl @@ -746,11 +744,11 @@ 87 ACM_APCP_ON_SURFACE - tmpl4_8 + tmpl4_8 APCP ACM surface - 4.0 + -4.0 @@ -1036,9 +1034,7 @@ TSOIL_ON_DEPTH_BEL_LAND_SFC TSOIL depth_bel_land_sfc - 2 depth_bel_land_sfc - 2 4.0 @@ -1046,11 +1042,9 @@ 117 SOILW_ON_DEPTH_BEL_LAND_SFC SOILW - NCEP + NCEP depth_bel_land_sfc - 2 depth_bel_land_sfc - 2 3.0 @@ -1067,7 +1061,7 @@ WEASD_ON_SURFACE WEASD surface - 4.0 + 3.0 @@ -1083,7 +1077,7 @@ ACM_SNOM_ON_SURFACE tmpl4_8 SNOM - ACM + ACM surface 4.0 @@ -1093,7 +1087,7 @@ ACM_SSRUN_ON_SURFACE tmpl4_8 SSRUN - ACM + ACM surface 4.0 @@ -1103,7 +1097,7 @@ ACM_BGRUN_ON_SURFACE tmpl4_8 BGRUN - ACM + ACM surface 4.0 @@ -1129,7 +1123,7 @@ AVE_DSWRF_ON_SURFACE tmpl4_8 DSWRF - AVE + AVE surface 3.0 @@ -1139,7 +1133,7 @@ AVE_DLWRF_ON_SURFACE tmpl4_8 DLWRF - AVE + AVE surface 3.0 @@ -1149,7 +1143,7 @@ AVE_USWRF_ON_SURFACE tmpl4_8 USWRF - AVE + AVE surface 3.0 @@ -1159,7 +1153,7 @@ AVE_ULWRF_ON_SURFACE tmpl4_8 ULWRF - AVE + AVE surface 3.0 @@ -1169,7 +1163,7 @@ AVE_USWRF_ON_TOP_OF_ATMOS tmpl4_8 USWRF - AVE + AVE top_of_atmos 3.0 @@ -1179,7 +1173,7 @@ AVE_ULWRF_ON_TOP_OF_ATMOS tmpl4_8 ULWRF - AVE + AVE top_of_atmos 3.0 @@ -1213,7 +1207,7 @@ AVE_GFLUX_ON_SURFACE tmpl4_8 GFLUX - AVE + AVE surface 4.0 @@ -1223,7 +1217,7 @@ AVE_SNOHF_ON_SURFACE tmpl4_8 SNOHF - AVE + AVE surface 4.0 @@ -1233,7 +1227,7 @@ ACM_PEVAP_ON_SURFACE tmpl4_8 PEVAP - ACM + ACM surface 4.0 @@ -1252,7 +1246,7 @@ AVE_CDLYR_ON_ENTIRE_ATMOS tmpl4_8 CDLYR - AVE + AVE entire_atmos_single_lyr 3.0 @@ -1286,7 +1280,7 @@ AVE_CDCON_ON_ENTIRE_ATMOS tmpl4_8 CDCON - AVE + AVE entire_atmos_single_lyr 3.0 @@ -1296,7 +1290,7 @@ AVE_TCDC_ON_ENTIRE_ATMOS tmpl4_8 TCDC - AVE + AVE entire_atmos_single_lyr 3.0 @@ -1717,9 +1711,9 @@ 196 - CDCON_ON_ENTIRE_ATMOS + CDCON_ON_CONVECTIVE_CLOUD_LYR CDCON - entire_atmos_single_lyr + convective_cloud_lyr 2.0 @@ -1752,7 +1746,7 @@ TCOLW_ON_ENTIRE_ATMOS TCOLW entire_atmos_single_lyr - 5.0 + 3.0 @@ -1928,7 +1922,6 @@ TCDC_ON_SIGMA_LVLS TCDC sigma_lvl - 2 3.0 @@ -1945,7 +1938,7 @@ SNOD_ON_SURFACE SNOD surface - 6.0 + 3.0 @@ -2186,9 +2179,9 @@ 256 ACM_LSPA_ON_SURFACE - tmpl4_8 + tmpl4_8 LSPA - ACM + ACM surface 3.0 @@ -2270,7 +2263,7 @@ AVE_ALBDO_ON_SURFACE tmpl4_8 ALBDO - AVE + AVE surface 4.0 @@ -2296,7 +2289,7 @@ AVE_UFLX_ON_SURFACE tmpl4_8 UFLX - AVE + AVE surface 4.0 @@ -2306,7 +2299,7 @@ AVE_VFLX_ON_SURFACE tmpl4_8 VFLX - AVE + AVE surface 4.0 @@ -2316,7 +2309,7 @@ AVE_PRATE_ON_SURFACE tmpl4_8 PRATE - AVE + AVE surface 4.0 @@ -2326,7 +2319,7 @@ AVE_CPRAT_ON_SURFACE tmpl4_8 CPRAT - AVE + AVE surface 4.0 @@ -2491,7 +2484,7 @@ AVE_LRGHR_ON_ENTIRE_ATMOS tmpl4_8 LRGHR - AVE + AVE entire_atmos_single_lyr 5.0 @@ -2501,7 +2494,7 @@ AVE_CNVHR_ON_ENTIRE_ATMOS tmpl4_8 CNVHR - AVE + AVE entire_atmos_single_lyr 5.0 @@ -2527,7 +2520,6 @@ TMP_ON_SIGMA_LVL_HPC TMP sigma_lvl - 2 -4.0 @@ -2536,7 +2528,7 @@ AVE_CDUVB_ON_SURFACE tmpl4_8 CDUVB - AVE + AVE surface 3.0 @@ -2546,7 +2538,7 @@ AVE_DUVB_ON_SURFACE tmpl4_8 DUVB - AVE + AVE surface 3.0 @@ -2562,9 +2554,9 @@ 300 AVE_TCDC_ON_LOW_CLOUD_LYR - tmpl4_8 - TCDC - AVE + tmpl4_8 + LCDC + AVE low_cloud_lyr 3.0 @@ -2572,8 +2564,8 @@ 301 AVE_TCDC_ON_MID_CLOUD_LYR - tmpl4_8 - TCDC + tmpl4_8 + MCDC AVE mid_cloud_lyr 3.0 @@ -2582,8 +2574,8 @@ 302 AVE_TCDC_ON_HIGH_CLOUD_LYR - tmpl4_8 - TCDC + tmpl4_8 + HCDC AVE high_cloud_lyr 3.0 @@ -2592,7 +2584,7 @@ 303 AVE_PRES_ON_LOW_CLOUD_BOT_LVL - tmpl4_8 + tmpl4_8 PRES AVE low_cloud_bot_lvl @@ -2602,7 +2594,7 @@ 304 AVE_PRES_ON_LOW_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 PRES AVE low_cloud_top_lvl @@ -2612,7 +2604,7 @@ 305 AVE_TMP_ON_LOW_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 TMP AVE low_cloud_top_lvl @@ -2622,7 +2614,7 @@ 306 AVE_PRES_ON_MID_CLOUD_BOT_LVL - tmpl4_8 + tmpl4_8 PRES AVE mid_cloud_bot_lvl @@ -2632,7 +2624,7 @@ 307 AVE_PRES_ON_MID_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 PRES AVE mid_cloud_top_lvl @@ -2642,7 +2634,7 @@ 308 AVE_TMP_ON_MID_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 TMP AVE mid_cloud_top_lvl @@ -2652,7 +2644,7 @@ 309 AVE_PRES_ON_HIGH_CLOUD_BOT_LVL - tmpl4_8 + tmpl4_8 PRES AVE high_cloud_bot_lvl @@ -2662,7 +2654,7 @@ 310 AVE_PRES_ON_HIGH_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 PRES AVE high_cloud_top_lvl @@ -2672,7 +2664,7 @@ 311 AVE_TMP_ON_HIGH_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 TMP AVE high_cloud_top_lvl @@ -2690,7 +2682,7 @@ 313 AVE_CWORK_ON_ENTIRE_ATMOS_SINGLE_LYR - tmpl4_8 + tmpl4_8 CWORK AVE entire_atmos_single_lyr @@ -2708,7 +2700,7 @@ 315 AVE_U-GWD_ON_SURFACE - tmpl4_8 + tmpl4_8 U-GWD AVE surface @@ -2718,7 +2710,7 @@ 316 AVE_V-GWD_ON_SURFACE - tmpl4_8 + tmpl4_8 V-GWD AVE surface @@ -2728,7 +2720,7 @@ 317 AVE_CRAIN_ON_SURFACE - tmpl4_8 + tmpl4_8 CRAIN AVE surface @@ -2959,7 +2951,7 @@ AVE_TCDC_ON_BOUND_LYR_CLOUD_LYR tmpl4_8 TCDC - AVE + AVE bound_lyr_cloud_lyr 3.0 @@ -2969,7 +2961,7 @@ ACM_WATR_ON_SURFACE tmpl4_8 WATR - ACM + ACM surface 6.0 @@ -2985,7 +2977,7 @@ 345 MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 TMAX MAX spec_hgt_lvl_above_grnd @@ -2996,7 +2988,7 @@ 346 MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 TMIN MIN spec_hgt_lvl_above_grnd @@ -3007,7 +2999,7 @@ 347 MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 MAXRH MAX spec_hgt_lvl_above_grnd @@ -3018,9 +3010,8 @@ 348 MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 MINRH - NCEP MIN spec_hgt_lvl_above_grnd 2. @@ -3303,7 +3294,7 @@ AVE_CSDLF_ON_SURFACE tmpl4_8 CSDLF - AVE + AVE surface 3.0 @@ -3313,7 +3304,7 @@ AVE_CSDSF_ON_SURFACE tmpl4_8 CSDSF - AVE + AVE surface 3.0 @@ -3323,7 +3314,7 @@ AVE_CSULF_ON_SURFACE tmpl4_8 CSULF - AVE + AVE surface 3.0 @@ -3333,7 +3324,7 @@ AVE_CSULF_ON_TOP_OF_ATMOS tmpl4_8 CSULF - AVE + AVE top_of_atmos 3.0 @@ -3343,7 +3334,7 @@ AVE_CSUSF_ON_SURFACE tmpl4_8 CSUSF - AVE + AVE surface 3.0 @@ -3353,7 +3344,7 @@ AVE_CSUSF_ON_TOP_OF_ATMOS tmpl4_8 CSUSF - AVE + AVE top_of_atmos 3.0 @@ -3363,7 +3354,7 @@ AVE_DSWRF_ON_TOP_OF_ATMOS tmpl4_8 DSWRF - AVE + AVE top_of_atmos 4.0 @@ -3465,7 +3456,7 @@ RETOP_ON_ENTIRE_ATMOS_SINGLE_LYR RETOP entire_atmos_single_lyr - 6.0 + -6.0 @@ -3476,7 +3467,7 @@ averaged surface visible beam downward solar flux tmpl4_8 VBDSF - AVE + AVE surface 3.0 @@ -3487,7 +3478,7 @@ averaged surface visible diffuse downward solar flux tmpl4_8 VDDSF - AVE + AVE surface 3.0 @@ -3498,7 +3489,7 @@ averaged surface near IR beam downward solar flux tmpl4_8 NBDSF - AVE + AVE surface 3.0 @@ -3509,7 +3500,7 @@ averaged surface near IR beam downward solar flux tmpl4_8 NDDSF - AVE + AVE surface 3.0 @@ -3520,7 +3511,7 @@ averaged snow rate on surface tmpl4_8 SRWEQ - AVE + AVE surface 3.0 @@ -3546,7 +3537,7 @@ 408 GSD_HGT_ON_CLOUD_CEILING - GSD_geopotential height on cloud base + GSD_geopotential height on cloud ceiling HGT cloud_ceilng 6.0 @@ -3586,7 +3577,6 @@ U-Component of Wind on Specified Height Level Above Ground UGRD spec_hgt_lvl_above_grnd - 80. -4.0 @@ -3596,7 +3586,6 @@ V-Component of Wind on Specified Height Level Above Ground VGRD spec_hgt_lvl_above_grnd - 80. -4.0 @@ -3655,7 +3644,7 @@ maximum Updraft Helicity on Specified Height Level Above Ground tmpl4_8 MXUPHL - MAX + MAX spec_hgt_lvl_above_grnd 5000. spec_hgt_lvl_above_grnd @@ -3669,7 +3658,7 @@ maximum Updraft Helicity on Specified Height Level Above Ground tmpl4_8 MAXREF - MAX + MAX spec_hgt_lvl_above_grnd 1000. -3.0 @@ -3681,7 +3670,7 @@ maximum wind speed on 10 meter Above Ground tmpl4_8 WIND - MAX + MAX spec_hgt_lvl_above_grnd 10. -4.0 @@ -3689,30 +3678,32 @@ 423 - MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa - hourly maximum Upward Vertical Velocity between 10-100hpa + MAX_MAXUVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa + hourly maximum Upward Vertical Velocity between 100-1000hpa tmpl4_8 MAXUVV + NCEP MAX - isobaric_sfc + spec_pres_above_grnd 10000. - isobaric_sfc + spec_pres_above_grnd 100000. - -4.0 + -3.0 424 - MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa - hourly maximum Downward Vertical Velocity between 10-100hpa + MAX_MAXDVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa + hourly maximum Downward Vertical Velocity between 100-1000hpa tmpl4_8 MAXDVV - MAX - isobaric_sfc + MAX + NCEP + spec_pres_above_grnd 10000. - isobaric_sfc + spec_pres_above_grnd 100000. - -4.0 + -3.0 @@ -3722,7 +3713,7 @@ average Vertical velocity between sigma lvl 0.5 and 0.8 tmpl4_8 DZDT - AVE + AVE sigma_lvl 2 50. @@ -3767,7 +3758,7 @@ MAXVIG_ON_ENTIRE_ATMOS_SINGLE_LYR Hourly Maximum of Column Vertical Integrated Graupel on entire atmosphere tmpl4_8 - TCOLG + MAXVIG MAX entire_atmos_single_lyr 3.0 @@ -3850,7 +3841,7 @@ bucket Large scale precipitation on surface tmpl4_8 NCPCP - ACM + ACM surface 4.0 @@ -3943,6 +3934,8 @@ 11.0 + + 443 HGT_ON_EQUIL_LVL @@ -3960,8 +3953,9 @@ NCEP surface 1.0 - + + 445 MAPS_PRMSL_ON_MEAN_SEA_LVL @@ -4003,6 +3997,14 @@ + + 450 + ICIP_ON_ICAO_STD_SFC + Total Icing Potential Diagnostic on standard atmospheric isobaric sfc + ICIP + isobaric_sfc + 3.0 + 451 @@ -4122,6 +4124,115 @@ 4.0 + + + 464 + EDPARM_GTG_ON_ICAO_STD_SFC + EDPARM + isobaric_sfc + 3.0 + + + + 465 + CAT_GTG_ON_ICAO_STD_SFC + CATEDR + isobaric_sfc + 3.0 + + + + 466 + MWTURB_GTG_ON_ICAO_STD_SFC + MWTURB + isobaric_sfc + 3.0 + + + + + 467 + EDPARM_GTG_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + EDPARM + spec_alt_above_mean_sea_lvl + 3.0 + + + + 468 + CAT_GTG_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + CATEDR + spec_alt_above_mean_sea_lvl + 3.0 + + + + 469 + MWTURB_GTG_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL + MWTURB + spec_alt_above_mean_sea_lvl + 3.0 + + + + + 470 + EDPARM_ON_HYBRID_LVL + EDPARM + hybrid_lvl + 3.0 + + + + 471 + CAT_ON_HYBRID_LVL + CATEDR + hybrid_lvl + 3.0 + + + + 472 + MWTURB_ON_HYBRID_LVL + MWTURB + hybrid_lvl + 3.0 + + + + + 473 + CBHE_ON_ENTIRE_ATMOS + CBHE + entire_atmos + 3.0 + + + + 474 + ICAHT_ON_CB_BASE + ICAHT + cb_base + 6.0 + + + + 475 + ICAHT_ON_CB_TOP + ICAHT + cb_top + 6.0 + + + + 480 + ICESEV_ON_ICAO_STD_SFC + Icing severity on standard atmospheric isobaric levels + ICESEV + isobaric_sfc + 1.0 + + 482 PRES_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL @@ -4205,7 +4316,7 @@ - 490 + 491 TMITB9_ON_TOP_OF_ATMOS Simulated Brightness Temperature for TMI TRMM, Channel 9 on top of atmosphere AMSRE12 @@ -4290,8 +4401,8 @@ AVE_SNOWC_ON_SURFACE tmpl4_8 SNOWC - AVE - surface + AVE + surface 3.0 @@ -4300,8 +4411,8 @@ AVE_PRES_ON_SURFACE tmpl4_8 PRES - AVE - surface + AVE + surface 5.0 @@ -4370,87 +4481,295 @@ - 546 - GSD_POT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - POT + 508 + MAX_PRATE_ON_SURFACE + Maximum Precipitation Rate on surface + tmpl4_8 + PRATE + MAX + surface + 6.0 + + + + 510 + MAX_QMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + tmpl4_8 + QMAX + MAX spec_hgt_lvl_above_grnd 2. 4.0 - - 547 - GSD_DEPR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - DEPR + 511 + MIN_QMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + tmpl4_8 + QMIN + MIN spec_hgt_lvl_above_grnd 2. - 3.0 + 4.0 - 548 - GSD_EPOT_ON_SURFACE - EPOT + 512 + ACOND_ON_SURFACE + ACOND surface - 3.0 + 4.0 - - 551 - CSNOW_ON_SURFACE - Categorical snow on surface - CSNOW - NCEP + 513 + AVE_EVCW_ON_SURFACE + tmpl4_8 + EVCW + AVE surface - 1.0 + 3.0 - 552 - CICEP_ON_SURFACE - Categorical ice pellets on surface - CICEP - NCEP + 514 + AVE_EVBS_ON_SURFACE + tmpl4_8 + EVBS + AVE surface - 1.0 + 3.0 - 553 - CFRZR_ON_SURFACE - Categorical freezing rain on surface - CFRZR - NCEP + 515 + AVE_TRANS_ON_SURFACE + tmpl4_8 + TRANS + AVE surface - 1.0 + 3.0 - 555 - AVE_CSNOW_ON_SURFACE - average Categorical snow on surface - tmpl4_8 - CSNOW + 516 + AVE_SBSNO_ON_SURFACE + tmpl4_8 + SBSNO AVE surface - 1.0 + 3.0 - 556 - AVE_CICEP_ON_SURFACE - average Categorical ice pellets on surface - tmpl4_8 - CICEP + 517 + AVE_PEVPR_ON_SURFACE + tmpl4_8 + PEVPR AVE surface - 1.0 + 6.0 + - 557 + 518 + HGT_ON_ICAO_STD_SFC + HGT + isobaric_sfc + 6.0 + + + + 519 + TMP_ON_ICAO_STD_SFC + TMP + isobaric_sfc + 3.0 + + + + 520 + UGRD_ON_ICAO_STD_SFC + UGRD + isobaric_sfc + 4.0 + + + + 521 + VGRD_ON_ICAO_STD_SFC + VGRD + isobaric_sfc + 4.0 + + + + 522 + RH_ON_ICAO_STD_SFC + RH + isobaric_sfc + 2.0 + + + + 523 + VVEL_ON_ICAO_STD_SFC + VVEL + isobaric_sfc + 5.0 + + + + 524 + ABSV_ON_ICAO_STD_SFC + ABSV + isobaric_sfc + 4.0 + + + + 525 + CLMR_ON_ICAO_STD_SFC + CLMR + isobaric_sfc + 4.0 + + + + 526 + BUCKET1_APCP_ON_SURFACE + bucket Total precipitation on surface + tmpl4_8 + APCP + ACM + surface + 4.0 + + + + 527 + BUCKET1_ACPCP_ON_SURFACE + bucket Convective precipitation on surface + tmpl4_8 + ACPCP + ACM + surface + 4.0 + + + + 528 + BUCKET1_NCPCP_ON_SURFACE + bucket Large scale precipitation on surface + tmpl4_8 + NCPCP + ACM + surface + 4.0 + + + + 529 + BUCKET1_WEASD_ON_SURFACE + bucket snow precipitation on surface + tmpl4_8 + WEASD + ACM + surface + 4.0 + + + + 530 + BUCKET1_GRAUPEL_ON_SURFACE + bucket graupel precipitation on surface + tmpl4_8 + FROZR + NCEP + ACM + surface + 4.0 + + + + 546 + GSD_POT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + POT + spec_hgt_lvl_above_grnd + 2. + 4.0 + + + + + 547 + GSD_DEPR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + DEPR + spec_hgt_lvl_above_grnd + 2. + 3.0 + + + + 548 + GSD_EPOT_ON_SURFACE + EPOT + surface + 3.0 + + + + 551 + CSNOW_ON_SURFACE + Categorical snow on surface + CSNOW + surface + 1.0 + + + + 552 + CICEP_ON_SURFACE + Categorical ice pellets on surface + CICEP + surface + 1.0 + + + + 553 + CFRZR_ON_SURFACE + Categorical freezing rain on surface + CFRZR + surface + 1.0 + + + + 555 + AVE_CSNOW_ON_SURFACE + average Categorical snow on surface + tmpl4_8 + CSNOW + AVE + surface + 1.0 + + + + 556 + AVE_CICEP_ON_SURFACE + average Categorical ice pellets on surface + tmpl4_8 + CICEP + AVE + surface + 1.0 + + + + 557 AVE_CFRZR_ON_SURFACE average Categorical freezing rain on surface tmpl4_8 @@ -4542,6 +4861,66 @@ 4.0 + + 568 + GFS_PRES_ON_MEAN_SEA_LVL + PRES + mean_sea_lvl + 6.0 + + + + 569 + GFS_AVE_TCDC_ON_CONVECTIVE_CLOUD_LYR + tmpl4_8 + TCDC + AVE + convective_cloud_lyr + 3.0 + + + + 570 + GFS_TCDC_ON_CONVECTIVE_CLOUD_LYR + TCDC + convective_cloud_lyr + 3.0 + + + + 571 + GFS_TMP_ON_DEPTH_BEL_LAND_SFC_3m + TMP + depth_bel_land_sfc + 3. + 3.0 + + + + 572 + GFS_LFTX_ON_SURFACE + LFTX + surface + 3.0 + + + + 573 + GFS_4LFTX_ON_SURFACE + 4LFTX + surface + 3.0 + + + + 574 + GFS_TMP_ON_DEPTH_BEL_LAND_SFC + TMP + depth_bel_land_sfc + depth_bel_land_sfc + 4.0 + + 575 CWAT_ON_ENTIRE_ATMOS_SINGLE_LYR @@ -4804,7 +5183,7 @@ 611 - Seasalt_AER_OPT_DEP_at550 + SEASALT_AER_OPT_DEP_at550 tmpl4_48 AOTK entire_atmos @@ -4844,7 +5223,7 @@ tmpl4_48 AOTK entire_atmos - sea_salt_dry + particulate_org_matter_dry smaller_than_first_limit 6 20 @@ -4862,7 +5241,7 @@ tmpl4_48 AOTK entire_atmos - black_carbondry + black_carbon_dry smaller_than_first_limit 6 20 @@ -4874,65 +5253,51 @@ 9.0 - - 615 - DUST_EMISSION_FLUX - tmpl4_48 - AEMFLX - entire_atmos - dust_dry - smaller_than_first_limit - 6 - 20 - 9.0 - - 616 - DUST_SEDIMENTATION_FLUX + BC_COL_MASS_DEN tmpl4_48 - SEDMFLX - entire_atmos - dust_dry + COLMD + entire_atmos + black_carbon_dry smaller_than_first_limit - 6 - 20 + 10 + 236 9.0 617 - DUST_DRY_DEPOSITION_FLUX + OC_COL_MASS_DEN tmpl4_48 - DDMFLX - entire_atmos - dust_dry + COLMD + entire_atmos + particulate_org_matter_dry smaller_than_first_limit - 6 - 20 + 10 + 424 9.0 618 - DUST_WET_DEPOSITION_FLUX + SULF_COL_MASS_DEN tmpl4_48 - WLSMFLX - entire_atmos - dust_dry + COLMD + entire_atmos + sulphate_dry smaller_than_first_limit - 6 - 20 + 7 + 25 9.0 - 619 - CR_AER_SFC_MASS_CON + PM10_SFC_MASS_CON tmpl4_48 - MASSDEN + PMTC surface - dust_dry + total_aerosol smaller_than_first_limit 6 10 @@ -4941,11 +5306,11 @@ 620 - FN_AER_SFC_MASS_CON + PM25_SFC_MASS_CON tmpl4_48 - MASSDEN + PMTF surface - dust_dry + total_aerosol smaller_than_first_limit 7 25 @@ -4954,11 +5319,11 @@ 621 - CR_AER_COL_MASS_DEN + PM10_COL_MASS_DEN tmpl4_48 COLMD entire_atmos - dust_dry + total_aerosol smaller_than_first_limit 6 10 @@ -4967,11 +5332,11 @@ 622 - FN_AER_COL_MASS_DEN + PM25_COL_MASS_DEN tmpl4_48 COLMD entire_atmos - dust_dry + total_aerosol smaller_than_first_limit 7 25 @@ -5073,7 +5438,7 @@ AER_OPT_DEP_at11100 tmpl4_48 AOTK - entire_atmos + entire_atmos total_aerosol smaller_than_first_limit 6 @@ -5090,9 +5455,9 @@ 629 DUST1_ON_HYBRID_LVL tmpl4_48 - MASSMR - hybrid_lvl + PMTF dust_dry + hybrid_lvl between_first_second_limit_noincl2ndlmt 7 2 @@ -5105,9 +5470,9 @@ 630 DUST2_ON_HYBRID_LVL tmpl4_48 - MASSMR - hybrid_lvl + PMTF dust_dry + hybrid_lvl between_first_second_limit_noincl2ndlmt 7 20 @@ -5120,9 +5485,9 @@ 631 DUST3_ON_HYBRID_LVL tmpl4_48 - MASSMR - hybrid_lvl + PMTC dust_dry + hybrid_lvl between_first_second_limit_noincl2ndlmt 7 36 @@ -5135,9 +5500,9 @@ 632 DUST4_ON_HYBRID_LVL tmpl4_48 - MASSMR - hybrid_lvl + PMTC dust_dry + hybrid_lvl between_first_second_limit_noincl2ndlmt 7 60 @@ -5150,9 +5515,9 @@ 633 DUST5_ON_HYBRID_LVL tmpl4_48 - MASSMR - hybrid_lvl + PMTC dust_dry + hybrid_lvl between_first_second_limit_noincl2ndlmt 7 120 @@ -5162,650 +5527,2405 @@ - 700 - GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km - tmpl4_8 - MXUPHL - MAX - spec_hgt_lvl_above_grnd - 6000. - spec_hgt_lvl_above_grnd - 1000. - 3.0 - - - - 701 - GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km - UPHL - spec_hgt_lvl_above_grnd - 6000. - spec_hgt_lvl_above_grnd - 1000. - 3.0 + 634 + SEASALT1_ON_HYBRID_LVL + tmpl4_48 + PMTF + sea_salt_dry + hybrid_lvl + between_first_second_limit_noincl2ndlmt + 8 + 6 + 8 + 20 + 11.0 - - 702 - GSD_MAX_LTG_THREAT1_ON_ENTIRE_ATMOS - LTGTHREAT1 - entire_atmos - 3.0 + 635 + SEASALT2_ON_HYBRID_LVL + tmpl4_48 + PMTF + sea_salt_dry + hybrid_lvl + between_first_second_limit_noincl2ndlmt + 7 + 2 + 7 + 10 + 11.0 - 703 - GSD_MAX_LTG_THREAT2_ON_ENTIRE_ATMOS - LTGTHREAT2 - entire_atmos - 3.0 + 636 + SEASALT3_ON_HYBRID_LVL + tmpl4_48 + PMTC + sea_salt_dry + hybrid_lvl + between_first_second_limit_noincl2ndlmt + 7 + 10 + 7 + 30 + 11.0 - 704 - GSD_MAX_LTG_THREAT3_ON_ENTIRE_ATMOS - LTNG - entire_atmos - 3.0 + 637 + SEASALT4_ON_HYBRID_LVL + tmpl4_48 + PMTC + sea_salt_dry + hybrid_lvl + between_first_second_limit_noincl2ndlmt + 7 + 30 + 7 + 100 + 11.0 - 705 - GSD_NCI_LTG_ON_ENTIRE_ATMOS - GSD_Convective Initiation Lightning - NCILTG - entire_atmos - 3.0 + 638 + SEASALT5_ON_HYBRID_LVL + tmpl4_48 + PMTC + sea_salt_dry + hybrid_lvl + between_first_second_limit_noincl2ndlmt + 7 + 100 + 7 + 200 + 11.0 - 706 - GSD_NCA_LTG_ON_ENTIRE_ATMOS - GSD_Convective Activity Lightning - NCALTG - entire_atmos - 3.0 + 639 + SO4_ON_HYBRID_LVL + tmpl4_48 + PMTF + sulphate_dry + hybrid_lvl + equall_to_first_limit + 9 + 139 + 11.0 - 707 - GSD_NCI_WQ_ON_ENTIRE_ATMOS - GSD_Convective Initiation Vertical Hydrometeor Flux - NCIWQ - entire_atmos - 3.0 + 640 + OCPHOBIC_ON_HYBRID_LVL + tmpl4_48 + PMTF + particulate_org_matter_hydrophobic + hybrid_lvl + equall_to_first_limit + 10 + 424 + 11.0 - 708 - GSD_NCA_WQ_ON_ENTIRE_ATMOS - GSD_Convective Activity Vertical Hydrometeor Flux - NCAWQ - entire_atmos - 3.0 + 641 + OCPHILIC_ON_HYBRID_LVL + tmpl4_48 + PMTF + particulate_org_matter_hydrophilic + hybrid_lvl + equall_to_first_limit + 10 + 424 + 11.0 - 709 - GSD_NCI_REFL_ON_ENTIRE_ATMOS - GSD_Convective Initiation Reflectivity - NCIREFL - entire_atmos - 3.0 + 642 + BCPHOBIC_ON_HYBRID_LVL + tmpl4_48 + PMTF + black_carbon_hydrophobic + hybrid_lvl + equall_to_first_limit + 10 + 236 + 11.0 - 710 - GSD_NCA_REFL_ON_ENTIRE_ATMOS - GSD_Convective Activity Reflectivity - NCAREFL - entire_atmos - 3.0 + 643 + BCPHILIC_ON_HYBRID_LVL + tmpl4_48 + PMTF + black_carbon_hydrophilic + hybrid_lvl + equall_to_first_limit + 10 + 236 + 11.0 - 711 - GSD_EXP_CEILING_2 - CEIL - cloud_base - 3.0 + 644 + AIR_DENSITY_ON_HYBRID_LVL + DEN + hybrid_lvl + 4.0 - 727 - GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km - UPHL - spec_hgt_lvl_above_grnd - 5000. - spec_hgt_lvl_above_grnd - 2000. - 3.0 + 645 + LAYER_THICKNESS_ON_HYBRID_LVL + THICK + hybrid_lvl + 4.0 - 748 - GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_1km - REFL - spec_hgt_lvl_above_grnd - 1000. - 3.0 + 646 + DUST_COL_MASS_DEN + tmpl4_48 + COLMD + entire_atmos + dust_dry + smaller_than_first_limit + 7 + 25 + 9.0 - 749 - GSD_RH_WRT_PRECIP_WATER_ON_ENTIRE_ATMOS - RELATIVE HUMIDITY WITH RESPECT TO PRECIPITABLE WATER - RH_PWAT + 647 + SEAS_COL_MASS_DEN + tmpl4_48 + COLMD entire_atmos - 3.0 + sea_salt_dry + smaller_than_first_limit + 7 + 25 + 9.0 - - 750 - GSD_WV_MIXR_ON_HYBRID_LVL - MIXR - hybrid_lvl - 3.0 + 648 + SINGLE_SCAT_ALBD_at340 + tmpl4_48 + SSALBK + total_aerosol + smaller_than_first_limit + 6 + 20 + between_first_second_limit + 9 + 338 + 9 + 342 + entire_atmos + 9.0 - 751 - GSD_VPTMP_ON_HYBRID_LVL - VPTMP - hybrid_lvl - 3.0 + 649 + AER_ASYM_FACTOR_at340 + tmpl4_48 + ASYSFK + total_aerosol + smaller_than_first_limit + 6 + 20 + between_first_second_limit + 9 + 338 + 9 + 342 + entire_atmos + 9.0 - 752 - GSD_NCIP_ON_HYBRID_LVL - Number concentration for ice particles on hybrid level - NCIP - hybrid_lvl - 3.0 + 650 + AER_SCAT_OPT_DEP_at550 + tmpl4_48 + SCTAOTK + total_aerosol + smaller_than_first_limit + 6 + 20 + between_first_second_limit + 9 + 545 + 9 + 565 + entire_atmos + 9.0 - 753 - GSD_PRES_ON_0C_ISOTHERM - GSD_pressure on Level of 0 deg (C) isotherm - PRES - 0C_isotherm - 3.0 + 651 + DUST_AER_SCAT_OPT_DEP_at550 + tmpl4_48 + SCTAOTK + dust_dry + smaller_than_first_limit + 6 + 20 + between_first_second_limit + 9 + 545 + 9 + 565 + entire_atmos + 9.0 - 754 - GSD_NCRAIN_ON_HYBRID_LVL - NCRAIN - hybrid_lvl - 3.0 + 652 + SEASALT_AER_SCAT_OPT_DEP_at550 + tmpl4_48 + SCTAOTK + sea_salt_dry + smaller_than_first_limit + 6 + 20 + between_first_second_limit + 9 + 545 + 9 + 565 + entire_atmos + 9.0 + + + + 653 + SULFATE_AER_SCAT_OPT_DEP_at550 + tmpl4_48 + SCTAOTK + sulphate_dry + smaller_than_first_limit + 8 + 70 + between_first_second_limit + 9 + 545 + 9 + 565 + entire_atmos + 9.0 + + + + 654 + ORGANIC_CARBON_AER_SCAT_OPT_DEP_at550 + tmpl4_48 + SCTAOTK + particulate_org_matter_dry + smaller_than_first_limit + 8 + 70 + between_first_second_limit + 9 + 545 + 9 + 565 + entire_atmos + 9.0 + + + + 655 + BLACK_CARBON_AER_SCAT_OPT_DEP_at550 + tmpl4_48 + SCTAOTK + black_carbon_dry + smaller_than_first_limit + 8 + 70 + between_first_second_limit + 9 + 545 + 9 + 565 + entire_atmos + 9.0 + + + + 656 + ANGSTROM_EXP_at440_860 + tmpl4_48 + ANGSTEXP + total_aerosol + smaller_than_first_limit + 6 + 20 + between_first_second_limit + 9 + 430 + 9 + 876 + entire_atmos + 9.0 + + + + 659 + DUST_EMISSION_FLUX + tmpl4_48 + AEMFLX + entire_atmos + dust_dry + smaller_than_first_limit + 6 + 20 + 9.0 + + + + 660 + DUST_SEDIMENTATION_FLUX + tmpl4_48 + SEDMFLX + entire_atmos + dust_dry + smaller_than_first_limit + 6 + 20 + 9.0 + + + + 661 + DUST DRY DEPOSITION + tmpl4_48 + DDMFLX + dust_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 662 + DUST WET DEPOSITION + tmpl4_48 + WLSMFLX + dust_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 663 + SEASALT_EMISSION_FLUX + tmpl4_48 + AEMFLX + sea_salt_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 664 + SEASALT_SEDIMENTATION_FLUX + tmpl4_48 + SEDMFLX + sea_salt_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 665 + SEASALT_DRY_DEPOSITION_FLUX + tmpl4_48 + DDMFLX + sea_salt_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 666 + SEASALT_WET_DEPOSITION_FLUX + tmpl4_48 + WLSMFLX + sea_salt_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 667 + BLACK_CARBON_EMISSION_FLUX + tmpl4_48 + AEMFLX + black_carbon_dry + smaller_than_first_limit + 10 + 236 + entire_atmos + 9.0 + + + + 668 + BLACK_CARBON_SEDIMENTATION_FLUX + tmpl4_48 + SEDMFLX + black_carbon_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 669 + BLACK_CARBON_DRY_DEPOSITION_FLUX + tmpl4_48 + DDMFLX + black_carbon_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 670 + BLACK_CARBON_WET_DEPOSITION_FLUX + tmpl4_48 + WLSMFLX + black_carbon_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 671 + ORGANIC_CARBON_EMISSION_FLUX + tmpl4_48 + AEMFLX + particulate_org_matter_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 672 + ORGANIC_CARBON_SEDIMENTATION_FLUX + tmpl4_48 + SEDMFLX + particulate_org_matter_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 673 + ORGANIC_CARBON_DRY_DEPOSITION_FLUX + tmpl4_48 + DDMFLX + particulate_org_matter_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 674 + ORGANIC_CARBON_WET_DEPOSITION_FLUX + tmpl4_48 + WLSMFLX + particulate_org_matter_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 675 + SULFATE_EMISSION_FLUX + tmpl4_48 + AEMFLX + sulphate_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 676 + SULFATE_SEDIMENTATION_FLUX + tmpl4_48 + SEDMFLX + sulphate_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 677 + SULFATE_DRY_DEPOSITION_FLUX + tmpl4_48 + DDMFLX + sulphate_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 678 + SULFATE_WET_DEPOSITION_FLUX + tmpl4_48 + WLSMFLX + sulphate_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 679 + DUST_SCAVENGING_FLUX + tmpl4_48 + WDCPMFLX + dust_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 680 + SEASALT_SCAVENGING_FLUX + tmpl4_48 + WDCPMFLX + sea_salt_dry + smaller_than_first_limit + 6 + 20 + entire_atmos + 9.0 + + + + 681 + BLACK_CARBON_SCAVENGING_FLUX + tmpl4_48 + WDCPMFLX + black_carbon_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 682 + ORGANIC_CARBON_SCAVENGING_FLUX + tmpl4_48 + WDCPMFLX + particulate_org_matter_dry + smaller_than_first_limit + 8 + 70 + entire_atmos + 9.0 + + + + 683 + SS_CR_AER_SFC_MASS_CON + AVE + tmpl4_48 + MASSDEN + sea_salt_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 684 + SEAS25_SFC_MASS_CON + tmpl4_48 + PMTF + surface + sea_salt_dry + smaller_than_first_limit + 7 + 25 + 9.0 + + + + 685 + DU_CR_AER_SFC_MASS_CON + AVE + tmpl4_48 + MASSDEN + dust_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 686 + DUST25_SFC_MASS_CON + tmpl4_48 + PMTF + surface + dust_dry + smaller_than_first_limit + 7 + 25 + 9.0 + + + + 687 + BC_AER_SFC_MASS_CON + AVE + tmpl4_48 + MASSDEN + black_carbon_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 688 + OC_AER_SFC_MASS_CON + AVE + tmpl4_48 + MASSDEN + particulate_org_matter_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 689 + SU_AER_SFC_MASS_CON + AVE + tmpl4_48 + MASSDEN + sulphate_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 690 + INST_SU_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + sulphate_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 691 + INST_OC_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + particulate_org_matter_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + + 692 + INST_BC_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + black_carbon_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 693 + INST_DU_CR_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + dust_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 694 + INST_DU_FN_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + dust_dry + smaller_than_first_limit + 7 + 25 + surface + 9.0 + + + + 695 + INST_SS_CR_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + sea_salt_dry + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 696 + INST_SS_FN_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + sea_salt_dry + smaller_than_first_limit + 7 + 25 + surface + 9.0 + + + + 697 + INST_CR_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + total_aerosol + smaller_than_first_limit + 6 + 10 + surface + 9.0 + + + + 698 + INST_FN_AER_SFC_MASS_CON + tmpl4_48 + MASSDEN + total_aerosol + smaller_than_first_limit + 7 + 25 + surface + 9.0 + + + + 700 + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km + tmpl4_8 + MXUPHL + MAX + spec_hgt_lvl_above_grnd + 6000. + spec_hgt_lvl_above_grnd + 1000. + 3.0 + + + + 701 + GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km + UPHL + spec_hgt_lvl_above_grnd + 6000. + spec_hgt_lvl_above_grnd + 1000. + 3.0 + + + + + 702 + GSD_MAX_LTG_THREAT1_ON_ENTIRE_ATMOS + LTGTHREAT1 + entire_atmos + 3.0 + + + + 703 + GSD_MAX_LTG_THREAT2_ON_ENTIRE_ATMOS + LTGTHREAT2 + entire_atmos + 3.0 + + + + 704 + GSD_MAX_LTG_THREAT3_ON_ENTIRE_ATMOS + LTNG + entire_atmos + 3.0 + + + + 705 + GSD_NCI_LTG_ON_ENTIRE_ATMOS + GSD_Convective Initiation Lightning + NCILTG + entire_atmos + 3.0 + + + + 706 + GSD_NCA_LTG_ON_ENTIRE_ATMOS + GSD_Convective Activity Lightning + NCALTG + entire_atmos + 3.0 + + + + 707 + GSD_NCI_WQ_ON_ENTIRE_ATMOS + GSD_Convective Initiation Vertical Hydrometeor Flux + NCIWQ + entire_atmos + 3.0 + + + + 708 + GSD_NCA_WQ_ON_ENTIRE_ATMOS + GSD_Convective Activity Vertical Hydrometeor Flux + NCAWQ + entire_atmos + 3.0 + + + + 709 + GSD_NCI_REFL_ON_ENTIRE_ATMOS + GSD_Convective Initiation Reflectivity + TSEC + entire_atmos + 3.0 + + + + 710 + GSD_NCA_REFL_ON_ENTIRE_ATMOS + GSD_Convective Activity Reflectivity + TSEC + entire_atmos + 6. + 3.0 + + + + 711 + GSD_EXP_CEILING_2 + CEIL + cloud_base + 3.0 + + + + 719 + INST_USWRF_ON_TOP_OF_ATMOS + USWRF + top_of_atmos + 4.0 + + + + 725 + GSD_ACM_SNOD_ON_SURFACE + tmpl4_8 + ASNOW + ACM + surface + 3.0 + + + + 726 + VEG_MIN_ON_SURFACE + VEGMIN + NCEP + surface + 3.0 + + + + 727 + GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + UPHL + spec_hgt_lvl_above_grnd + 5000. + spec_hgt_lvl_above_grnd + 2000. + 3.0 + + + + 728 + GSD_HAILCAST_HAIL_DIAMETER + tmpl4_8 + HAIL + MAX + surface + 4.0 + + + + 729 + VEG_MAX_ON_SURFACE + VEGMAX + NCEP + surface + 3.0 + + + + 730 + AVE_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + tmpl4_8 + WIND + AVE + spec_hgt_lvl_above_grnd + 10. + 4.0 + + + + 731 + AVE_UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + tmpl4_8 + UGRD + AVE + spec_hgt_lvl_above_grnd + 10. + 4.0 + + + + 732 + AVE_VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + tmpl4_8 + VGRD + AVE + spec_hgt_lvl_above_grnd + 10. + 4.0 + + + + 733 + GSD_AVE_DSWRF_ON_SURFACE + tmpl4_8 + DSWRF + AVE + surface + 3.0 + + + + 734 + GSD_AVE_SWDDNI_ON_SURFACE + tmpl4_8 + VBDSF + NCEP + AVE + surface + 3.0 + + + + 735 + AOD_ON_ENTIRE_ATMOS_SINGLE_LYR + tmpl4_0 + AOTK + entire_atmos_single_lyr + 5.0 + + + + 736 + SMOKE_ON_ENTIRE_ATMOS_SINGLE_LYR + tmpl4_0 + COLMD + entire_atmos_single_lyr + 5.0 + + + + 737 + SMOKE_ON_HYBRID_LVL + tmpl4_0 + MASSDEN + hybrid_lvl + 6.0 + + + + 738 + SMOKE_ON_ISOBARIC_SFC + tmpl4_0 + MASSDEN + isobaric_sfc + 6.0 + + + + 739 + SMOKE_ON_SPEC_HGT_LVL_ABOVE_GRND_8m + tmpl4_0 + MASSDEN + spec_hgt_lvl_above_grnd + 8. + 6.0 + + + + 740 + MEAN_FIRE_RDIATV_PWR + CFNSF + NCEP + surface + 4.0 + + + + 746 + ACM_GRAUPEL_ON_SURFACE + tmpl4_8 + FROZR + NCEP + ACM + surface + 4.0 + + + + 747 + GSD_NCCD_ON_HYBRID_LVL + Number concentration for cloud water drops on hybrid level + NCONCD + hybrid_lvl + 3.0 + + + + 748 + GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_1km + REFD + spec_hgt_lvl_above_grnd + 1000. + 3.0 + + + + 749 + GSD_RH_WRT_PRECIP_WATER_ON_ENTIRE_ATMOS + RELATIVE HUMIDITY WITH RESPECT TO PRECIPITABLE WATER + RH_PWAT + entire_atmos + 3.0 + + + + 750 + GSD_WV_MIXR_ON_HYBRID_LVL + MIXR + hybrid_lvl + 3.0 + + + + 751 + GSD_VPTMP_ON_HYBRID_LVL + VPTMP + hybrid_lvl + 3.0 + + + + 752 + GSD_NCIP_ON_HYBRID_LVL + Number concentration for ice particles on hybrid level + NCIP + hybrid_lvl + 3.0 + + + + 753 + GSD_PRES_ON_0C_ISOTHERM + GSD_pressure on Level of 0 deg (C) isotherm + PRES + 0C_isotherm + 3.0 + + + + 754 + GSD_NCRAIN_ON_HYBRID_LVL + NCRAIN + hybrid_lvl + 3.0 + + + + 756 + GSD_PRES_ON_HGHST_TROP_FRZ_LVL + GSD_pressure on Highest tropospheric freezing level + PRES + hghst_trop_frz_lvl + 3.0 + + + + 757 + GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_4km + REFD + spec_hgt_lvl_above_grnd + 4000. + 3.0 + + + + 758 + GSD_HGT_ON_CONVECTIVE_CLOUD_TOP_LVL + HGT + convective_cloud_top_lvl + 4.0 + + + + 760 + GSD_MIXR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MIXR + spec_hgt_lvl_above_grnd + 2. + 3.0 + + + + 761 + GSD_INSIDE_SNOW_TMP_ON_SURFACE + TMP + SURFACE + 4.0 + + + + 762 + GSD_MIXR_ON_SURFACE + MIXR + SURFACE + 3.0 + + + + 763 + GSD_MIXR_ON_LFC + MIXR + level_free_convection + 3.0 + + + + 766 + GSD_NCWFA_ON_HYBRID_LVL + PMTF + NCEP + hybrid_lvl + 3.0 + + + + 767 + GSD_NCIFA_ON_HYBRID_LVL + PMTC + NCEP + hybrid_lvl + 3.0 + + + + 768 + GSD_ECHOTOP_ON_CLOUD_TOP + Echo top height (Highest height in meters of the 18-dBZ reflectivity on a model level) + RETOP + cloud_top + 3.0 + + + + 769 + GSD_VIL_ON_ENTIRE_ATMOS + VIL + entire_atmos + 4.0 + + + + 770 + GSD_RADARVIL_ON_ENTIRE_ATMOS + RADARVIL + entire_atmos + 3.0 + + + + 772 + INST_SWDDNI_ON_SURFACE + VBDSF + NCEP + surface + 4.0 + + + + 773 + INST_SWDDIF_ON_SURFACE + VDDSF + NCEP + surface + 4.0 + + + + 774 + FRACCC_ON_HYBRID_LVL + FRACCC + hybrid_lvl + 3.0 + + + + 775 + BUCKET_GRAUPEL_ON_SURFACE + bucket graupel precipitation on surface + tmpl4_8 + FROZR + NCEP + ACM + surface + 4.0 + + + + 776 + HGT_ON_HGHST_TROP_-10C_LVL + height on highest tropospheric -10C level + HGT + isothermal + 263. + 3.0 + + + + 777 + RH_ON_HGHST_TROP_-10C_LVL + relative humidity on highest tropospheric -10C level + RH + isothermal + 263. + 2.0 + + + + 778 + PRES_ON_HGHST_TROP_-10C_LVL + pressure on highest tropospheric -10C level + PRES + isothermal + 263. + 3.0 + + + + 779 + HGT_ON_HGHST_TROP_-20C_LVL + height on highest tropospheric -20C level + HGT + isothermal + 253. + 3.0 + + + + 780 + RH_ON_HGHST_TROP_-20C_LVL + relative humidity on highest tropospheric -20C level + RH + isothermal + 253. + 2.0 + + + + 781 + PRES_ON_HGHST_TROP_-20C_LVL + pressure on highest tropospheric -20C level + PRES + isothermal + 253. + 3.0 + + + + 782 + ACM_FRAIN_ON_SURFACE + tmpl4_8 + FRZR + NCEP + ACM + surface + 4.0 + + + + 783 + MAX_UGD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + maximum u wind on 10 meter Above Ground + tmpl4_8 + MAXUW + NCEP + MAX + spec_hgt_lvl_above_grnd + 10. + -4.0 + + + + 784 + MAX_VGD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m + maximum v wind on 10 meter Above Ground + tmpl4_8 + MAXVW + NCEP + MAX + spec_hgt_lvl_above_grnd + 10. + -4.0 + + + + 785 + MAX_REF_ON_ISOTHERMAL_-10C + maximum reflectivity on -10C suface + tmpl4_8 + REFD + MAX + isothermal + 263. + -3.0 + + + + 786 + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + tmpl4_8 + MNUPHL + MIN + spec_hgt_lvl_above_grnd + 5000. + spec_hgt_lvl_above_grnd + 2000. + -3.0 + + + + 787 + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km + tmpl4_8 + MNUPHL + MIN + spec_hgt_lvl_above_grnd + 6000. + spec_hgt_lvl_above_grnd + 1000. + 3.0 + + + + 788 + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + tmpl4_8 + MXUPHL + MAX + spec_hgt_lvl_above_grnd + 2000. + spec_hgt_lvl_above_grnd + 0000. + 3.0 + + + + 789 + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + tmpl4_8 + MNUPHL + MIN + spec_hgt_lvl_above_grnd + 2000. + spec_hgt_lvl_above_grnd + 0000. + 3.0 + + + + 790 + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + tmpl4_8 + MXUPHL + MAX + spec_hgt_lvl_above_grnd + 3000. + spec_hgt_lvl_above_grnd + 0000. + 3.0 + + + + 791 + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + tmpl4_8 + MNUPHL + MIN + spec_hgt_lvl_above_grnd + 3000. + spec_hgt_lvl_above_grnd + 0000. + -3.0 + + + + 792 + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + tmpl4_8 + RELV + MAX + spec_hgt_lvl_above_grnd + 2000. + spec_hgt_lvl_above_grnd + 0000. + 5.0 + + + + 793 + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km + tmpl4_8 + RELV + MAX + spec_hgt_lvl_above_grnd + 1000. + spec_hgt_lvl_above_grnd + 0000. + 5.0 + + + + 794 + GSD_MAX_COLMAX_GRAUPEL_HAIL_DIAMETER + tmpl4_8 + HAIL + MAX + entire_atmos + 4.0 + + + + 795 + GSD_MAX_SIGMA_LVL_MAX_GRAUPEL_HAIL_DIAMETER + tmpl4_8 + HAIL + MAX + sigma_lvl + 1 + 1. + 4.0 + + + + 798 + GSD_PRES1_ON_CLOUD_BASE + PRES + cloud_base + 3.0 + + + + 799 + TCDC_ON_BOUND_LYR + TCDC + bound_lyr_cloud_lyr + 3.0 + + + + 808 + APTMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + APTMP + spec_hgt_lvl_above_grnd + 2. + 4.0 + + + + 825 + SSMS1715_ON_TOP_OF_ATMOS + SSMS1715 + top_of_atmos + 4.0 + + + + 826 + SSMS1716_ON_TOP_OF_ATMOS + SSMS1716 + top_of_atmos + 4.0 + + + + 827 + SSMS1717_ON_TOP_OF_ATMOS + SSMS1717 + top_of_atmos + 4.0 + + + + 828 + SSMS1718_ON_TOP_OF_ATMOS + SSMS1718 + top_of_atmos + 4.0 + + + + 890 + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 + Hourly max relative vorticity on hybrid level 1 + tmpl4_8 + RELV + MAX + hybrid_lvl + 1. + 5.0 + + + + 912 + REFD_ON_ISOTHERMAL + REFD + isothermal + 263. + -4.0 + + + + 913 + 1H_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 914 + ACM_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 915 + 1H_2YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 916 + ACM_2YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 917 + 1H_5YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 918 + ACM_5YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 919 + 1H_10YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 920 + ACM_10YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 921 + 1H_100YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 922 + ACM_100YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 - 756 - GSD_PRES_ON_HGHST_TROP_FRZ_LVL - GSD_pressure on Highest tropospheric freezing level - PRES - hghst_trop_frz_lvl - 3.0 + 927 + SBTA167_ON_TOP_OF_ATMOS + SBTA167 + top_of_atmos + 4.0 - 757 - GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_4km - REFL - spec_hgt_lvl_above_grnd - 4000. - 3.0 + 928 + SBTA168_ON_TOP_OF_ATMOS + SBTA168 + top_of_atmos + 4.0 - 758 - GSD_HGT_ON_CONVECTIVE_CLOUD_TOP_LVL - HGT - convective_cloud_top_lvl + 929 + SBTA169_ON_TOP_OF_ATMOS + SBTA169 + top_of_atmos 4.0 - 760 - GSD_MIXR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - MIXR - spec_hgt_lvl_above_grnd - 2. - 3.0 + 930 + SBTA1610_ON_TOP_OF_ATMOS + SBTA1610 + top_of_atmos + 4.0 - 762 - GSD_MIXR_ON_SURFACE - MIXR - SURFACE - 3.0 + 931 + SBTA1611_ON_TOP_OF_ATMOS + SBTA1611 + top_of_atmos + 4.0 - 761 - GSD_INSIDE_SNOW_TMP_ON_SURFACE - TMP - SURFACE + 932 + SBTA1612_ON_TOP_OF_ATMOS + SBTA1612 + top_of_atmos 4.0 - 766 - GSD_NCWFA_ON_HYBRID_LVL - PMTF - NCEP - hybrid_lvl - 3.0 + 933 + SBTA1613_ON_TOP_OF_ATMOS + SBTA1613 + top_of_atmos + 4.0 - 767 - GSD_NCIFA_ON_HYBRID_LVL - PMTC - NCEP - hybrid_lvl - 3.0 + 934 + SBTA1614_ON_TOP_OF_ATMOS + SBTA1614 + top_of_atmos + 4.0 + + 935 + SBTA1615_ON_TOP_OF_ATMOS + SBTA1615 + top_of_atmos + 4.0 + - 768 - GSD_ECHOTOP_ON_CLOUD_TOP - Echo top height (Highest height in meters of the 18-dBZ reflectivity on a model level) - RETOP - cloud_top - 3.0 + 936 + SBTA1616_ON_TOP_OF_ATMOS + SBTA1616 + top_of_atmos + 4.0 - 769 - GSD_VIL_ON_ENTIRE_ATMOS - VIL - entire_atmos + 937 + SBTA177_ON_TOP_OF_ATMOS + SBTA177 + top_of_atmos 4.0 - 770 - GSD_RADARVIL_ON_ENTIRE_ATMOS - VIL - entire_atmos - 3.0 + 938 + SBTA178_ON_TOP_OF_ATMOS + SBTA178 + top_of_atmos + 4.0 - 785 - MAX_REF_ON_ISOTHERMAL_-10C - maximum reflectivity on -10C suface - tmpl4_8 - REFD - MAX - isothermal - 263. - -3.0 + 939 + SBTA179_ON_TOP_OF_ATMOS + SBTA179 + top_of_atmos + 4.0 - 786 - GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km - tmpl4_8 - MNUPHL - MIN - spec_hgt_lvl_above_grnd - 5000. - spec_hgt_lvl_above_grnd - 2000. - -3.0 + 940 + SBTA1710_ON_TOP_OF_ATMOS + SBTA1710 + top_of_atmos + 4.0 - 790 - GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km - tmpl4_8 - MXUPHL - MAX - spec_hgt_lvl_above_grnd - 3000. - spec_hgt_lvl_above_grnd - 0000. - 3.0 + 941 + SBTA1711_ON_TOP_OF_ATMOS + SBTA1711 + top_of_atmos + 4.0 - 791 - GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km - tmpl4_8 - MNUPHL - MIN - spec_hgt_lvl_above_grnd - 3000. - spec_hgt_lvl_above_grnd - 0000. - -3.0 + 942 + SBTA1712_ON_TOP_OF_ATMOS + SBTA1712 + top_of_atmos + 4.0 - 792 - GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km - tmpl4_8 - RELV - MAX - spec_hgt_lvl_above_grnd - 2000. - spec_hgt_lvl_above_grnd - 0000. - 5.0 + 943 + SBTA1713_ON_TOP_OF_ATMOS + SBTA1713 + top_of_atmos + 4.0 - 793 - GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km - tmpl4_8 - RELV - MAX - spec_hgt_lvl_above_grnd - 1000. - spec_hgt_lvl_above_grnd - 0000. - 5.0 + 944 + SBTA1714_ON_TOP_OF_ATMOS + SBTA1714 + top_of_atmos + 4.0 + - 890 - GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 - Hourly max relative vorticity on hybrid level 1 - tmpl4_8 - RELV - MAX - hybrid_lvl - 1. - 5.0 + 945 + SBTA1715_ON_TOP_OF_ATMOS + SBTA1715 + top_of_atmos + 4.0 - 808 - APTMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - APTMP - spec_hgt_lvl_above_grnd - 2. + 946 + SBTA1716_ON_TOP_OF_ATMOS + SBTA1716 + top_of_atmos 4.0 - 912 - REFD_ON_ISOTHERMAL - REFD - isothermal - 263. - -4.0 + 950 + CAPE_ON_0_3KM_ABOVE_GRND + CAPE + spec_hgt_lvl_above_grnd + 0. + spec_hgt_lvl_above_grnd + 3000. + 4.0 - 913 - 1H_FFG_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 951 + CIN_ON_0_3KM_ABOVE_GRND + CIN + spec_hgt_lvl_above_grnd + 0. + spec_hgt_lvl_above_grnd + 3000. 4.0 - 914 - ACM_FFG_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 + 952 + HGT_ON_LFC + HGT + level_free_convection + 6.0 - 915 - 1H_2YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM + 953 + EFF_HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND + EFHL + NCEP surface 4.0 - 916 - ACM_2YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 954 + DOWNWARD_CAPE + DCAPE + NCEP + spec_pres_above_grnd + 40000. + spec_pres_above_grnd + 0. 4.0 - 917 - 1H_5YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 955 + DENDRITIC_LAYER_DEPTH + LAYTH + NCEP + isothermal + 261. + isothermal + 256. 4.0 - 918 - ACM_5YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 956 + ENHANCED_STRETCHING_POTENTIAL + ESP + NCEP + spec_hgt_lvl_above_grnd + 0. + spec_hgt_lvl_above_grnd + 3000. 4.0 - 919 - 1H_10YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 957 + CRITICAL_ANGLE + DCAPE + NCEP + spec_hgt_lvl_above_grnd + 0. + spec_hgt_lvl_above_grnd + 500. 4.0 + - 920 - ACM_10YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 958 + SBTAGR7_ON_TOP_OF_ATMOS + SBTAGR7 + top_of_atmos 4.0 - 921 - 1H_100YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 959 + SBTAGR8_ON_TOP_OF_ATMOS + SBTAGR8 + top_of_atmos 4.0 - 922 - ACM_100YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface + 960 + SBTAGR9_ON_TOP_OF_ATMOS + SBTAGR9 + top_of_atmos 4.0 - 927 - SBTA167_ON_TOP_OF_ATMOS - SBTA167 + 961 + SBTAGR10_ON_TOP_OF_ATMOS + SBTAGR10 top_of_atmos 4.0 - 928 - SBTA168_ON_TOP_OF_ATMOS - SBTA168 + 962 + SBTAGR11_ON_TOP_OF_ATMOS + SBTAGR11 top_of_atmos 4.0 - 929 - SBTA169_ON_TOP_OF_ATMOS - SBTA169 + 963 + SBTAGR12_ON_TOP_OF_ATMOS + SBTAGR12 top_of_atmos 4.0 - 930 - SBTA1610_ON_TOP_OF_ATMOS - SBTA1610 + 964 + SBTAGR13_ON_TOP_OF_ATMOS + SBTAGR13 top_of_atmos 4.0 - 931 - SBTA1611_ON_TOP_OF_ATMOS - SBTA1611 + 965 + SBTAGR14_ON_TOP_OF_ATMOS + SBTAGR14 top_of_atmos 4.0 - 932 - SBTA1612_ON_TOP_OF_ATMOS - SBTA1612 + 966 + SBTAGR15_ON_TOP_OF_ATMOS + SBTAGR15 top_of_atmos 4.0 - 933 - SBTA1613_ON_TOP_OF_ATMOS - SBTA1613 + 967 + SBTAGR16_ON_TOP_OF_ATMOS + SBTAGR16 top_of_atmos 4.0 - 934 - SBTA1614_ON_TOP_OF_ATMOS - SBTA1614 - top_of_atmos - 4.0 + 968 + ICETMP_ON_SURFACE + ICETMP + surface + 5.0 - 935 - SBTA1615_ON_TOP_OF_ATMOS - SBTA1615 + 969 + SBTAHI7_ON_TOP_OF_ATMOS + SBTAHI7 top_of_atmos 4.0 - 936 - SBTA1616_ON_TOP_OF_ATMOS - SBTA1616 + 970 + SBTAHI8_ON_TOP_OF_ATMOS + SBTAHI8 top_of_atmos 4.0 - 937 - SBTA177_ON_TOP_OF_ATMOS - SBTA177 + 971 + SBTAHI9_ON_TOP_OF_ATMOS + SBTAHI9 top_of_atmos 4.0 - 938 - SBTA178_ON_TOP_OF_ATMOS - SBTA178 + 972 + SBTAHI10_ON_TOP_OF_ATMOS + SBTAHI10 top_of_atmos 4.0 - 939 - SBTA179_ON_TOP_OF_ATMOS - SBTA179 + 973 + SBTAHI11_ON_TOP_OF_ATMOS + SBTAHI11 top_of_atmos 4.0 - 940 - SBTA1710_ON_TOP_OF_ATMOS - SBTA1710 + 974 + SBTAHI12_ON_TOP_OF_ATMOS + SBTAHI12 top_of_atmos 4.0 - 941 - SBTA1711_ON_TOP_OF_ATMOS - SBTA1711 + 975 + SBTAHI13_ON_TOP_OF_ATMOS + SBTAHI13 top_of_atmos 4.0 - 942 - SBTA1712_ON_TOP_OF_ATMOS - SBTA1712 + 976 + SBTAHI14_ON_TOP_OF_ATMOS + SBTAHI14 top_of_atmos 4.0 - 943 - SBTA1713_ON_TOP_OF_ATMOS - SBTA1713 + 977 + SBTAHI15_ON_TOP_OF_ATMOS + SBTAHI15 top_of_atmos 4.0 - 944 - SBTA1714_ON_TOP_OF_ATMOS - SBTA1714 + 978 + SBTAHI16_ON_TOP_OF_ATMOS + SBTAHI16 top_of_atmos 4.0 - 945 - SBTA1715_ON_TOP_OF_ATMOS - SBTA1715 - top_of_atmos + 979 + EFSH_ON_LFC + EFSH + NCEP + level_free_convection 4.0 - 946 - SBTA1716_ON_TOP_OF_ATMOS - SBTA1716 - top_of_atmos + 980 + EFSH_ON_EQUIL_LVL + EFSH + NCEP + equil_lvl 4.0 + + 982 + ELMELT_ON_EQUIL_LVL + ELMELT + NCEP + equil_lvl + 6.0 + + + + 983 + UESH_ON_LFC + UESH + NCEP + level_free_convection + 6.0 + + + + 984 + VESH_ON_LFC + VESH + NCEP + level_free_convection + 6.0 + + + + 985 + ESHR_ON_LFC + ESHR + NCEP + level_free_convection + 6.0 + + + + 986 + UEID_ON_LFC + UEID + level_free_convection + 6.0 + + + + 987 + VEID_ON_LFC + VEID + level_free_convection + 6.0 + + + + 988 + E3KH_ON_LFC + E3KH + level_free_convection + 6.0 + + + + 989 + STPC_ON_LFC + STPC + level_free_convection + 6.0 + + + + 990 + SIGT_ON_LFC + SIGT + level_free_convection + 6.0 + + + + 991 + SCCP_ON_LFC + SCCP + level_free_convection + 6.0 + + + + 992 + MLFC_ON_LFC + MLFC + level_free_convection + 6.0 + + + + 993 + SIGH_ON_LFC + SIGH + level_free_convection + 6.0 + + + + 994 + OZCON_ON_HYBRID_LVL + OZCON + hybrid_lvl + 7.0 + + + + 995 + PM25TOT_ON_HYBRID_LVL + PMTF + hybrid_lvl + 7.0 + + + + 996 + LAND_FRAC + LANDFRC + NCEP + surface + 3.0 + + + + 997 + INST_PREC_ADVEC_HEAT + PAHFLX + NCEP + surface + 3.0 + + + + 998 + WATER_AQUIFER + WATERSA + NCEP + surface + 3.0 + + + + 999 + ACM_EIWATER_ON_SURFACE + tmpl4_8 + EIWATER + NCEP + ACM + surface + 3.0 + + + + 1000 + ACM_PLANTTR_ON_SURFACE + tmpl4_8 + PLANTTR + NCEP + ACM + surface + 3.0 + + + + 1001 + ACM_SOILSE_ON_SURFACE + tmpl4_8 + SOILSE + NCEP + ACM + surface + 3.0 + + + 1002 + AVE_PREC_ADVEC_HEAT + tmpl4_8 + PAHFLX + NCEP + AVE + surface + 3.0 + - diff --git a/parm/fv3lam_rrfs.xml b/parm/fv3lam_rrfs.xml index c14be3a59..c68739453 100755 --- a/parm/fv3lam_rrfs.xml +++ b/parm/fv3lam_rrfs.xml @@ -388,7 +388,9 @@ TSOIL_ON_DEPTH_BEL_LAND_SFC TSOIL + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. 4.0 @@ -396,7 +398,9 @@ SOILW_ON_DEPTH_BEL_LAND_SFC SOILW + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. 3.0 @@ -1646,14 +1650,14 @@ - MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + MAX_MAXUVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa MAXUVV NCEP -3.0 - MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + MAX_MAXDVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa MAXDVV NCEP -3.0 @@ -2055,14 +2059,14 @@ - MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + MAX_MAXUVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa MAXUVV NCEP -3.0 - MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + MAX_MAXDVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa MAXDVV NCEP -3.0 @@ -2178,7 +2182,9 @@ TSOIL_ON_DEPTH_BEL_LAND_SFC TSOIL + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. 4.0 @@ -2186,7 +2192,9 @@ SOILW_ON_DEPTH_BEL_LAND_SFC SOILW + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. + 2 0. 1. 4. 10. 30. 60. 100. 160. 300. 3.0 diff --git a/parm/post_avblflds.xml b/parm/post_avblflds.xml index dd5126d18..58d01429b 100755 --- a/parm/post_avblflds.xml +++ b/parm/post_avblflds.xml @@ -4282,9 +4282,9 @@ 487 - GSD_PRES_ON_CLOUD_BASE - PRES - cloud_base + GSD_EXP_CEILING + CEIL + ceiling 3.0 @@ -6502,10 +6502,10 @@ 711 - GSD1_HGT_ON_CLOUD_BASE - HGT + GSD_EXP_CEILING_2 + CEIL cloud_base - 6.0 + 3.0 @@ -7207,6 +7207,106 @@ -4.0 + + 913 + 1H_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 914 + ACM_FFG_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 915 + 1H_2YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 916 + ACM_2YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 917 + 1H_5YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 918 + ACM_5YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 919 + 1H_10YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 920 + ACM_10YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 921 + 1H_100YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + + + 922 + ACM_100YARI_EXCEEDANCE + tmpl4_8 + FFLDRO + ACM + surface + 4.0 + + 927 SBTA167_ON_TOP_OF_ATMOS From 466a63b7e58468a7daefbf6a64b8e6a7ae9a21d3 Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 23 Nov 2021 17:37:33 +0000 Subject: [PATCH 39/46] Updating postconfig-NT.txt file for GSL RRFS based on merged post_avblflds.xml file. --- parm/postxconfig-NT-fv3lam_rrfs.txt | 73 ++++++++++++++++++++++------- 1 file changed, 55 insertions(+), 18 deletions(-) diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index be572085a..afdc408ed 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -1,6 +1,6 @@ 2 220 -253 +254 BGDAWP 32769 ncep_nco @@ -7863,7 +7863,7 @@ hghst_top_lvl_of_supercooled_liq_water_lyr ? 408 GSD_HGT_ON_CLOUD_CEILING -GSD_geopotential height on cloud base +GSD_geopotential height on cloud ceiling 1 tmpl4_0 HGT @@ -8787,19 +8787,19 @@ spec_hgt_lvl_above_grnd ? ? 423 -MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa -hourly maximum Upward Vertical Velocity between 10-100hpa +MAX_MAXUVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa +hourly maximum Upward Vertical Velocity between 100-1000hpa 1 tmpl4_8 MAXUVV NCEP MAX -isobaric_sfc +spec_pres_above_grnd 0 ? 1 10000. -isobaric_sfc +spec_pres_above_grnd 0 ? 1 @@ -8824,19 +8824,19 @@ isobaric_sfc ? ? 424 -MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa -hourly maximum Downward Vertical Velocity between 10-100hpa +MAX_MAXDVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa +hourly maximum Downward Vertical Velocity between 100-1000hpa 1 tmpl4_8 MAXDVV NCEP MAX -isobaric_sfc +spec_pres_above_grnd 0 ? 1 10000. -isobaric_sfc +spec_pres_above_grnd 0 ? 1 @@ -8860,6 +8860,43 @@ isobaric_sfc ? ? ? +508 +MAX_PRATE_ON_SURFACE +Maximum Precipitation Rate on surface +1 +tmpl4_8 +PRATE +? +MAX +surface +0 +? +0 +? +? +0 +? +0 +? +? +? +0 +0.0 +0 +0.0 +? +0 +0.0 +0 +0.0 +1 +4.0 +0 +0 +0 +? +? +? 444 LTNG_ON_SURFACE lightning @@ -10579,19 +10616,19 @@ surface ? ? 423 -MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa -hourly maximum Upward Vertical Velocity between 10-100hpa +MAX_MAXUVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa +hourly maximum Upward Vertical Velocity between 100-1000hpa 1 tmpl4_8 MAXUVV NCEP MAX -isobaric_sfc +spec_pres_above_grnd 0 ? 1 10000. -isobaric_sfc +spec_pres_above_grnd 0 ? 1 @@ -10616,19 +10653,19 @@ isobaric_sfc ? ? 424 -MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa -hourly maximum Downward Vertical Velocity between 10-100hpa +MAX_MAXDVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa +hourly maximum Downward Vertical Velocity between 100-1000hpa 1 tmpl4_8 MAXDVV NCEP MAX -isobaric_sfc +spec_pres_above_grnd 0 ? 1 10000. -isobaric_sfc +spec_pres_above_grnd 0 ? 1 From e33d8ca094fe5f4dab6ab0d3e835ba8fbaec680f Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 23 Nov 2021 18:29:31 +0000 Subject: [PATCH 40/46] Adding RRFS control files to makefile. --- parm/makefile | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/parm/makefile b/parm/makefile index d06ab47ea..cb6d46d51 100644 --- a/parm/makefile +++ b/parm/makefile @@ -25,6 +25,7 @@ GFSTWOFLATFILENAME = postxconfig-NT-GFS-TWO.txt GFSTWOF00FLATFILENAME = postxconfig-NT-GFS-F00-TWO.txt HRRRFLATFILENAME = postxconfig-NT-hrrr.txt RAPFLATFILENAME = postxconfig-NT-rap.txt +RRFSFLATFILENAME = postxconfig-NT-fv3lam_rrfs.txt RTMA3DFLATFILENAME = postxconfig-NT-3drtma.txt # Source Post XML file @@ -52,6 +53,8 @@ HRRRAVAILXMLFILENAME = post_avblflds_raphrrr.xml RAPAVAILXMLFILENAME = post_avblflds_raphrrr.xml HRRRCTRLFILENAME = hrrr_postcntrl.xml RAPCTRLFILENAME = rap_postcntrl.xml +RRFSAVAILXMLFILENAME = post_avblflds.xml +RRFSCTRLFILENAME = fv3lam_rrfs.xml RTMA3DCTRLFILENAME = 3drtma_postcntrl.xml RTMA3DAVAILXMLFILENAME = post_avblflds.xml @@ -77,6 +80,7 @@ PERLXMLGFSTWO = /usr/bin/perl $(PERLXML) $(GFSTWOCTRLFILENAME) $(GFSAV PERLXMLGFSTWOF00 = /usr/bin/perl $(PERLXML) $(GFSTWOF00CTRLFILENAME) $(GFSAVAILXMLFILENAME) $(GFSTWOF00FLATFILENAME) PERLXMLHRRR = /usr/bin/perl $(PERLXML) $(HRRRCTRLFILENAME) $(HRRRAVAILXMLFILENAME) $(HRRRFLATFILENAME) PERLXMLRAP = /usr/bin/perl $(PERLXML) $(RAPCTRLFILENAME) $(RAPAVAILXMLFILENAME) $(RAPFLATFILENAME) +PERLXMLRRFS = /usr/bin/perl $(PERLXML) $(RRFSCTRLFILENAME) $(RRFSAVAILXMLFILENAME) $(RRFSFLATFILENAME) PERLXML3DRTMA = /usr/bin/perl $(PERLXML) $(RTMA3DCTRLFILENAME) $(RTMA3DAVAILXMLFILENAME) $(RTMA3DFLATFILENAME) # File to look for change @@ -98,10 +102,11 @@ GFSTWOXMLS = $(GFSAVAILXMLFILENAME) $(GFSTWOCTRLFILENAME) GFSTWOF00XMLS = $(GFSAVAILXMLFILENAME) $(GFSTWOF00CTRLFILENAME) HRRRXMLS = $(HRRRAVAILXMLFILENAME) $(HRRRCTRLFILENAME) RAPXMLS = $(RAPAVAILXMLFILENAME) $(RAPCTRLFILENAME) +RRFSXMLS = $(RRFSAVAILXMLFILENAME) $(RRFSCTRLFILENAME) RTMA3DXMLS = $(RTMA3DAVAILXMLFILENAME) $(RTMA3DCTRLFILENAME) # If action is triggered; run the following -all: $(GFSFLATFILENAME) $(GFSGOESFLATFILENAME) $(GFSANLFLATFILENAME) $(GFSF00FLATFILENAME) $(GFSFLUXFLATFILENAME) $(GFSFLUXF00FLATFILENAME) $(NMMFLATFILENAME) $(NGACFLATFILENAME) $(GEFSFLATFILENAME) $(GEFSANLFLATFILENAME) $(GEFSF00FLATFILENAME) $(FV3LAMFLATFILENAME) $(HAFSFLATFILENAME) $(GFSTWOFLATFILENAME) $(GFSTWOF00FLATFILENAME) $(HRRRFLATFILENAME) $(RAPFLATFILENAME) $(RTMA3DFLATFILENAME) +all: $(GFSFLATFILENAME) $(GFSGOESFLATFILENAME) $(GFSANLFLATFILENAME) $(GFSF00FLATFILENAME) $(GFSFLUXFLATFILENAME) $(GFSFLUXF00FLATFILENAME) $(NMMFLATFILENAME) $(NGACFLATFILENAME) $(GEFSFLATFILENAME) $(GEFSANLFLATFILENAME) $(GEFSF00FLATFILENAME) $(FV3LAMFLATFILENAME) $(HAFSFLATFILENAME) $(GFSTWOFLATFILENAME) $(GFSTWOF00FLATFILENAME) $(HRRRFLATFILENAME) $(RAPFLATFILENAME) $(RRFSFLATFILENAME) $(RTMA3DFLATFILENAME) $(GFSFLATFILENAME): $(GFSXMLS) $(PERLXMLGFS) $(GFSGOESFLATFILENAME): $(GFSGOESXMLS) @@ -136,6 +141,8 @@ $(HRRRFLATFILENAME): $(HRRRXMLS) $(PERLXMLHRRR) $(RAPFLATFILENAME): $(RAPXMLS) $(PERLXMLRAP) +$(RRFSFLATFILENAME): $(RRFSXMLS) + $(PERLXMLRRFS) $(RTMA3DFLATFILENAME): $(RTMA3DXMLS) $(PERLXML3DRTMA) From c1a7f8ea97a1397cdaf0cf7ecfa8021691bd4e14 Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 29 Nov 2021 16:27:31 +0000 Subject: [PATCH 41/46] Changing back scale for WEASD_ON_SURFACE to previous default, thanks to suggestion from Wen Meng. --- parm/fv3lam_post_avblflds.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index 9c569d24b..4c326b932 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -1061,7 +1061,7 @@ WEASD_ON_SURFACE WEASD surface - 3.0 + 4.0 From 789f217888d11171e84631662636ba80ae951e56 Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 29 Nov 2021 23:22:51 +0000 Subject: [PATCH 42/46] Reverting name of cldfra based on feedback from Eric Aligo. --- sorc/ncep_post.fd/INITPOST_NETCDF.f | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ncep_post.fd/INITPOST_NETCDF.f b/sorc/ncep_post.fd/INITPOST_NETCDF.f index 031edaaf3..a95b16a4d 100644 --- a/sorc/ncep_post.fd/INITPOST_NETCDF.f +++ b/sorc/ncep_post.fd/INITPOST_NETCDF.f @@ -1835,7 +1835,7 @@ SUBROUTINE INITPOST_NETCDF(ncid2d,ncid3d) ! instantaneous 3D cloud fraction - VarName='cldfra_bl' + VarName='cldfra' ! do l=1,lm call read_netcdf_3d_scatter(me,ncid2d,1,im,jm,jsta,jsta_2l & ,jend_2u,MPI_COMM_COMP,icnt,idsp,spval,VarName & From 0612de688a14039f9e381aaf9fed2f2d98f7d7c6 Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 6 Dec 2021 19:30:50 +0000 Subject: [PATCH 43/46] Reverting changes in fv3lam_post_avblflds.xml since GSL new variables are now included in post_avblflds.xml --- parm/fv3lam_post_avblflds.xml | 3325 ++++++--------------------------- sorc/ncep_post.fd/WRFPOST.f | 3 + 2 files changed, 542 insertions(+), 2786 deletions(-) diff --git a/parm/fv3lam_post_avblflds.xml b/parm/fv3lam_post_avblflds.xml index 4c326b932..4f9b7b4ab 100644 --- a/parm/fv3lam_post_avblflds.xml +++ b/parm/fv3lam_post_avblflds.xml @@ -1,8 +1,8 @@ - + - + 1 PRES_ON_HYBRID_LVL @@ -267,27 +267,27 @@ 33 ACM_ACPCP_ON_SURFACE - tmpl4_8 + tmpl4_8 ACPCP ACM surface - -4.0 + 4.0 34 ACM_NCPCP_ON_SURFACE - tmpl4_8 + tmpl4_8 NCPCP ACM surface - -4.0 + 4.0 35 ACM_WEASD_ON_SURFACE - tmpl4_8 + tmpl4_8 WEASD ACM surface @@ -295,12 +295,14 @@ - 36 - SOILM_ON_DEPTH_BEL_LAND_SFC - SOILM - depth_bel_land_sfc - depth_bel_land_sfc - 3.0 + 36 + SOILM_ON_DEPTH_BEL_LAND_SFC + SOILM + depth_bel_land_sfc + 2 + depth_bel_land_sfc + 2 + 3.0 @@ -346,7 +348,7 @@ 42 AVE_LHTFL_ON_SURFACE - tmpl4_8 + tmpl4_8 LHTFL AVE surface @@ -356,7 +358,7 @@ 43 AVE_SHTFL_ON_SURFACE - tmpl4_8 + tmpl4_8 SHTFL AVE surface @@ -382,7 +384,7 @@ 46 AVE_MFLX_ON_SURFACE - tmpl4_8 + tmpl4_8 MFLX AVE surface @@ -392,7 +394,7 @@ 47 ACM_EVP_ON_SURFACE - tmpl4_8 + tmpl4_8 EVP ACM surface @@ -658,7 +660,7 @@ 78 AVE_LRGHR_ON_HYBRID_LVL - tmpl4_8 + tmpl4_8 LRGHR AVE hybrid_lvl @@ -668,7 +670,7 @@ 79 AVE_CNVHR_ON_HYBRID_LVL - tmpl4_8 + tmpl4_8 CNVHR AVE hybrid_lvl @@ -744,11 +746,11 @@ 87 ACM_APCP_ON_SURFACE - tmpl4_8 + tmpl4_8 APCP ACM surface - -4.0 + 4.0 @@ -1034,7 +1036,9 @@ TSOIL_ON_DEPTH_BEL_LAND_SFC TSOIL depth_bel_land_sfc + 2 depth_bel_land_sfc + 2 4.0 @@ -1042,9 +1046,11 @@ 117 SOILW_ON_DEPTH_BEL_LAND_SFC SOILW - NCEP + NCEP depth_bel_land_sfc + 2 depth_bel_land_sfc + 2 3.0 @@ -1077,7 +1083,7 @@ ACM_SNOM_ON_SURFACE tmpl4_8 SNOM - ACM + ACM surface 4.0 @@ -1087,7 +1093,7 @@ ACM_SSRUN_ON_SURFACE tmpl4_8 SSRUN - ACM + ACM surface 4.0 @@ -1097,15 +1103,15 @@ ACM_BGRUN_ON_SURFACE tmpl4_8 BGRUN - ACM + ACM surface 4.0 124 - CLMR_ON_HYBRID_LVL - CLMR + CLWMR_ON_HYBRID_LVL + CLWMR hybrid_lvl 3.0 @@ -1123,7 +1129,7 @@ AVE_DSWRF_ON_SURFACE tmpl4_8 DSWRF - AVE + AVE surface 3.0 @@ -1133,7 +1139,7 @@ AVE_DLWRF_ON_SURFACE tmpl4_8 DLWRF - AVE + AVE surface 3.0 @@ -1143,7 +1149,7 @@ AVE_USWRF_ON_SURFACE tmpl4_8 USWRF - AVE + AVE surface 3.0 @@ -1153,7 +1159,7 @@ AVE_ULWRF_ON_SURFACE tmpl4_8 ULWRF - AVE + AVE surface 3.0 @@ -1163,7 +1169,7 @@ AVE_USWRF_ON_TOP_OF_ATMOS tmpl4_8 USWRF - AVE + AVE top_of_atmos 3.0 @@ -1173,7 +1179,7 @@ AVE_ULWRF_ON_TOP_OF_ATMOS tmpl4_8 ULWRF - AVE + AVE top_of_atmos 3.0 @@ -1207,7 +1213,7 @@ AVE_GFLUX_ON_SURFACE tmpl4_8 GFLUX - AVE + AVE surface 4.0 @@ -1217,7 +1223,7 @@ AVE_SNOHF_ON_SURFACE tmpl4_8 SNOHF - AVE + AVE surface 4.0 @@ -1227,7 +1233,7 @@ ACM_PEVAP_ON_SURFACE tmpl4_8 PEVAP - ACM + ACM surface 4.0 @@ -1246,7 +1252,7 @@ AVE_CDLYR_ON_ENTIRE_ATMOS tmpl4_8 CDLYR - AVE + AVE entire_atmos_single_lyr 3.0 @@ -1280,7 +1286,7 @@ AVE_CDCON_ON_ENTIRE_ATMOS tmpl4_8 CDCON - AVE + AVE entire_atmos_single_lyr 3.0 @@ -1290,7 +1296,7 @@ AVE_TCDC_ON_ENTIRE_ATMOS tmpl4_8 TCDC - AVE + AVE entire_atmos_single_lyr 3.0 @@ -1361,8 +1367,8 @@ 153 - CLMR_ON_ISOBARIC_SFC - CLMR + CLWMR_ON_ISOBARIC_SFC + CLWMR isobaric_sfc 4.0 @@ -1711,9 +1717,9 @@ 196 - CDCON_ON_CONVECTIVE_CLOUD_LYR + CDCON_ON_ENTIRE_ATMOS CDCON - convective_cloud_lyr + entire_atmos_single_lyr 2.0 @@ -1746,7 +1752,7 @@ TCOLW_ON_ENTIRE_ATMOS TCOLW entire_atmos_single_lyr - 3.0 + 5.0 @@ -1831,8 +1837,8 @@ 211 - CLMR_ON_SIGMA_LVLS - CLMR + CLWMR_ON_SIGMA_LVLS + CLWMR sigma_lvl 4.0 @@ -1922,6 +1928,7 @@ TCDC_ON_SIGMA_LVLS TCDC sigma_lvl + 2 3.0 @@ -1938,7 +1945,7 @@ SNOD_ON_SURFACE SNOD surface - 3.0 + 6.0 @@ -2179,9 +2186,9 @@ 256 ACM_LSPA_ON_SURFACE - tmpl4_8 + tmpl4_8 LSPA - ACM + ACM surface 3.0 @@ -2263,7 +2270,7 @@ AVE_ALBDO_ON_SURFACE tmpl4_8 ALBDO - AVE + AVE surface 4.0 @@ -2289,7 +2296,7 @@ AVE_UFLX_ON_SURFACE tmpl4_8 UFLX - AVE + AVE surface 4.0 @@ -2299,7 +2306,7 @@ AVE_VFLX_ON_SURFACE tmpl4_8 VFLX - AVE + AVE surface 4.0 @@ -2309,7 +2316,7 @@ AVE_PRATE_ON_SURFACE tmpl4_8 PRATE - AVE + AVE surface 4.0 @@ -2319,7 +2326,7 @@ AVE_CPRAT_ON_SURFACE tmpl4_8 CPRAT - AVE + AVE surface 4.0 @@ -2484,7 +2491,7 @@ AVE_LRGHR_ON_ENTIRE_ATMOS tmpl4_8 LRGHR - AVE + AVE entire_atmos_single_lyr 5.0 @@ -2494,7 +2501,7 @@ AVE_CNVHR_ON_ENTIRE_ATMOS tmpl4_8 CNVHR - AVE + AVE entire_atmos_single_lyr 5.0 @@ -2520,6 +2527,7 @@ TMP_ON_SIGMA_LVL_HPC TMP sigma_lvl + 2 -4.0 @@ -2528,7 +2536,7 @@ AVE_CDUVB_ON_SURFACE tmpl4_8 CDUVB - AVE + AVE surface 3.0 @@ -2538,7 +2546,7 @@ AVE_DUVB_ON_SURFACE tmpl4_8 DUVB - AVE + AVE surface 3.0 @@ -2554,9 +2562,9 @@ 300 AVE_TCDC_ON_LOW_CLOUD_LYR - tmpl4_8 - LCDC - AVE + tmpl4_8 + TCDC + AVE low_cloud_lyr 3.0 @@ -2564,8 +2572,8 @@ 301 AVE_TCDC_ON_MID_CLOUD_LYR - tmpl4_8 - MCDC + tmpl4_8 + TCDC AVE mid_cloud_lyr 3.0 @@ -2574,8 +2582,8 @@ 302 AVE_TCDC_ON_HIGH_CLOUD_LYR - tmpl4_8 - HCDC + tmpl4_8 + TCDC AVE high_cloud_lyr 3.0 @@ -2584,7 +2592,7 @@ 303 AVE_PRES_ON_LOW_CLOUD_BOT_LVL - tmpl4_8 + tmpl4_8 PRES AVE low_cloud_bot_lvl @@ -2594,7 +2602,7 @@ 304 AVE_PRES_ON_LOW_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 PRES AVE low_cloud_top_lvl @@ -2604,7 +2612,7 @@ 305 AVE_TMP_ON_LOW_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 TMP AVE low_cloud_top_lvl @@ -2614,7 +2622,7 @@ 306 AVE_PRES_ON_MID_CLOUD_BOT_LVL - tmpl4_8 + tmpl4_8 PRES AVE mid_cloud_bot_lvl @@ -2624,7 +2632,7 @@ 307 AVE_PRES_ON_MID_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 PRES AVE mid_cloud_top_lvl @@ -2634,7 +2642,7 @@ 308 AVE_TMP_ON_MID_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 TMP AVE mid_cloud_top_lvl @@ -2644,7 +2652,7 @@ 309 AVE_PRES_ON_HIGH_CLOUD_BOT_LVL - tmpl4_8 + tmpl4_8 PRES AVE high_cloud_bot_lvl @@ -2654,7 +2662,7 @@ 310 AVE_PRES_ON_HIGH_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 PRES AVE high_cloud_top_lvl @@ -2664,7 +2672,7 @@ 311 AVE_TMP_ON_HIGH_CLOUD_TOP_LVL - tmpl4_8 + tmpl4_8 TMP AVE high_cloud_top_lvl @@ -2682,7 +2690,7 @@ 313 AVE_CWORK_ON_ENTIRE_ATMOS_SINGLE_LYR - tmpl4_8 + tmpl4_8 CWORK AVE entire_atmos_single_lyr @@ -2700,7 +2708,7 @@ 315 AVE_U-GWD_ON_SURFACE - tmpl4_8 + tmpl4_8 U-GWD AVE surface @@ -2710,7 +2718,7 @@ 316 AVE_V-GWD_ON_SURFACE - tmpl4_8 + tmpl4_8 V-GWD AVE surface @@ -2720,7 +2728,7 @@ 317 AVE_CRAIN_ON_SURFACE - tmpl4_8 + tmpl4_8 CRAIN AVE surface @@ -2951,7 +2959,7 @@ AVE_TCDC_ON_BOUND_LYR_CLOUD_LYR tmpl4_8 TCDC - AVE + AVE bound_lyr_cloud_lyr 3.0 @@ -2961,7 +2969,7 @@ ACM_WATR_ON_SURFACE tmpl4_8 WATR - ACM + ACM surface 6.0 @@ -2977,7 +2985,7 @@ 345 MAX_TMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 TMAX MAX spec_hgt_lvl_above_grnd @@ -2988,7 +2996,7 @@ 346 MIN_TMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 TMIN MIN spec_hgt_lvl_above_grnd @@ -2999,7 +3007,7 @@ 347 MAX_MAXRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 MAXRH MAX spec_hgt_lvl_above_grnd @@ -3010,8 +3018,9 @@ 348 MIN_MINRH_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 + tmpl4_8 MINRH + NCEP MIN spec_hgt_lvl_above_grnd 2. @@ -3294,7 +3303,7 @@ AVE_CSDLF_ON_SURFACE tmpl4_8 CSDLF - AVE + AVE surface 3.0 @@ -3304,7 +3313,7 @@ AVE_CSDSF_ON_SURFACE tmpl4_8 CSDSF - AVE + AVE surface 3.0 @@ -3314,7 +3323,7 @@ AVE_CSULF_ON_SURFACE tmpl4_8 CSULF - AVE + AVE surface 3.0 @@ -3324,7 +3333,7 @@ AVE_CSULF_ON_TOP_OF_ATMOS tmpl4_8 CSULF - AVE + AVE top_of_atmos 3.0 @@ -3334,7 +3343,7 @@ AVE_CSUSF_ON_SURFACE tmpl4_8 CSUSF - AVE + AVE surface 3.0 @@ -3344,7 +3353,7 @@ AVE_CSUSF_ON_TOP_OF_ATMOS tmpl4_8 CSUSF - AVE + AVE top_of_atmos 3.0 @@ -3354,7 +3363,7 @@ AVE_DSWRF_ON_TOP_OF_ATMOS tmpl4_8 DSWRF - AVE + AVE top_of_atmos 4.0 @@ -3456,7 +3465,7 @@ RETOP_ON_ENTIRE_ATMOS_SINGLE_LYR RETOP entire_atmos_single_lyr - -6.0 + 6.0 @@ -3467,7 +3476,7 @@ averaged surface visible beam downward solar flux tmpl4_8 VBDSF - AVE + AVE surface 3.0 @@ -3478,7 +3487,7 @@ averaged surface visible diffuse downward solar flux tmpl4_8 VDDSF - AVE + AVE surface 3.0 @@ -3489,7 +3498,7 @@ averaged surface near IR beam downward solar flux tmpl4_8 NBDSF - AVE + AVE surface 3.0 @@ -3500,7 +3509,7 @@ averaged surface near IR beam downward solar flux tmpl4_8 NDDSF - AVE + AVE surface 3.0 @@ -3511,7 +3520,7 @@ averaged snow rate on surface tmpl4_8 SRWEQ - AVE + AVE surface 3.0 @@ -3536,10 +3545,10 @@ 408 - GSD_HGT_ON_CLOUD_CEILING - GSD_geopotential height on cloud ceiling + GSD_HGT_ON_CLOUD_BASE + GSD_geopotential height on cloud base HGT - cloud_ceilng + cloud_base 6.0 @@ -3554,10 +3563,10 @@ 410 - GSD_VIS_ON_SURFACE - GSD_visibility on surface + GSD_VIS_ON_CLOUD_TOP + GSD_visibility on cloud top VIS - surface + cloud_top 6.0 @@ -3577,6 +3586,7 @@ U-Component of Wind on Specified Height Level Above Ground UGRD spec_hgt_lvl_above_grnd + 80. -4.0 @@ -3586,6 +3596,7 @@ V-Component of Wind on Specified Height Level Above Ground VGRD spec_hgt_lvl_above_grnd + 80. -4.0 @@ -3644,7 +3655,7 @@ maximum Updraft Helicity on Specified Height Level Above Ground tmpl4_8 MXUPHL - MAX + MAX spec_hgt_lvl_above_grnd 5000. spec_hgt_lvl_above_grnd @@ -3658,7 +3669,7 @@ maximum Updraft Helicity on Specified Height Level Above Ground tmpl4_8 MAXREF - MAX + MAX spec_hgt_lvl_above_grnd 1000. -3.0 @@ -3670,7 +3681,7 @@ maximum wind speed on 10 meter Above Ground tmpl4_8 WIND - MAX + MAX spec_hgt_lvl_above_grnd 10. -4.0 @@ -3678,32 +3689,30 @@ 423 - MAX_MAXUVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa - hourly maximum Upward Vertical Velocity between 100-1000hpa + MAX_MAXUVV_ON_ISOBARIC_SFC_10-100hpa + hourly maximum Upward Vertical Velocity between 10-100hpa tmpl4_8 MAXUVV - NCEP MAX - spec_pres_above_grnd + isobaric_sfc 10000. - spec_pres_above_grnd + isobaric_sfc 100000. - -3.0 + -4.0 424 - MAX_MAXDVV_ON_SPEC_PRES_LVL_ABOVE_GRND_100-1000hpa - hourly maximum Downward Vertical Velocity between 100-1000hpa + MAX_MAXDVV_ON_ISOBARIC_SFC_10-100hpa + hourly maximum Downward Vertical Velocity between 10-100hpa tmpl4_8 MAXDVV - MAX - NCEP - spec_pres_above_grnd + MAX + isobaric_sfc 10000. - spec_pres_above_grnd + isobaric_sfc 100000. - -3.0 + -4.0 @@ -3713,7 +3722,7 @@ average Vertical velocity between sigma lvl 0.5 and 0.8 tmpl4_8 DZDT - AVE + AVE sigma_lvl 2 50. @@ -3758,7 +3767,7 @@ MAXVIG_ON_ENTIRE_ATMOS_SINGLE_LYR Hourly Maximum of Column Vertical Integrated Graupel on entire atmosphere tmpl4_8 - MAXVIG + TCOLG MAX entire_atmos_single_lyr 3.0 @@ -3841,7 +3850,7 @@ bucket Large scale precipitation on surface tmpl4_8 NCPCP - ACM + ACM surface 4.0 @@ -3934,8 +3943,6 @@ 11.0 - - 443 HGT_ON_EQUIL_LVL @@ -3953,9 +3960,8 @@ NCEP surface 1.0 - + - 445 MAPS_PRMSL_ON_MEAN_SEA_LVL @@ -3997,14 +4003,6 @@ - - 450 - ICIP_ON_ICAO_STD_SFC - Total Icing Potential Diagnostic on standard atmospheric isobaric sfc - ICIP - isobaric_sfc - 3.0 - 451 @@ -4124,115 +4122,6 @@ 4.0 - - - 464 - EDPARM_GTG_ON_ICAO_STD_SFC - EDPARM - isobaric_sfc - 3.0 - - - - 465 - CAT_GTG_ON_ICAO_STD_SFC - CATEDR - isobaric_sfc - 3.0 - - - - 466 - MWTURB_GTG_ON_ICAO_STD_SFC - MWTURB - isobaric_sfc - 3.0 - - - - - 467 - EDPARM_GTG_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL - EDPARM - spec_alt_above_mean_sea_lvl - 3.0 - - - - 468 - CAT_GTG_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL - CATEDR - spec_alt_above_mean_sea_lvl - 3.0 - - - - 469 - MWTURB_GTG_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL - MWTURB - spec_alt_above_mean_sea_lvl - 3.0 - - - - - 470 - EDPARM_ON_HYBRID_LVL - EDPARM - hybrid_lvl - 3.0 - - - - 471 - CAT_ON_HYBRID_LVL - CATEDR - hybrid_lvl - 3.0 - - - - 472 - MWTURB_ON_HYBRID_LVL - MWTURB - hybrid_lvl - 3.0 - - - - - 473 - CBHE_ON_ENTIRE_ATMOS - CBHE - entire_atmos - 3.0 - - - - 474 - ICAHT_ON_CB_BASE - ICAHT - cb_base - 6.0 - - - - 475 - ICAHT_ON_CB_TOP - ICAHT - cb_top - 6.0 - - - - 480 - ICESEV_ON_ICAO_STD_SFC - Icing severity on standard atmospheric isobaric levels - ICESEV - isobaric_sfc - 1.0 - - 482 PRES_ON_SPEC_ALT_ABOVE_MEAN_SEA_LVL @@ -4282,9 +4171,9 @@ 487 - GSD_EXP_CEILING - CEIL - ceiling + GSD_PRES_ON_CLOUD_BASE + PRES + cloud_base 3.0 @@ -4316,7 +4205,7 @@ - 491 + 490 TMITB9_ON_TOP_OF_ATMOS Simulated Brightness Temperature for TMI TRMM, Channel 9 on top of atmosphere AMSRE12 @@ -4401,8 +4290,8 @@ AVE_SNOWC_ON_SURFACE tmpl4_8 SNOWC - AVE - surface + AVE + surface 3.0 @@ -4411,8 +4300,8 @@ AVE_PRES_ON_SURFACE tmpl4_8 PRES - AVE - surface + AVE + surface 5.0 @@ -4481,288 +4370,80 @@ - 508 - MAX_PRATE_ON_SURFACE - Maximum Precipitation Rate on surface - tmpl4_8 - PRATE - MAX - surface - 6.0 - - - - 510 - MAX_QMAX_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 - QMAX - MAX + 546 + GSD_POT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + POT spec_hgt_lvl_above_grnd 2. 4.0 + - 511 - MIN_QMIN_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - tmpl4_8 - QMIN - MIN + 547 + GSD_DEPR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + DEPR spec_hgt_lvl_above_grnd 2. - 4.0 + 3.0 - 512 - ACOND_ON_SURFACE - ACOND + 548 + GSD_EPOT_ON_SURFACE + EPOT surface - 4.0 + 3.0 + - 513 - AVE_EVCW_ON_SURFACE - tmpl4_8 - EVCW - AVE + 551 + CSNOW_ON_SURFACE + Categorical snow on surface + CSNOW + NCEP surface - 3.0 + 1.0 - 514 - AVE_EVBS_ON_SURFACE - tmpl4_8 - EVBS - AVE + 552 + CICEP_ON_SURFACE + Categorical ice pellets on surface + CICEP + NCEP surface - 3.0 + 1.0 - 515 - AVE_TRANS_ON_SURFACE - tmpl4_8 - TRANS - AVE + 553 + CFRZR_ON_SURFACE + Categorical freezing rain on surface + CFRZR + NCEP surface - 3.0 + 1.0 - 516 - AVE_SBSNO_ON_SURFACE - tmpl4_8 - SBSNO + 555 + AVE_CSNOW_ON_SURFACE + average Categorical snow on surface + tmpl4_8 + CSNOW AVE surface - 3.0 + 1.0 - 517 - AVE_PEVPR_ON_SURFACE - tmpl4_8 - PEVPR - AVE - surface - 6.0 - - - - - 518 - HGT_ON_ICAO_STD_SFC - HGT - isobaric_sfc - 6.0 - - - - 519 - TMP_ON_ICAO_STD_SFC - TMP - isobaric_sfc - 3.0 - - - - 520 - UGRD_ON_ICAO_STD_SFC - UGRD - isobaric_sfc - 4.0 - - - - 521 - VGRD_ON_ICAO_STD_SFC - VGRD - isobaric_sfc - 4.0 - - - - 522 - RH_ON_ICAO_STD_SFC - RH - isobaric_sfc - 2.0 - - - - 523 - VVEL_ON_ICAO_STD_SFC - VVEL - isobaric_sfc - 5.0 - - - - 524 - ABSV_ON_ICAO_STD_SFC - ABSV - isobaric_sfc - 4.0 - - - - 525 - CLMR_ON_ICAO_STD_SFC - CLMR - isobaric_sfc - 4.0 - - - - 526 - BUCKET1_APCP_ON_SURFACE - bucket Total precipitation on surface - tmpl4_8 - APCP - ACM - surface - 4.0 - - - - 527 - BUCKET1_ACPCP_ON_SURFACE - bucket Convective precipitation on surface - tmpl4_8 - ACPCP - ACM - surface - 4.0 - - - - 528 - BUCKET1_NCPCP_ON_SURFACE - bucket Large scale precipitation on surface - tmpl4_8 - NCPCP - ACM - surface - 4.0 - - - - 529 - BUCKET1_WEASD_ON_SURFACE - bucket snow precipitation on surface - tmpl4_8 - WEASD - ACM - surface - 4.0 - - - - 530 - BUCKET1_GRAUPEL_ON_SURFACE - bucket graupel precipitation on surface - tmpl4_8 - FROZR - NCEP - ACM - surface - 4.0 - - - - 546 - GSD_POT_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - POT - spec_hgt_lvl_above_grnd - 2. - 4.0 - - - - - 547 - GSD_DEPR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - DEPR - spec_hgt_lvl_above_grnd - 2. - 3.0 - - - - 548 - GSD_EPOT_ON_SURFACE - EPOT - surface - 3.0 - - - - 551 - CSNOW_ON_SURFACE - Categorical snow on surface - CSNOW - surface - 1.0 - - - - 552 - CICEP_ON_SURFACE - Categorical ice pellets on surface - CICEP - surface - 1.0 - - - - 553 - CFRZR_ON_SURFACE - Categorical freezing rain on surface - CFRZR - surface - 1.0 - - - - 555 - AVE_CSNOW_ON_SURFACE - average Categorical snow on surface - tmpl4_8 - CSNOW - AVE - surface - 1.0 - - - - 556 - AVE_CICEP_ON_SURFACE - average Categorical ice pellets on surface - tmpl4_8 - CICEP + 556 + AVE_CICEP_ON_SURFACE + average Categorical ice pellets on surface + tmpl4_8 + CICEP AVE surface 1.0 @@ -4861,66 +4542,6 @@ 4.0 - - 568 - GFS_PRES_ON_MEAN_SEA_LVL - PRES - mean_sea_lvl - 6.0 - - - - 569 - GFS_AVE_TCDC_ON_CONVECTIVE_CLOUD_LYR - tmpl4_8 - TCDC - AVE - convective_cloud_lyr - 3.0 - - - - 570 - GFS_TCDC_ON_CONVECTIVE_CLOUD_LYR - TCDC - convective_cloud_lyr - 3.0 - - - - 571 - GFS_TMP_ON_DEPTH_BEL_LAND_SFC_3m - TMP - depth_bel_land_sfc - 3. - 3.0 - - - - 572 - GFS_LFTX_ON_SURFACE - LFTX - surface - 3.0 - - - - 573 - GFS_4LFTX_ON_SURFACE - 4LFTX - surface - 3.0 - - - - 574 - GFS_TMP_ON_DEPTH_BEL_LAND_SFC - TMP - depth_bel_land_sfc - depth_bel_land_sfc - 4.0 - - 575 CWAT_ON_ENTIRE_ATMOS_SINGLE_LYR @@ -5183,7 +4804,7 @@ 611 - SEASALT_AER_OPT_DEP_at550 + Seasalt_AER_OPT_DEP_at550 tmpl4_48 AOTK entire_atmos @@ -5223,7 +4844,7 @@ tmpl4_48 AOTK entire_atmos - particulate_org_matter_dry + sea_salt_dry smaller_than_first_limit 6 20 @@ -5241,7 +4862,7 @@ tmpl4_48 AOTK entire_atmos - black_carbon_dry + black_carbondry smaller_than_first_limit 6 20 @@ -5253,51 +4874,65 @@ 9.0 + + 615 + DUST_EMISSION_FLUX + tmpl4_48 + AEMFLX + entire_atmos + dust_dry + smaller_than_first_limit + 6 + 20 + 9.0 + + 616 - BC_COL_MASS_DEN + DUST_SEDIMENTATION_FLUX tmpl4_48 - COLMD - entire_atmos - black_carbon_dry + SEDMFLX + entire_atmos + dust_dry smaller_than_first_limit - 10 - 236 + 6 + 20 9.0 617 - OC_COL_MASS_DEN + DUST_DRY_DEPOSITION_FLUX tmpl4_48 - COLMD - entire_atmos - particulate_org_matter_dry + DDMFLX + entire_atmos + dust_dry smaller_than_first_limit - 10 - 424 + 6 + 20 9.0 618 - SULF_COL_MASS_DEN + DUST_WET_DEPOSITION_FLUX tmpl4_48 - COLMD - entire_atmos - sulphate_dry + WLSMFLX + entire_atmos + dust_dry smaller_than_first_limit - 7 - 25 + 6 + 20 9.0 + 619 - PM10_SFC_MASS_CON + CR_AER_SFC_MASS_CON tmpl4_48 - PMTC + MASSDEN surface - total_aerosol + dust_dry smaller_than_first_limit 6 10 @@ -5306,11 +4941,11 @@ 620 - PM25_SFC_MASS_CON + FN_AER_SFC_MASS_CON tmpl4_48 - PMTF + MASSDEN surface - total_aerosol + dust_dry smaller_than_first_limit 7 25 @@ -5319,11 +4954,11 @@ 621 - PM10_COL_MASS_DEN + CR_AER_COL_MASS_DEN tmpl4_48 COLMD entire_atmos - total_aerosol + dust_dry smaller_than_first_limit 6 10 @@ -5332,11 +4967,11 @@ 622 - PM25_COL_MASS_DEN + FN_AER_COL_MASS_DEN tmpl4_48 COLMD entire_atmos - total_aerosol + dust_dry smaller_than_first_limit 7 25 @@ -5438,7 +5073,7 @@ AER_OPT_DEP_at11100 tmpl4_48 AOTK - entire_atmos + entire_atmos total_aerosol smaller_than_first_limit 6 @@ -5455,9 +5090,9 @@ 629 DUST1_ON_HYBRID_LVL tmpl4_48 - PMTF + MASSMR + hybrid_lvl dust_dry - hybrid_lvl between_first_second_limit_noincl2ndlmt 7 2 @@ -5470,9 +5105,9 @@ 630 DUST2_ON_HYBRID_LVL tmpl4_48 - PMTF + MASSMR + hybrid_lvl dust_dry - hybrid_lvl between_first_second_limit_noincl2ndlmt 7 20 @@ -5485,9 +5120,9 @@ 631 DUST3_ON_HYBRID_LVL tmpl4_48 - PMTC + MASSMR + hybrid_lvl dust_dry - hybrid_lvl between_first_second_limit_noincl2ndlmt 7 36 @@ -5500,9 +5135,9 @@ 632 DUST4_ON_HYBRID_LVL tmpl4_48 - PMTC + MASSMR + hybrid_lvl dust_dry - hybrid_lvl between_first_second_limit_noincl2ndlmt 7 60 @@ -5515,9 +5150,9 @@ 633 DUST5_ON_HYBRID_LVL tmpl4_48 - PMTC + MASSMR + hybrid_lvl dust_dry - hybrid_lvl between_first_second_limit_noincl2ndlmt 7 120 @@ -5527,2405 +5162,523 @@ - 634 - SEASALT1_ON_HYBRID_LVL - tmpl4_48 - PMTF - sea_salt_dry - hybrid_lvl - between_first_second_limit_noincl2ndlmt - 8 - 6 - 8 - 20 - 11.0 - - - - 635 - SEASALT2_ON_HYBRID_LVL - tmpl4_48 - PMTF - sea_salt_dry - hybrid_lvl - between_first_second_limit_noincl2ndlmt - 7 - 2 - 7 - 10 - 11.0 + 700 + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km + tmpl4_8 + MXUPHL + MAX + spec_hgt_lvl_above_grnd + 6000. + spec_hgt_lvl_above_grnd + 1000. + 3.0 - 636 - SEASALT3_ON_HYBRID_LVL - tmpl4_48 - PMTC - sea_salt_dry - hybrid_lvl - between_first_second_limit_noincl2ndlmt - 7 - 10 - 7 - 30 - 11.0 + 701 + GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km + UPHL + spec_hgt_lvl_above_grnd + 6000. + spec_hgt_lvl_above_grnd + 1000. + 3.0 + - 637 - SEASALT4_ON_HYBRID_LVL - tmpl4_48 - PMTC - sea_salt_dry - hybrid_lvl - between_first_second_limit_noincl2ndlmt - 7 - 30 - 7 - 100 - 11.0 + 702 + GSD_MAX_LTG_THREAT1_ON_ENTIRE_ATMOS + LTGTHREAT1 + entire_atmos + 3.0 - 638 - SEASALT5_ON_HYBRID_LVL - tmpl4_48 - PMTC - sea_salt_dry - hybrid_lvl - between_first_second_limit_noincl2ndlmt - 7 - 100 - 7 - 200 - 11.0 + 703 + GSD_MAX_LTG_THREAT2_ON_ENTIRE_ATMOS + LTGTHREAT2 + entire_atmos + 3.0 - 639 - SO4_ON_HYBRID_LVL - tmpl4_48 - PMTF - sulphate_dry - hybrid_lvl - equall_to_first_limit - 9 - 139 - 11.0 + 704 + GSD_MAX_LTG_THREAT3_ON_ENTIRE_ATMOS + LTNG + entire_atmos + 3.0 - 640 - OCPHOBIC_ON_HYBRID_LVL - tmpl4_48 - PMTF - particulate_org_matter_hydrophobic - hybrid_lvl - equall_to_first_limit - 10 - 424 - 11.0 + 705 + GSD_NCI_LTG_ON_ENTIRE_ATMOS + GSD_Convective Initiation Lightning + NCILTG + entire_atmos + 3.0 - 641 - OCPHILIC_ON_HYBRID_LVL - tmpl4_48 - PMTF - particulate_org_matter_hydrophilic - hybrid_lvl - equall_to_first_limit - 10 - 424 - 11.0 + 706 + GSD_NCA_LTG_ON_ENTIRE_ATMOS + GSD_Convective Activity Lightning + NCALTG + entire_atmos + 3.0 - 642 - BCPHOBIC_ON_HYBRID_LVL - tmpl4_48 - PMTF - black_carbon_hydrophobic - hybrid_lvl - equall_to_first_limit - 10 - 236 - 11.0 + 707 + GSD_NCI_WQ_ON_ENTIRE_ATMOS + GSD_Convective Initiation Vertical Hydrometeor Flux + NCIWQ + entire_atmos + 3.0 - 643 - BCPHILIC_ON_HYBRID_LVL - tmpl4_48 - PMTF - black_carbon_hydrophilic - hybrid_lvl - equall_to_first_limit - 10 - 236 - 11.0 + 708 + GSD_NCA_WQ_ON_ENTIRE_ATMOS + GSD_Convective Activity Vertical Hydrometeor Flux + NCAWQ + entire_atmos + 3.0 - 644 - AIR_DENSITY_ON_HYBRID_LVL - DEN - hybrid_lvl - 4.0 + 709 + GSD_NCI_REFL_ON_ENTIRE_ATMOS + GSD_Convective Initiation Reflectivity + NCIREFL + entire_atmos + 3.0 - 645 - LAYER_THICKNESS_ON_HYBRID_LVL - THICK - hybrid_lvl - 4.0 + 710 + GSD_NCA_REFL_ON_ENTIRE_ATMOS + GSD_Convective Activity Reflectivity + NCAREFL + entire_atmos + 3.0 - 646 - DUST_COL_MASS_DEN - tmpl4_48 - COLMD - entire_atmos - dust_dry - smaller_than_first_limit - 7 - 25 - 9.0 + 727 + GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + UPHL + spec_hgt_lvl_above_grnd + 5000. + spec_hgt_lvl_above_grnd + 2000. + 3.0 - 647 - SEAS_COL_MASS_DEN - tmpl4_48 - COLMD - entire_atmos - sea_salt_dry - smaller_than_first_limit - 7 - 25 - 9.0 + 748 + GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_1km + REFL + spec_hgt_lvl_above_grnd + 1000. + 3.0 - 648 - SINGLE_SCAT_ALBD_at340 - tmpl4_48 - SSALBK - total_aerosol - smaller_than_first_limit - 6 - 20 - between_first_second_limit - 9 - 338 - 9 - 342 + 749 + GSD_RH_WRT_PRECIP_WATER_ON_ENTIRE_ATMOS + RELATIVE HUMIDITY WITH RESPECT TO PRECIPITABLE WATER + RH_PWAT entire_atmos - 9.0 + 3.0 + - 649 - AER_ASYM_FACTOR_at340 - tmpl4_48 - ASYSFK - total_aerosol - smaller_than_first_limit - 6 - 20 - between_first_second_limit - 9 - 338 - 9 - 342 - entire_atmos - 9.0 + 750 + GSD_WV_MIXR_ON_HYBRID_LVL + MIXR + hybrid_lvl + 3.0 - 650 - AER_SCAT_OPT_DEP_at550 - tmpl4_48 - SCTAOTK - total_aerosol - smaller_than_first_limit - 6 - 20 - between_first_second_limit - 9 - 545 - 9 - 565 - entire_atmos - 9.0 + 751 + GSD_VPTMP_ON_HYBRID_LVL + VPTMP + hybrid_lvl + 3.0 - 651 - DUST_AER_SCAT_OPT_DEP_at550 - tmpl4_48 - SCTAOTK - dust_dry - smaller_than_first_limit - 6 - 20 - between_first_second_limit - 9 - 545 - 9 - 565 - entire_atmos - 9.0 + 752 + GSD_NCIP_ON_HYBRID_LVL + Number concentration for ice particles on hybrid level + NCIP + hybrid_lvl + 3.0 - 652 - SEASALT_AER_SCAT_OPT_DEP_at550 - tmpl4_48 - SCTAOTK - sea_salt_dry - smaller_than_first_limit - 6 - 20 - between_first_second_limit - 9 - 545 - 9 - 565 - entire_atmos - 9.0 + 753 + GSD_PRES_ON_0C_ISOTHERM + GSD_pressure on Level of 0 deg (C) isotherm + PRES + 0C_isotherm + 3.0 - 653 - SULFATE_AER_SCAT_OPT_DEP_at550 - tmpl4_48 - SCTAOTK - sulphate_dry - smaller_than_first_limit - 8 - 70 - between_first_second_limit - 9 - 545 - 9 - 565 - entire_atmos - 9.0 + 754 + GSD_NCRAIN_ON_HYBRID_LVL + NCRAIN + hybrid_lvl + 3.0 - 654 - ORGANIC_CARBON_AER_SCAT_OPT_DEP_at550 - tmpl4_48 - SCTAOTK - particulate_org_matter_dry - smaller_than_first_limit - 8 - 70 - between_first_second_limit - 9 - 545 - 9 - 565 - entire_atmos - 9.0 - - - - 655 - BLACK_CARBON_AER_SCAT_OPT_DEP_at550 - tmpl4_48 - SCTAOTK - black_carbon_dry - smaller_than_first_limit - 8 - 70 - between_first_second_limit - 9 - 545 - 9 - 565 - entire_atmos - 9.0 - - - - 656 - ANGSTROM_EXP_at440_860 - tmpl4_48 - ANGSTEXP - total_aerosol - smaller_than_first_limit - 6 - 20 - between_first_second_limit - 9 - 430 - 9 - 876 - entire_atmos - 9.0 - - - - 659 - DUST_EMISSION_FLUX - tmpl4_48 - AEMFLX - entire_atmos - dust_dry - smaller_than_first_limit - 6 - 20 - 9.0 - - - - 660 - DUST_SEDIMENTATION_FLUX - tmpl4_48 - SEDMFLX - entire_atmos - dust_dry - smaller_than_first_limit - 6 - 20 - 9.0 - - - - 661 - DUST DRY DEPOSITION - tmpl4_48 - DDMFLX - dust_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 662 - DUST WET DEPOSITION - tmpl4_48 - WLSMFLX - dust_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 663 - SEASALT_EMISSION_FLUX - tmpl4_48 - AEMFLX - sea_salt_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 664 - SEASALT_SEDIMENTATION_FLUX - tmpl4_48 - SEDMFLX - sea_salt_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 665 - SEASALT_DRY_DEPOSITION_FLUX - tmpl4_48 - DDMFLX - sea_salt_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 666 - SEASALT_WET_DEPOSITION_FLUX - tmpl4_48 - WLSMFLX - sea_salt_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 667 - BLACK_CARBON_EMISSION_FLUX - tmpl4_48 - AEMFLX - black_carbon_dry - smaller_than_first_limit - 10 - 236 - entire_atmos - 9.0 - - - - 668 - BLACK_CARBON_SEDIMENTATION_FLUX - tmpl4_48 - SEDMFLX - black_carbon_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 669 - BLACK_CARBON_DRY_DEPOSITION_FLUX - tmpl4_48 - DDMFLX - black_carbon_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 670 - BLACK_CARBON_WET_DEPOSITION_FLUX - tmpl4_48 - WLSMFLX - black_carbon_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 671 - ORGANIC_CARBON_EMISSION_FLUX - tmpl4_48 - AEMFLX - particulate_org_matter_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 672 - ORGANIC_CARBON_SEDIMENTATION_FLUX - tmpl4_48 - SEDMFLX - particulate_org_matter_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 673 - ORGANIC_CARBON_DRY_DEPOSITION_FLUX - tmpl4_48 - DDMFLX - particulate_org_matter_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 674 - ORGANIC_CARBON_WET_DEPOSITION_FLUX - tmpl4_48 - WLSMFLX - particulate_org_matter_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 675 - SULFATE_EMISSION_FLUX - tmpl4_48 - AEMFLX - sulphate_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 676 - SULFATE_SEDIMENTATION_FLUX - tmpl4_48 - SEDMFLX - sulphate_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 677 - SULFATE_DRY_DEPOSITION_FLUX - tmpl4_48 - DDMFLX - sulphate_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 678 - SULFATE_WET_DEPOSITION_FLUX - tmpl4_48 - WLSMFLX - sulphate_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 679 - DUST_SCAVENGING_FLUX - tmpl4_48 - WDCPMFLX - dust_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 680 - SEASALT_SCAVENGING_FLUX - tmpl4_48 - WDCPMFLX - sea_salt_dry - smaller_than_first_limit - 6 - 20 - entire_atmos - 9.0 - - - - 681 - BLACK_CARBON_SCAVENGING_FLUX - tmpl4_48 - WDCPMFLX - black_carbon_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 682 - ORGANIC_CARBON_SCAVENGING_FLUX - tmpl4_48 - WDCPMFLX - particulate_org_matter_dry - smaller_than_first_limit - 8 - 70 - entire_atmos - 9.0 - - - - 683 - SS_CR_AER_SFC_MASS_CON - AVE - tmpl4_48 - MASSDEN - sea_salt_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 684 - SEAS25_SFC_MASS_CON - tmpl4_48 - PMTF - surface - sea_salt_dry - smaller_than_first_limit - 7 - 25 - 9.0 - - - - 685 - DU_CR_AER_SFC_MASS_CON - AVE - tmpl4_48 - MASSDEN - dust_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 686 - DUST25_SFC_MASS_CON - tmpl4_48 - PMTF - surface - dust_dry - smaller_than_first_limit - 7 - 25 - 9.0 - - - - 687 - BC_AER_SFC_MASS_CON - AVE - tmpl4_48 - MASSDEN - black_carbon_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 688 - OC_AER_SFC_MASS_CON - AVE - tmpl4_48 - MASSDEN - particulate_org_matter_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 689 - SU_AER_SFC_MASS_CON - AVE - tmpl4_48 - MASSDEN - sulphate_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 690 - INST_SU_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - sulphate_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 691 - INST_OC_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - particulate_org_matter_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - - 692 - INST_BC_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - black_carbon_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 693 - INST_DU_CR_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - dust_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 694 - INST_DU_FN_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - dust_dry - smaller_than_first_limit - 7 - 25 - surface - 9.0 - - - - 695 - INST_SS_CR_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - sea_salt_dry - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 696 - INST_SS_FN_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - sea_salt_dry - smaller_than_first_limit - 7 - 25 - surface - 9.0 - - - - 697 - INST_CR_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - total_aerosol - smaller_than_first_limit - 6 - 10 - surface - 9.0 - - - - 698 - INST_FN_AER_SFC_MASS_CON - tmpl4_48 - MASSDEN - total_aerosol - smaller_than_first_limit - 7 - 25 - surface - 9.0 - - - - 700 - GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km - tmpl4_8 - MXUPHL - MAX - spec_hgt_lvl_above_grnd - 6000. - spec_hgt_lvl_above_grnd - 1000. - 3.0 - - - - 701 - GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km - UPHL - spec_hgt_lvl_above_grnd - 6000. - spec_hgt_lvl_above_grnd - 1000. - 3.0 - - - - - 702 - GSD_MAX_LTG_THREAT1_ON_ENTIRE_ATMOS - LTGTHREAT1 - entire_atmos - 3.0 - - - - 703 - GSD_MAX_LTG_THREAT2_ON_ENTIRE_ATMOS - LTGTHREAT2 - entire_atmos - 3.0 - - - - 704 - GSD_MAX_LTG_THREAT3_ON_ENTIRE_ATMOS - LTNG - entire_atmos - 3.0 - - - - 705 - GSD_NCI_LTG_ON_ENTIRE_ATMOS - GSD_Convective Initiation Lightning - NCILTG - entire_atmos - 3.0 - - - - 706 - GSD_NCA_LTG_ON_ENTIRE_ATMOS - GSD_Convective Activity Lightning - NCALTG - entire_atmos - 3.0 - - - - 707 - GSD_NCI_WQ_ON_ENTIRE_ATMOS - GSD_Convective Initiation Vertical Hydrometeor Flux - NCIWQ - entire_atmos - 3.0 - - - - 708 - GSD_NCA_WQ_ON_ENTIRE_ATMOS - GSD_Convective Activity Vertical Hydrometeor Flux - NCAWQ - entire_atmos - 3.0 - - - - 709 - GSD_NCI_REFL_ON_ENTIRE_ATMOS - GSD_Convective Initiation Reflectivity - TSEC - entire_atmos - 3.0 - - - - 710 - GSD_NCA_REFL_ON_ENTIRE_ATMOS - GSD_Convective Activity Reflectivity - TSEC - entire_atmos - 6. - 3.0 - - - - 711 - GSD_EXP_CEILING_2 - CEIL - cloud_base - 3.0 - - - - 719 - INST_USWRF_ON_TOP_OF_ATMOS - USWRF - top_of_atmos - 4.0 - - - - 725 - GSD_ACM_SNOD_ON_SURFACE - tmpl4_8 - ASNOW - ACM - surface - 3.0 - - - - 726 - VEG_MIN_ON_SURFACE - VEGMIN - NCEP - surface - 3.0 - - - - 727 - GSD_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km - UPHL - spec_hgt_lvl_above_grnd - 5000. - spec_hgt_lvl_above_grnd - 2000. - 3.0 - - - - 728 - GSD_HAILCAST_HAIL_DIAMETER - tmpl4_8 - HAIL - MAX - surface - 4.0 - - - - 729 - VEG_MAX_ON_SURFACE - VEGMAX - NCEP - surface - 3.0 - - - - 730 - AVE_WIND_ON_SPEC_HGT_LVL_ABOVE_GRND_10m - tmpl4_8 - WIND - AVE - spec_hgt_lvl_above_grnd - 10. - 4.0 - - - - 731 - AVE_UGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m - tmpl4_8 - UGRD - AVE - spec_hgt_lvl_above_grnd - 10. - 4.0 - - - - 732 - AVE_VGRD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m - tmpl4_8 - VGRD - AVE - spec_hgt_lvl_above_grnd - 10. - 4.0 - - - - 733 - GSD_AVE_DSWRF_ON_SURFACE - tmpl4_8 - DSWRF - AVE - surface - 3.0 - - - - 734 - GSD_AVE_SWDDNI_ON_SURFACE - tmpl4_8 - VBDSF - NCEP - AVE - surface - 3.0 - - - - 735 - AOD_ON_ENTIRE_ATMOS_SINGLE_LYR - tmpl4_0 - AOTK - entire_atmos_single_lyr - 5.0 - - - - 736 - SMOKE_ON_ENTIRE_ATMOS_SINGLE_LYR - tmpl4_0 - COLMD - entire_atmos_single_lyr - 5.0 - - - - 737 - SMOKE_ON_HYBRID_LVL - tmpl4_0 - MASSDEN - hybrid_lvl - 6.0 - - - - 738 - SMOKE_ON_ISOBARIC_SFC - tmpl4_0 - MASSDEN - isobaric_sfc - 6.0 - - - - 739 - SMOKE_ON_SPEC_HGT_LVL_ABOVE_GRND_8m - tmpl4_0 - MASSDEN - spec_hgt_lvl_above_grnd - 8. - 6.0 - - - - 740 - MEAN_FIRE_RDIATV_PWR - CFNSF - NCEP - surface - 4.0 - - - - 746 - ACM_GRAUPEL_ON_SURFACE - tmpl4_8 - FROZR - NCEP - ACM - surface - 4.0 - - - - 747 - GSD_NCCD_ON_HYBRID_LVL - Number concentration for cloud water drops on hybrid level - NCONCD - hybrid_lvl - 3.0 - - - - 748 - GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_1km - REFD - spec_hgt_lvl_above_grnd - 1000. - 3.0 - - - - 749 - GSD_RH_WRT_PRECIP_WATER_ON_ENTIRE_ATMOS - RELATIVE HUMIDITY WITH RESPECT TO PRECIPITABLE WATER - RH_PWAT - entire_atmos - 3.0 - - - - 750 - GSD_WV_MIXR_ON_HYBRID_LVL - MIXR - hybrid_lvl - 3.0 - - - - 751 - GSD_VPTMP_ON_HYBRID_LVL - VPTMP - hybrid_lvl - 3.0 - - - - 752 - GSD_NCIP_ON_HYBRID_LVL - Number concentration for ice particles on hybrid level - NCIP - hybrid_lvl - 3.0 - - - - 753 - GSD_PRES_ON_0C_ISOTHERM - GSD_pressure on Level of 0 deg (C) isotherm - PRES - 0C_isotherm - 3.0 - - - - 754 - GSD_NCRAIN_ON_HYBRID_LVL - NCRAIN - hybrid_lvl - 3.0 - - - - 756 - GSD_PRES_ON_HGHST_TROP_FRZ_LVL - GSD_pressure on Highest tropospheric freezing level - PRES - hghst_trop_frz_lvl - 3.0 - - - - 757 - GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_4km - REFD - spec_hgt_lvl_above_grnd - 4000. - 3.0 - - - - 758 - GSD_HGT_ON_CONVECTIVE_CLOUD_TOP_LVL - HGT - convective_cloud_top_lvl - 4.0 - - - - 760 - GSD_MIXR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - MIXR - spec_hgt_lvl_above_grnd - 2. - 3.0 - - - - 761 - GSD_INSIDE_SNOW_TMP_ON_SURFACE - TMP - SURFACE - 4.0 - - - - 762 - GSD_MIXR_ON_SURFACE - MIXR - SURFACE - 3.0 - - - - 763 - GSD_MIXR_ON_LFC - MIXR - level_free_convection - 3.0 - - - - 766 - GSD_NCWFA_ON_HYBRID_LVL - PMTF - NCEP - hybrid_lvl - 3.0 - - - - 767 - GSD_NCIFA_ON_HYBRID_LVL - PMTC - NCEP - hybrid_lvl - 3.0 - - - - 768 - GSD_ECHOTOP_ON_CLOUD_TOP - Echo top height (Highest height in meters of the 18-dBZ reflectivity on a model level) - RETOP - cloud_top - 3.0 - - - - 769 - GSD_VIL_ON_ENTIRE_ATMOS - VIL - entire_atmos - 4.0 - - - - 770 - GSD_RADARVIL_ON_ENTIRE_ATMOS - RADARVIL - entire_atmos - 3.0 - - - - 772 - INST_SWDDNI_ON_SURFACE - VBDSF - NCEP - surface - 4.0 - - - - 773 - INST_SWDDIF_ON_SURFACE - VDDSF - NCEP - surface - 4.0 - - - - 774 - FRACCC_ON_HYBRID_LVL - FRACCC - hybrid_lvl - 3.0 - - - - 775 - BUCKET_GRAUPEL_ON_SURFACE - bucket graupel precipitation on surface - tmpl4_8 - FROZR - NCEP - ACM - surface - 4.0 - - - - 776 - HGT_ON_HGHST_TROP_-10C_LVL - height on highest tropospheric -10C level - HGT - isothermal - 263. - 3.0 - - - - 777 - RH_ON_HGHST_TROP_-10C_LVL - relative humidity on highest tropospheric -10C level - RH - isothermal - 263. - 2.0 - - - - 778 - PRES_ON_HGHST_TROP_-10C_LVL - pressure on highest tropospheric -10C level - PRES - isothermal - 263. - 3.0 - - - - 779 - HGT_ON_HGHST_TROP_-20C_LVL - height on highest tropospheric -20C level - HGT - isothermal - 253. - 3.0 - - - - 780 - RH_ON_HGHST_TROP_-20C_LVL - relative humidity on highest tropospheric -20C level - RH - isothermal - 253. - 2.0 - - - - 781 - PRES_ON_HGHST_TROP_-20C_LVL - pressure on highest tropospheric -20C level - PRES - isothermal - 253. - 3.0 - - - - 782 - ACM_FRAIN_ON_SURFACE - tmpl4_8 - FRZR - NCEP - ACM - surface - 4.0 - - - - 783 - MAX_UGD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m - maximum u wind on 10 meter Above Ground - tmpl4_8 - MAXUW - NCEP - MAX - spec_hgt_lvl_above_grnd - 10. - -4.0 - - - - 784 - MAX_VGD_ON_SPEC_HGT_LVL_ABOVE_GRND_10m - maximum v wind on 10 meter Above Ground - tmpl4_8 - MAXVW - NCEP - MAX - spec_hgt_lvl_above_grnd - 10. - -4.0 - - - - 785 - MAX_REF_ON_ISOTHERMAL_-10C - maximum reflectivity on -10C suface - tmpl4_8 - REFD - MAX - isothermal - 263. - -3.0 - - - - 786 - GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km - tmpl4_8 - MNUPHL - MIN - spec_hgt_lvl_above_grnd - 5000. - spec_hgt_lvl_above_grnd - 2000. - -3.0 - - - - 787 - GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_1-6km - tmpl4_8 - MNUPHL - MIN - spec_hgt_lvl_above_grnd - 6000. - spec_hgt_lvl_above_grnd - 1000. - 3.0 - - - - 788 - GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km - tmpl4_8 - MXUPHL - MAX - spec_hgt_lvl_above_grnd - 2000. - spec_hgt_lvl_above_grnd - 0000. - 3.0 - - - - 789 - GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km - tmpl4_8 - MNUPHL - MIN - spec_hgt_lvl_above_grnd - 2000. - spec_hgt_lvl_above_grnd - 0000. - 3.0 - - - - 790 - GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km - tmpl4_8 - MXUPHL - MAX - spec_hgt_lvl_above_grnd - 3000. - spec_hgt_lvl_above_grnd - 0000. - 3.0 - - - - 791 - GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km - tmpl4_8 - MNUPHL - MIN - spec_hgt_lvl_above_grnd - 3000. - spec_hgt_lvl_above_grnd - 0000. - -3.0 - - - - 792 - GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km - tmpl4_8 - RELV - MAX - spec_hgt_lvl_above_grnd - 2000. - spec_hgt_lvl_above_grnd - 0000. - 5.0 - - - - 793 - GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km - tmpl4_8 - RELV - MAX - spec_hgt_lvl_above_grnd - 1000. - spec_hgt_lvl_above_grnd - 0000. - 5.0 - - - - 794 - GSD_MAX_COLMAX_GRAUPEL_HAIL_DIAMETER - tmpl4_8 - HAIL - MAX - entire_atmos - 4.0 - - - - 795 - GSD_MAX_SIGMA_LVL_MAX_GRAUPEL_HAIL_DIAMETER - tmpl4_8 - HAIL - MAX - sigma_lvl - 1 - 1. - 4.0 - - - - 798 - GSD_PRES1_ON_CLOUD_BASE - PRES - cloud_base - 3.0 - - - - 799 - TCDC_ON_BOUND_LYR - TCDC - bound_lyr_cloud_lyr - 3.0 - - - - 808 - APTMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m - APTMP - spec_hgt_lvl_above_grnd - 2. - 4.0 - - - - 825 - SSMS1715_ON_TOP_OF_ATMOS - SSMS1715 - top_of_atmos - 4.0 - - - - 826 - SSMS1716_ON_TOP_OF_ATMOS - SSMS1716 - top_of_atmos - 4.0 - - - - 827 - SSMS1717_ON_TOP_OF_ATMOS - SSMS1717 - top_of_atmos - 4.0 - - - - 828 - SSMS1718_ON_TOP_OF_ATMOS - SSMS1718 - top_of_atmos - 4.0 - - - - 890 - GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 - Hourly max relative vorticity on hybrid level 1 - tmpl4_8 - RELV - MAX - hybrid_lvl - 1. - 5.0 - - - - 912 - REFD_ON_ISOTHERMAL - REFD - isothermal - 263. - -4.0 - - - - 913 - 1H_FFG_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 914 - ACM_FFG_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 915 - 1H_2YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 916 - ACM_2YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 917 - 1H_5YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 918 - ACM_5YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 919 - 1H_10YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 920 - ACM_10YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 921 - 1H_100YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 922 - ACM_100YARI_EXCEEDANCE - tmpl4_8 - FFLDRO - ACM - surface - 4.0 - - - - 927 - SBTA167_ON_TOP_OF_ATMOS - SBTA167 - top_of_atmos - 4.0 - - - - 928 - SBTA168_ON_TOP_OF_ATMOS - SBTA168 - top_of_atmos - 4.0 - - - - 929 - SBTA169_ON_TOP_OF_ATMOS - SBTA169 - top_of_atmos - 4.0 - - - - 930 - SBTA1610_ON_TOP_OF_ATMOS - SBTA1610 - top_of_atmos - 4.0 - - - - 931 - SBTA1611_ON_TOP_OF_ATMOS - SBTA1611 - top_of_atmos - 4.0 - - - - 932 - SBTA1612_ON_TOP_OF_ATMOS - SBTA1612 - top_of_atmos - 4.0 - - - - 933 - SBTA1613_ON_TOP_OF_ATMOS - SBTA1613 - top_of_atmos - 4.0 - - - - 934 - SBTA1614_ON_TOP_OF_ATMOS - SBTA1614 - top_of_atmos - 4.0 - - - - 935 - SBTA1615_ON_TOP_OF_ATMOS - SBTA1615 - top_of_atmos - 4.0 - - - - 936 - SBTA1616_ON_TOP_OF_ATMOS - SBTA1616 - top_of_atmos - 4.0 - - - - 937 - SBTA177_ON_TOP_OF_ATMOS - SBTA177 - top_of_atmos - 4.0 - - - - 938 - SBTA178_ON_TOP_OF_ATMOS - SBTA178 - top_of_atmos - 4.0 + 756 + GSD_PRES_ON_HGHST_TROP_FRZ_LVL + GSD_pressure on Highest tropospheric freezing level + PRES + hghst_trop_frz_lvl + 3.0 - 939 - SBTA179_ON_TOP_OF_ATMOS - SBTA179 - top_of_atmos - 4.0 + 757 + GSD_REFL_ON_SPEC_HGT_LVL_ABOVE_GRND_4km + REFL + spec_hgt_lvl_above_grnd + 4000. + 3.0 - 940 - SBTA1710_ON_TOP_OF_ATMOS - SBTA1710 - top_of_atmos + 758 + GSD_HGT_ON_CONVECTIVE_CLOUD_TOP_LVL + HGT + convective_cloud_top_lvl 4.0 - 941 - SBTA1711_ON_TOP_OF_ATMOS - SBTA1711 - top_of_atmos - 4.0 + 760 + GSD_MIXR_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + MIXR + spec_hgt_lvl_above_grnd + 2. + 3.0 - 942 - SBTA1712_ON_TOP_OF_ATMOS - SBTA1712 - top_of_atmos - 4.0 + 762 + GSD_MIXR_ON_SURFACE + MIXR + SURFACE + 3.0 - 943 - SBTA1713_ON_TOP_OF_ATMOS - SBTA1713 - top_of_atmos + 761 + GSD_INSIDE_SNOW_TMP_ON_SURFACE + TMP + SURFACE 4.0 - 944 - SBTA1714_ON_TOP_OF_ATMOS - SBTA1714 - top_of_atmos - 4.0 + 768 + GSD_ECHOTOP_ON_CLOUD_TOP + Echo top height (Highest height in meters of the 18-dBZ reflectivity on a model level) + RETOP + cloud_top + 3.0 - 945 - SBTA1715_ON_TOP_OF_ATMOS - SBTA1715 - top_of_atmos + 769 + GSD_VIL_ON_ENTIRE_ATMOS + VIL + entire_atmos 4.0 - 946 - SBTA1716_ON_TOP_OF_ATMOS - SBTA1716 - top_of_atmos - 4.0 + 770 + GSD_RADARVIL_ON_ENTIRE_ATMOS + VIL + entire_atmos + 3.0 - 950 - CAPE_ON_0_3KM_ABOVE_GRND - CAPE - spec_hgt_lvl_above_grnd - 0. - spec_hgt_lvl_above_grnd - 3000. - 4.0 + 785 + MAX_REF_ON_ISOTHERMAL_-10C + maximum reflectivity on -10C suface + tmpl4_8 + REFD + MAX + isothermal + 263. + -3.0 - 951 - CIN_ON_0_3KM_ABOVE_GRND - CIN + 786 + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_2-5km + tmpl4_8 + MNUPHL + MIN spec_hgt_lvl_above_grnd - 0. + 5000. spec_hgt_lvl_above_grnd - 3000. - 4.0 - - - - 952 - HGT_ON_LFC - HGT - level_free_convection - 6.0 - - - - 953 - EFF_HLCY_ON_SPEC_HGT_LVL_ABOVE_GRND - EFHL - NCEP - surface - 4.0 + 2000. + -3.0 - 954 - DOWNWARD_CAPE - DCAPE - NCEP - spec_pres_above_grnd - 40000. - spec_pres_above_grnd - 0. - 4.0 + 790 + GSD_MAX_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + tmpl4_8 + MXUPHL + MAX + spec_hgt_lvl_above_grnd + 3000. + spec_hgt_lvl_above_grnd + 0000. + 3.0 - 955 - DENDRITIC_LAYER_DEPTH - LAYTH - NCEP - isothermal - 261. - isothermal - 256. - 4.0 + 791 + GSD_MIN_UPHL_ON_SPEC_HGT_LVL_ABOVE_GRND_0-3km + tmpl4_8 + MNUPHL + MIN + spec_hgt_lvl_above_grnd + 3000. + spec_hgt_lvl_above_grnd + 0000. + -3.0 - 956 - ENHANCED_STRETCHING_POTENTIAL - ESP - NCEP + 792 + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-2km + tmpl4_8 + RELV + MAX spec_hgt_lvl_above_grnd - 0. + 2000. spec_hgt_lvl_above_grnd - 3000. - 4.0 + 0000. + 5.0 - 957 - CRITICAL_ANGLE - DCAPE - NCEP + 793 + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_ABOVE_GRND_0-1km + tmpl4_8 + RELV + MAX spec_hgt_lvl_above_grnd - 0. + 1000. spec_hgt_lvl_above_grnd - 500. - 4.0 + 0000. + 5.0 - - - 958 - SBTAGR7_ON_TOP_OF_ATMOS - SBTAGR7 - top_of_atmos - 4.0 + 890 + GSD_MAX_REL_VORT_ON_SPEC_HGT_LVL_HYBRID1 + Hourly max relative vorticity on hybrid level 1 + tmpl4_8 + RELV + MAX + hybrid_lvl + 1. + 5.0 - 959 - SBTAGR8_ON_TOP_OF_ATMOS - SBTAGR8 - top_of_atmos + 808 + APTMP_ON_SPEC_HGT_LVL_ABOVE_GRND_2m + APTMP + spec_hgt_lvl_above_grnd + 2. 4.0 - 960 - SBTAGR9_ON_TOP_OF_ATMOS - SBTAGR9 - top_of_atmos - 4.0 + 912 + REFD_ON_ISOTHERMAL + REFD + isothermal + 263. + -4.0 - 961 - SBTAGR10_ON_TOP_OF_ATMOS - SBTAGR10 + 927 + SBTA167_ON_TOP_OF_ATMOS + SBTA167 top_of_atmos 4.0 - 962 - SBTAGR11_ON_TOP_OF_ATMOS - SBTAGR11 + 928 + SBTA168_ON_TOP_OF_ATMOS + SBTA168 top_of_atmos 4.0 - 963 - SBTAGR12_ON_TOP_OF_ATMOS - SBTAGR12 + 929 + SBTA169_ON_TOP_OF_ATMOS + SBTA169 top_of_atmos 4.0 - 964 - SBTAGR13_ON_TOP_OF_ATMOS - SBTAGR13 + 930 + SBTA1610_ON_TOP_OF_ATMOS + SBTA1610 top_of_atmos 4.0 - 965 - SBTAGR14_ON_TOP_OF_ATMOS - SBTAGR14 + 931 + SBTA1611_ON_TOP_OF_ATMOS + SBTA1611 top_of_atmos 4.0 - 966 - SBTAGR15_ON_TOP_OF_ATMOS - SBTAGR15 + 932 + SBTA1612_ON_TOP_OF_ATMOS + SBTA1612 top_of_atmos 4.0 - 967 - SBTAGR16_ON_TOP_OF_ATMOS - SBTAGR16 + 933 + SBTA1613_ON_TOP_OF_ATMOS + SBTA1613 top_of_atmos 4.0 - 968 - ICETMP_ON_SURFACE - ICETMP - surface - 5.0 - - - - 969 - SBTAHI7_ON_TOP_OF_ATMOS - SBTAHI7 + 934 + SBTA1614_ON_TOP_OF_ATMOS + SBTA1614 top_of_atmos 4.0 - 970 - SBTAHI8_ON_TOP_OF_ATMOS - SBTAHI8 + 935 + SBTA1615_ON_TOP_OF_ATMOS + SBTA1615 top_of_atmos 4.0 - 971 - SBTAHI9_ON_TOP_OF_ATMOS - SBTAHI9 + 936 + SBTA1616_ON_TOP_OF_ATMOS + SBTA1616 top_of_atmos 4.0 - 972 - SBTAHI10_ON_TOP_OF_ATMOS - SBTAHI10 + 937 + SBTA177_ON_TOP_OF_ATMOS + SBTA177 top_of_atmos 4.0 - 973 - SBTAHI11_ON_TOP_OF_ATMOS - SBTAHI11 + 938 + SBTA178_ON_TOP_OF_ATMOS + SBTA178 top_of_atmos 4.0 - 974 - SBTAHI12_ON_TOP_OF_ATMOS - SBTAHI12 + 939 + SBTA179_ON_TOP_OF_ATMOS + SBTA179 top_of_atmos 4.0 - 975 - SBTAHI13_ON_TOP_OF_ATMOS - SBTAHI13 + 940 + SBTA1710_ON_TOP_OF_ATMOS + SBTA1710 top_of_atmos 4.0 - 976 - SBTAHI14_ON_TOP_OF_ATMOS - SBTAHI14 + 941 + SBTA1711_ON_TOP_OF_ATMOS + SBTA1711 top_of_atmos 4.0 - 977 - SBTAHI15_ON_TOP_OF_ATMOS - SBTAHI15 + 942 + SBTA1712_ON_TOP_OF_ATMOS + SBTA1712 top_of_atmos 4.0 - 978 - SBTAHI16_ON_TOP_OF_ATMOS - SBTAHI16 + 943 + SBTA1713_ON_TOP_OF_ATMOS + SBTA1713 top_of_atmos 4.0 - 979 - EFSH_ON_LFC - EFSH - NCEP - level_free_convection + 944 + SBTA1714_ON_TOP_OF_ATMOS + SBTA1714 + top_of_atmos 4.0 - 980 - EFSH_ON_EQUIL_LVL - EFSH - NCEP - equil_lvl + 945 + SBTA1715_ON_TOP_OF_ATMOS + SBTA1715 + top_of_atmos 4.0 - 982 - ELMELT_ON_EQUIL_LVL - ELMELT - NCEP - equil_lvl - 6.0 - - - - 983 - UESH_ON_LFC - UESH - NCEP - level_free_convection - 6.0 - - - - 984 - VESH_ON_LFC - VESH - NCEP - level_free_convection - 6.0 - - - - 985 - ESHR_ON_LFC - ESHR - NCEP - level_free_convection - 6.0 - - - - 986 - UEID_ON_LFC - UEID - level_free_convection - 6.0 - - - - 987 - VEID_ON_LFC - VEID - level_free_convection - 6.0 - - - - 988 - E3KH_ON_LFC - E3KH - level_free_convection - 6.0 - - - - 989 - STPC_ON_LFC - STPC - level_free_convection - 6.0 - - - - 990 - SIGT_ON_LFC - SIGT - level_free_convection - 6.0 - - - - 991 - SCCP_ON_LFC - SCCP - level_free_convection - 6.0 - - - - 992 - MLFC_ON_LFC - MLFC - level_free_convection - 6.0 - - - - 993 - SIGH_ON_LFC - SIGH - level_free_convection - 6.0 - - - - 994 - OZCON_ON_HYBRID_LVL - OZCON - hybrid_lvl - 7.0 - - - - 995 - PM25TOT_ON_HYBRID_LVL - PMTF - hybrid_lvl - 7.0 - - - - 996 - LAND_FRAC - LANDFRC - NCEP - surface - 3.0 - - - - 997 - INST_PREC_ADVEC_HEAT - PAHFLX - NCEP - surface - 3.0 - - - - 998 - WATER_AQUIFER - WATERSA - NCEP - surface - 3.0 - - - - 999 - ACM_EIWATER_ON_SURFACE - tmpl4_8 - EIWATER - NCEP - ACM - surface - 3.0 - - - - 1000 - ACM_PLANTTR_ON_SURFACE - tmpl4_8 - PLANTTR - NCEP - ACM - surface - 3.0 + 946 + SBTA1716_ON_TOP_OF_ATMOS + SBTA1716 + top_of_atmos + 4.0 - - 1001 - ACM_SOILSE_ON_SURFACE - tmpl4_8 - SOILSE - NCEP - ACM - surface - 3.0 - - - 1002 - AVE_PREC_ADVEC_HEAT - tmpl4_8 - PAHFLX - NCEP - AVE - surface - 3.0 - + diff --git a/sorc/ncep_post.fd/WRFPOST.f b/sorc/ncep_post.fd/WRFPOST.f index 9260cfa03..571174dd7 100644 --- a/sorc/ncep_post.fd/WRFPOST.f +++ b/sorc/ncep_post.fd/WRFPOST.f @@ -444,6 +444,9 @@ PROGRAM WRFPOST print*,'landsfcmdl not found; assigning to 2' iSF_SURFACE_PHYSICS=2 !set LSM physics to 2 for NOAH endif + if(iSF_SURFACE_PHYSICS<2)then + iSF_SURFACE_PHYSICS=2 !set LSM physics to 2 for NOAH + endif Status=nf90_get_att(ncid2d,nf90_global,'nsoil', NSOIL) if(Status/=0)then print*,'nsoil not found; assigning to 4' From feb5a759bc8c5a0085f8f74f1c6999fb464daa0b Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 6 Dec 2021 19:35:06 +0000 Subject: [PATCH 44/46] Changing experimental ceiling level type from "ceiling" to "cloud_ceilng" --- parm/post_avblflds.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/post_avblflds.xml b/parm/post_avblflds.xml index 58d01429b..4d90e4d9b 100755 --- a/parm/post_avblflds.xml +++ b/parm/post_avblflds.xml @@ -4284,7 +4284,7 @@ 487 GSD_EXP_CEILING CEIL - ceiling + cloud_ceilng 3.0 From f1a8b449703f02153912d67ad6f6bf61a6897b3a Mon Sep 17 00:00:00 2001 From: eric james Date: Mon, 6 Dec 2021 19:49:15 +0000 Subject: [PATCH 45/46] Updating 3drtma_postcntrl.xml with revised name for GSD_EXP_CEILING. This also affects postxconfig-NT-3drtma.txt. postxconfig-NT-fv3lam_rrfs.txt also changed due to changes in post_avblflds.xml --- parm/3drtma_postcntrl.xml | 2 +- parm/postxconfig-NT-3drtma.txt | 6 +++--- parm/postxconfig-NT-fv3lam_rrfs.txt | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/parm/3drtma_postcntrl.xml b/parm/3drtma_postcntrl.xml index 7a2e66270..23471ce22 100755 --- a/parm/3drtma_postcntrl.xml +++ b/parm/3drtma_postcntrl.xml @@ -633,7 +633,7 @@ - GSD_PRES_ON_CLOUD_BASE + GSD_EXP_CEILING 3.0 diff --git a/parm/postxconfig-NT-3drtma.txt b/parm/postxconfig-NT-3drtma.txt index 117c58e78..9f2e336f3 100644 --- a/parm/postxconfig-NT-3drtma.txt +++ b/parm/postxconfig-NT-3drtma.txt @@ -3941,14 +3941,14 @@ spec_hgt_lvl_above_grnd ? ? 487 -GSD_PRES_ON_CLOUD_BASE +GSD_EXP_CEILING ? 1 tmpl4_0 -PRES +CEIL ? ? -cloud_base +cloud_ceilng 0 ? 0 diff --git a/parm/postxconfig-NT-fv3lam_rrfs.txt b/parm/postxconfig-NT-fv3lam_rrfs.txt index afdc408ed..443730cb2 100644 --- a/parm/postxconfig-NT-fv3lam_rrfs.txt +++ b/parm/postxconfig-NT-fv3lam_rrfs.txt @@ -7906,7 +7906,7 @@ tmpl4_0 CEIL ? ? -ceiling +cloud_ceilng 0 ? 0 From 368fef68d5d07be6af6cf188cc3b15bd0f12ffe4 Mon Sep 17 00:00:00 2001 From: eric james Date: Tue, 7 Dec 2021 20:44:25 +0000 Subject: [PATCH 46/46] Introducing if statement for call of NGMSLP, to avoid calling unless it is needed. --- sorc/ncep_post.fd/MDLFLD.f | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sorc/ncep_post.fd/MDLFLD.f b/sorc/ncep_post.fd/MDLFLD.f index 56663ff74..e1beeefc3 100644 --- a/sorc/ncep_post.fd/MDLFLD.f +++ b/sorc/ncep_post.fd/MDLFLD.f @@ -201,7 +201,9 @@ SUBROUTINE MDLFLD ALLOCATE(PBLRI (IM,JSTA_2L:JEND_2U)) ! ! SECOND, STANDARD NGM SEA LEVEL PRESSURE. - CALL NGMSLP ! this value is used in some later calculation. + IF (IGET(105) > 0 .OR. IGET(445) > 0) THEN + CALL NGMSLP ! this value is used in some later calculation. + ENDIF IF (IGET(105) > 0) THEN !$omp parallel do private(i,j) DO J=JSTA,JEND