From 811d5d81f2dc86b623951bf06fc6a506c8c21998 Mon Sep 17 00:00:00 2001 From: johnhg Date: Mon, 25 Jul 2022 13:18:39 -0600 Subject: [PATCH] Update develop-ref after #2203 and #2205 (#2210) Co-authored-by: johnhg Co-authored-by: John Halley Gotway Co-authored-by: Julie Prestopnik Co-authored-by: John Halley Gotway Co-authored-by: jprestop Co-authored-by: Howard Soh Co-authored-by: j-opatz <59586397+j-opatz@users.noreply.github.com> Co-authored-by: Randy Bullock Co-authored-by: davidfillmore Co-authored-by: rgbullock Co-authored-by: Seth Linden Co-authored-by: George McCabe <23407799+georgemccabe@users.noreply.github.com> Co-authored-by: Seth Linden Co-authored-by: Howard Soh Co-authored-by: Seth Linden Co-authored-by: hsoh-u Co-authored-by: John Halley Gotway Co-authored-by: MET Tools Test Account Co-authored-by: mo-mglover <78152252+mo-mglover@users.noreply.github.com> Co-authored-by: davidalbo Co-authored-by: lisagoodrich <33230218+lisagoodrich@users.noreply.github.com> Co-authored-by: Dan Adriaansen Co-authored-by: Dave Albo Co-authored-by: Molly Smith --- data/config/Ascii2NcConfig_default | 2 +- data/config/IODA2NCConfig_default | 2 +- data/config/Madis2NcConfig_default | 2 +- data/config/PB2NCConfig_default | 2 +- data/table_files/grib2_mrms.txt | 184 +-- docs/Flowchart/MET_flowchart_v2.0.png | Bin 74727 -> 120070 bytes docs/Flowchart/MET_flowchart_v3.0.png | Bin 131420 -> 132917 bytes docs/Flowchart/MET_flowchart_v3.1.png | Bin 91895 -> 133980 bytes docs/Users_Guide/appendixA.rst | 12 +- docs/Users_Guide/config_options.rst | 34 +- docs/Users_Guide/release-notes.rst | 365 +---- docs/conf.py | 6 +- internal/scripts/docker/Dockerfile | 2 +- internal/scripts/docker/README.md | 10 +- internal/scripts/docker/build_met_docker.sh | 1 + .../sonarqube/python.sonar-project.properties | 0 .../config/Ascii2NcConfig_rain_01H_sum | 52 + internal/test_unit/xml/unit_ascii2nc.xml | 16 + .../test_unit/xml/unit_plot_data_plane.xml | 16 +- src/basic/vx_util/util_constants.h | 1 + src/libcode/vx_data2d/level_info.cc | 22 +- src/libcode/vx_data2d/level_info.h | 8 +- src/libcode/vx_data2d_nc_met/met_file.cc | 199 +-- .../vx_data2d_nc_pinterp/data2d_nc_pinterp.cc | 20 +- .../vx_data2d_nc_pinterp/pinterp_file.cc | 169 +-- .../vx_data2d_nc_pinterp/pinterp_file.h | 1 + .../var_info_nc_pinterp.cc | 74 +- .../var_info_nc_pinterp.h | 21 +- src/libcode/vx_data2d_nccf/data2d_nccf.cc | 202 ++- src/libcode/vx_data2d_nccf/data2d_nccf.h | 5 +- src/libcode/vx_data2d_nccf/nccf_file.cc | 393 ++---- src/libcode/vx_data2d_nccf/nccf_file.h | 3 + src/libcode/vx_data2d_nccf/var_info_nccf.cc | 131 +- src/libcode/vx_data2d_nccf/var_info_nccf.h | 31 +- src/libcode/vx_nc_util/nc_utils.cc | 1255 ++++++++++------- src/libcode/vx_nc_util/nc_utils.h | 39 +- src/libcode/vx_nc_util/nc_var_info.cc | 114 +- src/libcode/vx_nc_util/nc_var_info.h | 25 +- src/libcode/vx_nc_util/write_netcdf.cc | 48 +- src/libcode/vx_summary/Makefile.am | 1 + src/libcode/vx_summary/Makefile.in | 20 + src/libcode/vx_summary/summary_calc_sum.cc | 43 + src/libcode/vx_summary/summary_calc_sum.h | 56 + src/libcode/vx_summary/summary_obs.cc | 22 +- src/tools/other/madis2nc/madis2nc.cc | 54 +- src/tools/other/madis2nc/madis2nc.h | 1 - .../mode_graphics/mode_nc_output_file.cc | 13 +- .../other/plot_data_plane/plot_data_plane.cc | 1 - .../other/plot_point_obs/plot_point_obs.cc | 1 - 49 files changed, 1867 insertions(+), 1812 deletions(-) rename {scripts => internal/scripts}/sonarqube/python.sonar-project.properties (100%) create mode 100644 internal/test_unit/config/Ascii2NcConfig_rain_01H_sum create mode 100644 src/libcode/vx_summary/summary_calc_sum.cc create mode 100644 src/libcode/vx_summary/summary_calc_sum.h diff --git a/data/config/Ascii2NcConfig_default b/data/config/Ascii2NcConfig_default index ed3a28a819..bfddd0edd6 100644 --- a/data/config/Ascii2NcConfig_default +++ b/data/config/Ascii2NcConfig_default @@ -25,7 +25,7 @@ time_summary = { width = 600; grib_code = [ 11, 204, 211 ]; obs_var = []; - type = [ "min", "max", "range", "mean", "stdev", "median", "p80" ]; + type = [ "min", "max", "range", "mean", "stdev", "median", "p80", "sum" ]; vld_freq = 0; vld_thresh = 0.0; } diff --git a/data/config/IODA2NCConfig_default b/data/config/IODA2NCConfig_default index b1ac078d9c..4f6e573e7a 100644 --- a/data/config/IODA2NCConfig_default +++ b/data/config/IODA2NCConfig_default @@ -117,7 +117,7 @@ time_summary = { width = 600; grib_code = []; obs_var = [ "TMP", "WDIR", "RH" ]; - type = [ "min", "max", "range", "mean", "stdev", "median", "p80" ]; + type = [ "min", "max", "range", "mean", "stdev", "median", "p80", "sum" ]; vld_freq = 0; vld_thresh = 0.0; } diff --git a/data/config/Madis2NcConfig_default b/data/config/Madis2NcConfig_default index 36a44cb8bc..406120ab27 100644 --- a/data/config/Madis2NcConfig_default +++ b/data/config/Madis2NcConfig_default @@ -25,7 +25,7 @@ time_summary = { width = 600; grib_code = [ 11, 204, 211 ]; obs_var = []; - type = [ "min", "max", "range", "mean", "stdev", "median", "p80" ]; + type = [ "min", "max", "range", "mean", "stdev", "median", "p80", "sum" ]; vld_freq = 0; vld_thresh = 0.0; } diff --git a/data/config/PB2NCConfig_default b/data/config/PB2NCConfig_default index f765d98ec3..dd2351eabe 100644 --- a/data/config/PB2NCConfig_default +++ b/data/config/PB2NCConfig_default @@ -148,7 +148,7 @@ time_summary = { width = 600; grib_code = []; obs_var = [ "TMP", "WDIR", "RH" ]; - type = [ "min", "max", "range", "mean", "stdev", "median", "p80" ]; + type = [ "min", "max", "range", "mean", "stdev", "median", "p80", "sum" ]; vld_freq = 0; vld_thresh = 0.0; } diff --git a/data/table_files/grib2_mrms.txt b/data/table_files/grib2_mrms.txt index 4e1a9b6e5e..0b00086744 100644 --- a/data/table_files/grib2_mrms.txt +++ b/data/table_files/grib2_mrms.txt @@ -1,9 +1,12 @@ GRIB2 -209 10 0 255 161 1 2 0 "LightningDensityNLDN1min" "CG Lightning Density 1-min - NLDN" "flashes/km^2/min" -209 10 0 255 161 1 2 1 "LightningDensityNLDN5min" "CG Lightning Density 5-min - NLDN" "flashes/km^2/min" -209 10 0 255 161 1 2 2 "LightningDensityNLDN15min" "CG Lightning Density 15-min - NLDN" "flashes/km^2/min" -209 10 0 255 161 1 2 3 "LightningDensityNLDN30min" "CG Lightning Density 30-min - NLDN" "flashes/km^2/min" -209 10 0 255 161 1 2 4 "LightningProbabilityNext30min" "Lightning Probability 0-30 minutes - NLDN" "%" +209 10 0 255 161 1 2 0 "NLDN_CG_001min_AvgDensity" "CG Lightning Density 1-min - NLDN" "flashes/km^2/min" +209 10 0 255 161 1 2 1 "NLDN_CG_005min_AvgDensity" "CG Lightning Density 5-min - NLDN" "flashes/km^2/min" +209 10 0 255 161 1 2 2 "NLDN_CG_015min_AvgDensity" "CG Lightning Density 15-min - NLDN" "flashes/km^2/min" +209 10 0 255 161 1 2 3 "NLDN_CG_030min_AvgDensity" "CG Lightning Density 30-min - NLDN" "flashes/km^2/min" +209 10 0 255 161 1 2 5 "LightningProbabilityNext30minGrid" "Lightning Probability 0-30 minutes - NLDN" "%" +209 10 0 255 161 1 2 6 "LightningProbabilityNext60minGrid" "Lightning Probability 0-60 minutes - NLDN" "%" +209 10 0 255 161 1 2 7 "LightningJumpGrid" "Rapid lightning increases and decreases" "non-dim" +209 10 0 255 161 1 2 8 "LightningJumpGrid_Max_005min" "Rapid lightning increases and decreases over 5-minutes" "non-dim" 209 10 0 255 161 1 3 0 "MergedAzShear0to2kmAGL" "Azimuth Shear 0-2km AGL" "0.001/s" 209 10 0 255 161 1 3 1 "MergedAzShear3to6kmAGL" "Azimuth Shear 3-6km AGL" "0.001/s" 209 10 0 255 161 1 3 2 "RotationTrack30min" "Rotation Track 0-2km AGL 30-min" "0.001/s" @@ -27,8 +30,10 @@ GRIB2 209 10 0 255 161 1 3 32 "MESHMax240min" "MESH Hail Swath 240-min" "mm" 209 10 0 255 161 1 3 33 "MESHMax360min" "MESH Hail Swath 360-min" "mm" 209 10 0 255 161 1 3 34 "MESHMax1440min" "MESH Hail Swath 1440-min" "mm" +209 10 0 255 161 1 3 37 "VIL_Max_120min" "VIL Swath 120-min" "kg/m^2" +209 10 0 255 161 1 3 40 "VIL_Max_1440min" "VIL Swath 1440-min" "kg/m^2" 209 10 0 255 161 1 3 41 "VIL" "Vertically Integrated Liquid" "kg/m^2" -209 10 0 255 161 1 3 42 "VILDensity" "Vertically Integrated Liquid Density" "g/m^3" +209 10 0 255 161 1 3 42 "VIL_Density" "Vertically Integrated Liquid Density" "g/m^3" 209 10 0 255 161 1 3 43 "VII" "Vertically Integrated Ice" "kg/m^2" 209 10 0 255 161 1 3 44 "EchoTop18" "Echo Top - 18 dBZ" "km MSL" 209 10 0 255 161 1 3 45 "EchoTop30" "Echo Top - 30 dBZ" "km MSL" @@ -38,65 +43,72 @@ GRIB2 209 10 0 255 161 1 3 49 "H50Above0C" "Thickness [50 dBZ top - 0C]" "km" 209 10 0 255 161 1 3 50 "H60AboveM20C" "Thickness [60 dBZ top - (-20C)]" "km" 209 10 0 255 161 1 3 51 "H60Above0C" "Thickness [60 dBZ top - 0C]" "km" -209 10 0 255 161 1 3 52 "Reflectivity0C" "Isothermal Reflectivity at 0C" "dBZ" -209 10 0 255 161 1 3 53 "ReflectivityM5C" "Isothermal Reflectivity at -5C" "dBZ" -209 10 0 255 161 1 3 54 "ReflectivityM10C" "Isothermal Reflectivity at -10C" "dBZ" -209 10 0 255 161 1 3 55 "ReflectivityM15C" "Isothermal Reflectivity at -15C" "dBZ" -209 10 0 255 161 1 3 56 "ReflectivityM20C" "Isothermal Reflectivity at -20C" "dBZ" +209 10 0 255 161 1 3 52 "Reflectivity_0C" "Isothermal Reflectivity at 0C" "dBZ" +209 10 0 255 161 1 3 53 "Reflectivity_-5C" "Isothermal Reflectivity at -5C" "dBZ" +209 10 0 255 161 1 3 54 "Reflectivity_-10C" "Isothermal Reflectivity at -10C" "dBZ" +209 10 0 255 161 1 3 55 "Reflectivity_-15C " "Isothermal Reflectivity at -15C" "dBZ" +209 10 0 255 161 1 3 56 "Reflectivity_-20C" "Isothermal Reflectivity at -20C" "dBZ" 209 10 0 255 161 1 3 57 "ReflectivityAtLowestAltitude" "ReflectivityAtLowestAltitude" "dBZ" 209 10 0 255 161 1 3 58 "MergedReflectivityAtLowestAltitude" "Non Quality Controlled Reflectivity At Lowest Altitude" "dBZ" -209 10 0 255 161 1 4 0 "IRband4" "Infrared (E/W blend)" "K" -209 10 0 255 161 1 4 1 "Visible" "Visible (E/W blend)" "non-dim" -209 10 0 255 161 1 4 2 "WaterVapor" "Water Vapor (E/W blend)" "K" -209 10 0 255 161 1 4 3 "CloudCover" "Cloud Cover" "K" 209 10 0 255 161 1 6 0 "PrecipFlag" "Surface Precipitation Type" "type" 209 10 0 255 161 1 6 1 "PrecipRate" "Radar Precipitation Rate" "mm/hr" -209 10 0 255 161 1 6 2 "RadarOnlyQPE01H" "Radar precipitation accumulation 1-hour" "mm" -209 10 0 255 161 1 6 3 "RadarOnlyQPE03H" "Radar precipitation accumulation 3-hour" "mm" -209 10 0 255 161 1 6 4 "RadarOnlyQPE06H" "Radar precipitation accumulation 6-hour" "mm" -209 10 0 255 161 1 6 5 "RadarOnlyQPE12H" "Radar precipitation accumulation 12-hour" "mm" -209 10 0 255 161 1 6 6 "RadarOnlyQPE24H" "Radar precipitation accumulation 24-hour" "mm" -209 10 0 255 161 1 6 7 "RadarOnlyQPE48H" "Radar precipitation accumulation 48-hour" "mm" -209 10 0 255 161 1 6 8 "RadarOnlyQPE72H" "Radar precipitation accumulation 72-hour" "mm" -209 10 0 255 161 1 6 9 "GaugeCorrQPE01H" "Local gauge bias corrected radar precipitation accumulation 1-hour" "mm" -209 10 0 255 161 1 6 10 "GaugeCorrQPE03H" "Local gauge bias corrected radar precipitation accumulation 3-hour" "mm" -209 10 0 255 161 1 6 11 "GaugeCorrQPE06H" "Local gauge bias corrected radar precipitation accumulation 6-hour" "mm" -209 10 0 255 161 1 6 12 "GaugeCorrQPE12H" "Local gauge bias corrected radar precipitation accumulation 12-hour" "mm" -209 10 0 255 161 1 6 13 "GaugeCorrQPE24H" "Local gauge bias corrected radar precipitation accumulation 24-hour" "mm" -209 10 0 255 161 1 6 14 "GaugeCorrQPE48H" "Local gauge bias corrected radar precipitation accumulation 48-hour" "mm" -209 10 0 255 161 1 6 15 "GaugeCorrQPE72H" "Local gauge bias corrected radar precipitation accumulation 72-hour" "mm" -209 10 0 255 161 1 6 16 "GaugeOnlyQPE01H" "Gauge only precipitation accumulation 1-hour" "mm" -209 10 0 255 161 1 6 17 "GaugeOnlyQPE03H" "Gauge only precipitation accumulation 3-hour" "mm" -209 10 0 255 161 1 6 18 "GaugeOnlyQPE06H" "Gauge only precipitation accumulation 6-hour" "mm" -209 10 0 255 161 1 6 19 "GaugeOnlyQPE12H" "Gauge only precipitation accumulation 12-hour" "mm" -209 10 0 255 161 1 6 20 "GaugeOnlyQPE24H" "Gauge only precipitation accumulation 24-hour" "mm" -209 10 0 255 161 1 6 21 "GaugeOnlyQPE48H" "Gauge only precipitation accumulation 48-hour" "mm" -209 10 0 255 161 1 6 22 "GaugeOnlyQPE72H" "Gauge only precipitation accumulation 72-hour" "mm" -209 10 0 255 161 1 6 23 "MountainMapperQPE01H" "Mountain Mapper precipitation accumulation 1-hour" "mm" -209 10 0 255 161 1 6 24 "MountainMapperQPE03H" "Mountain Mapper precipitation accumulation 3-hour" "mm" -209 10 0 255 161 1 6 25 "MountainMapperQPE06H" "Mountain Mapper precipitation accumulation 6-hour" "mm" -209 10 0 255 161 1 6 26 "MountainMapperQPE12H" "Mountain Mapper precipitation accumulation 12-hour" "mm" -209 10 0 255 161 1 6 27 "MountainMapperQPE24H" "Mountain Mapper precipitation accumulation 24-hour" "mm" -209 10 0 255 161 1 6 28 "MountainMapperQPE48H" "Mountain Mapper precipitation accumulation 48-hour" "mm" -209 10 0 255 161 1 6 29 "MountainMapperQPE72H" "Mountain Mapper precipitation accumulation 72-hour" "mm" -209 10 0 255 161 1 7 0 "ModelSurfaceTemp" "Model Surface temperature [RAP 13km]" "C" -209 10 0 255 161 1 7 1 "ModelWetBulbTemp" "Model Surface wet bulb temperature [RAP 13km]" "C" -209 10 0 255 161 1 7 2 "WarmRainProbability" "Probability of warm rain [RAP 13km derived]" "%" -209 10 0 255 161 1 7 3 "ModelHeight0C" "Model Freezing Level Height [RAP 13km]" "m MSL" -209 10 0 255 161 1 7 4 "BrightBandTopHeight" "Brightband Top Radar [RAP 13km derived]" "m AGL" -209 10 0 255 161 1 7 5 "BrightBandBottomHeight" "Brightband Bottom Radar [RAP 13km derived]" "m AGL" +209 10 0 255 161 1 6 2 "RadarOnly_QPE_01H" "Radar precipitation accumulation 1-hour" "mm" +209 10 0 255 161 1 6 3 "RadarOnly_QPE_03H" "Radar precipitation accumulation 3-hour" "mm" +209 10 0 255 161 1 6 4 "RadarOnly_QPE_06H" "Radar precipitation accumulation 6-hour" "mm" +209 10 0 255 161 1 6 5 "RadarOnly_QPE_12H" "Radar precipitation accumulation 12-hour" "mm" +209 10 0 255 161 1 6 6 "RadarOnly_QPE_24H" "Radar precipitation accumulation 24-hour" "mm" +209 10 0 255 161 1 6 7 "RadarOnly_QPE_48H" "Radar precipitation accumulation 48-hour" "mm" +209 10 0 255 161 1 6 8 "RadarOnly_QPE_72H" "Radar precipitation accumulation 72-hour" "mm" +209 10 0 255 161 1 6 30 "MultiSensor_QPE_01H_Pass1" "Multi-sensor accumulation 1-hour Pass1" "mm" +209 10 0 255 161 1 6 31 "MultiSensor_QPE_03H_Pass1" "Multi-sensor accumulation 3-hour Pass1" "mm" +209 10 0 255 161 1 6 32 "MultiSensor_QPE_06H_Pass1" "Multi-sensor accumulation 6-hour Pass1" "mm" +209 10 0 255 161 1 6 33 "MultiSensor_QPE_12H_Pass1" "Multi-sensor accumulation 12-hour Pass1" "mm" +209 10 0 255 161 1 6 34 "MultiSensor_QPE_24H_Pass1" "Multi-sensor accumulation 24-hour Pass1" "mm" +209 10 0 255 161 1 6 35 "MultiSensor_QPE_48H_Pass1" "Multi-sensor accumulation 48-hour Pass1" "mm" +209 10 0 255 161 1 6 36 "MultiSensor_QPE_72H_Pass1" "Multi-sensor accumulation 72-hour Pass1" "mm" +209 10 0 255 161 1 6 37 "MultiSensor_QPE_01H_Pass2" "Multi-sensor accumulation 1-hour Pass2" "mm" +209 10 0 255 161 1 6 38 "MultiSensor_QPE_03H_Pass2" "Multi-sensor accumulation 3-hour Pass2" "mm" +209 10 0 255 161 1 6 39 "MultiSensor_QPE_06H_Pass2" "Multi-sensor accumulation 6-hour Pass2" "mm" +209 10 0 255 161 1 6 40 "MultiSensor_QPE_12H_Pass2" "Multi-sensor accumulation 12-hour Pass2" "mm" +209 10 0 255 161 1 6 41 "MultiSensor_QPE_24H_Pass2" "Multi-sensor accumulation 24-hour Pass2" "mm" +209 10 0 255 161 1 6 42 "MultiSensor_QPE_48H_Pass2" "Multi-sensor accumulation 48-hour Pass2" "mm" +209 10 0 255 161 1 6 43 "MultiSensor_QPE_72H_Pass2" "Multi-sensor accumulation 72-hour Pass2" "mm" +209 10 0 255 161 1 6 44 "SyntheticPrecipRateID" "Method IDs for blended single and dual-pol derived precip rates" "flag" +209 10 0 255 161 1 6 45 "RadarOnly_QPE_15M" "Radar precipitation accumulation 15-minute" "mm" +209 10 0 255 161 1 6 46 "RadarOnly_QPE_Since12Z" "Radar precipitation accumulation since 12Z" "mm" +209 10 0 255 161 1 7 0 "Model_SurfaceTemp" "Model Surface temperature" "C" +209 10 0 255 161 1 7 1 "Model_WetBulbTemp" "Model Surface wet bulb temperature" "C" +209 10 0 255 161 1 7 2 "WarmRainProbability" "Probability of warm rain" "%" +209 10 0 255 161 1 7 3 "Model_0degC_Height" "Model Freezing Level Height" "m MSL" +209 10 0 255 161 1 7 4 "BrightBandTopHeight" "Brightband Top Height" "m AGL" +209 10 0 255 161 1 7 5 "BrightBandBottomHeight" "Brightband Bottom Height" "m AGL" 209 10 0 255 161 1 8 0 "RadarQualityIndex" "Radar Quality Index" "non-dim" -209 10 0 255 161 1 8 1 "GaugeInflIndex01H" "Gauge Influence Index for 1-hour QPE" "non-dim" -209 10 0 255 161 1 8 2 "GaugeInflIndex03H" "Gauge Influence Index for 3-hour QPE" "non-dim" -209 10 0 255 161 1 8 3 "GaugeInflIndex06H" "Gauge Influence Index for 6-hour QPE" "non-dim" -209 10 0 255 161 1 8 4 "GaugeInflIndex12H" "Gauge Influence Index for 12-hour QPE" "non-dim" -209 10 0 255 161 1 8 5 "GaugeInflIndex24H" "Gauge Influence Index for 24-hour QPE" "non-dim" -209 10 0 255 161 1 8 6 "GaugeInflIndex48H" "Gauge Influence Index for 48-hour QPE" "non-dim" -209 10 0 255 161 1 8 7 "GaugeInflIndex72H" "Gauge Influence Index for 72-hour QPE" "non-dim" +209 10 0 255 161 1 8 1 "GaugeInflIndex_01H_Pass1" "Gauge Influence Index for 1-hour QPE Pass1" "non-dim" +209 10 0 255 161 1 8 2 "GaugeInflIndex_03H_Pass1" "Gauge Influence Index for 3-hour QPE Pass1" "non-dim" +209 10 0 255 161 1 8 3 "GaugeInflIndex_06H_Pass1" "Gauge Influence Index for 6-hour QPE Pass1" "non-dim" +209 10 0 255 161 1 8 4 "GaugeInflIndex_12H_Pass1" "Gauge Influence Index for 12-hour QPE Pass1" "non-dim" +209 10 0 255 161 1 8 5 "GaugeInflIndex_24H_Pass1" "Gauge Influence Index for 24-hour QPE Pass1" "non-dim" +209 10 0 255 161 1 8 6 "GaugeInflIndex_48H_Pass1" "Gauge Influence Index for 48-hour QPE Pass1" "non-dim" +209 10 0 255 161 1 8 7 "GaugeInflIndex_72H_Pass1" "Gauge Influence Index for 72-hour QPE Pass1" "non-dim" 209 10 0 255 161 1 8 8 "SeamlessHSR" "Seamless Hybrid Scan Reflectivity with VPR correction" "dBZ" 209 10 0 255 161 1 8 9 "SeamlessHSRHeight" "Height of Seamless Hybrid Scan Reflectivity" "km AGL" -209 10 0 255 161 1 9 0 "ConusMergedReflectivityQC" "WSR-88D 3D Reflectivty Mosaic - 33 CAPPIS (500-19000m)" "dBZ" -209 10 0 255 161 1 9 1 "ConusPlusMergedReflectivityQC" "All Radar 3D Reflectivty Mosaic - 33 CAPPIS (500-19000m)" "dBZ" +209 10 0 255 161 1 8 10 "RadarAccumulationQualityIndex_01H" "Radar 1-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 11 "RadarAccumulationQualityIndex_03H" "Radar 3-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 12 "RadarAccumulationQualityIndex_06H" "Radar 6-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 13 "RadarAccumulationQualityIndex_12H" "Radar 12-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 14 "RadarAccumulationQualityIndex_24H" "Radar 24-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 15 "RadarAccumulationQualityIndex_48H" "Radar 48-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 16 "RadarAccumulationQualityIndex_72H" "Radar 72-hour QPE Accumulation Quality" "non-dim" +209 10 0 255 161 1 8 17 "GaugeInflIndex_01H_Pass2" "Gauge Influence Index for 1-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 8 18 "GaugeInflIndex_03H_Pass2" "Gauge Influence Index for 3-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 8 19 "GaugeInflIndex_06H_Pass2" "Gauge Influence Index for 6-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 8 20 "GaugeInflIndex_12H_Pass2" "Gauge Influence Index for 12-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 8 21 "GaugeInflIndex_24H_Pass2" "Gauge Influence Index for 24-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 8 22 "GaugeInflIndex_48H_Pass2" "Gauge Influence Index for 48-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 8 23 "GaugeInflIndex_72H_Pass2" "Gauge Influence Index for 72-hour QPE Pass2" "non-dim" +209 10 0 255 161 1 9 0 "MergedReflectivityQC" "3D Reflectivty Mosaic - 33 CAPPIS (500-19000m)" "dBZ" +209 10 0 255 161 1 9 3 "MergedRhoHV" "3D RhoHV Mosaic - 33 CAPPIS (500-19000m)" "non-dim" +209 10 0 255 161 1 9 4 "MergedZdr" "3D Zdr Mosaic - 33 CAPPIS (500-19000m)" "dB" 209 10 0 255 161 1 10 0 "MergedReflectivityQCComposite" "Composite Reflectivity Mosaic (optimal method)" "dBZ" 209 10 0 255 161 1 10 1 "HeightCompositeReflectivity" "Height of Composite Reflectivity Mosaic (optimal method)" "m MSL" 209 10 0 255 161 1 10 2 "LowLevelCompositeReflectivity" "Low-Level Composite Reflectivity Mosaic (0-4km)" "dBZ" @@ -104,33 +116,33 @@ GRIB2 209 10 0 255 161 1 10 4 "LayerCompositeReflectivity_Low" "Layer Composite Reflectivity Mosaic 0-24kft (low altitude)" "dBZ" 209 10 0 255 161 1 10 5 "LayerCompositeReflectivity_High" "Layer Composite Reflectivity Mosaic 24-60 kft (highest altitude)" "dBZ" 209 10 0 255 161 1 10 6 "LayerCompositeReflectivity_Super" "Layer Composite Reflectivity Mosaic 33-60 kft (super high altitude)" "dBZ" -209 10 0 255 161 1 10 7 "ReflectivityCompositeHourlyMax" "Composite Reflectivity Hourly Maximum" "dBZ" -209 10 0 255 161 1 10 9 "LayerCompositeReflectivity_ANC" "Layer Composite Reflectivity Mosaic (2-4.5km) (forANC)" "dBZ" +209 10 0 255 161 1 10 7 "CREF_1HR_MAX" "Composite Reflectivity Hourly Maximum" "dBZ" +209 10 0 255 161 1 10 9 "LayerCompositeReflectivity_ANC" "Layer Composite Reflectivity Mosaic (2-4.5km) (for ANC)" "dBZ" +209 10 0 255 161 1 10 10 "BREF_1HR_MAX" "Base Reflectivity Hourly Maximum" "dBZ" 209 10 0 255 161 1 11 0 "MergedBaseReflectivityQC" "Mosaic Base Reflectivity (optimal method)" "dBZ" -209 10 0 255 161 1 11 1 "MergedReflectivityComposite" "dBZ" "Raw Composite Reflectivity Mosaic (max ref)" +209 10 0 255 161 1 11 1 "MergedReflectivityComposite" "Raw Composite Reflectivity Mosaic (max ref)" "dBZ" 209 10 0 255 161 1 11 2 "MergedReflectivityQComposite" "Composite Reflectivity Mosaic (max ref)" "dBZ" -209 10 0 255 161 1 11 3 "MergedBaseReflectivity" "dBZ" "Raw Base Reflectivity Mosaic (optimal method)" -209 10 0 255 161 1 11 4 "Merged_LVL3_BaseHCA" "flag" "Level III Base HCA Mosaic (nearest neighbor)" -209 10 0 255 161 1 12 0 "FLASH_CREST_MAXUNITSTREAMFLOW" "m^3/s/km^2" "FLASH QPE-CREST Unit Streamflow" -209 10 0 255 161 1 12 1 "FLASH_CREST_MAXSTREAMFLOW" "m^3/s" "FLASH QPE-CREST Streamflow" -209 10 0 255 161 1 12 2 "FLASH_CREST_MAXSOILSAT" "%" "FLASH QPE-CREST Soil Saturation" -209 10 0 255 161 1 12 4 "FLASH_SAC_MAXUNITSTREAMFLOW" "m^3/s/km^2" "FLASH QPE-SAC Unit Streamflow" -209 10 0 255 161 1 12 5 "FLASH_SAC_MAXSTREAMFLOW" "m^3/s" "FLASH QPE-SAC Streamflow" -209 10 0 255 161 1 12 6 "FLASH_SAC_MAXSOILSAT" "%" "FLASH QPE-SAC Soil Saturation" -209 10 0 255 161 1 12 14 "FLASH_QPE_ARI30M" "years" "FLASH QPE Average Recurrence Interval 30-min" -209 10 0 255 161 1 12 15 "FLASH_QPE_ARI01H" "years" "FLASH QPE Average Recurrence Interval 01H" -209 10 0 255 161 1 12 16 "FLASH_QPE_ARI03H" "years" "FLASH QPE Average Recurrence Interval 03H" -209 10 0 255 161 1 12 17 "FLASH_QPE_ARI06H" "years" "FLASH QPE Average Recurrence Interval 06H" -209 10 0 255 161 1 12 18 "FLASH_QPE_ARI12H" "years" "FLASH QPE Average Recurrence Interval 12H" -209 10 0 255 161 1 12 19 "FLASH_QPE_ARI24H" "years" "FLASH QPE Average Recurrence Interval 24H" -209 10 0 255 161 1 12 20 "FLASH_QPE_MAX" "years" "FLASH QPE Average Recurrence Interval Maximum" -209 10 0 255 161 1 12 26 "FLASH_QPE_FFG01H" "non-dim" "FLASH QPE-to-FFG Ratio 01H" -209 10 0 255 161 1 12 27 "FLASH_QPE_FFG03H" "non-dim" "FLASH QPE-to-FFG Ratio 03H" -209 10 0 255 161 1 12 28 "FLASH_QPE_FFG06H" "non-dim" "FLASH QPE-to-FFG Ratio 06H" -209 10 0 255 161 1 12 29 "FLASH_QPE_FFGMAX" "non-dim" "FLASH QPE-to-FFG Ratio Maximum" -209 10 0 255 161 1 12 39 "FLASH_HP_MAXUNITSTREAMFLOW" "m^3/s/km^2" "FLASH QPE-Hydrophobic Unit Streamflow" -209 10 0 255 161 1 12 40 "FLASH_HP_MAXSTREAMFLOW" "m^3/s" "FLASH QPE-Hydrophobic Streamflow" -209 10 0 255 161 1 13 0 "ANC_ConvectiveLikelihood" "non-dim" "Likelihood of convection over the next 01H" -209 10 0 255 161 1 13 1 "ANC_FinalForecast" "dBZ" "01H reflectivity forecast" -209 10 0 255 161 1 14 0 "LVL3_HREET" "kft" "Level III High Resolution Enhanced Echo Top mosaic" -209 10 0 255 161 1 14 1 "LVL3_HighResVIL" "kg/m^2" "Level III High Resouion VIL mosaic" \ No newline at end of file +209 10 0 255 161 1 11 3 "MergedBaseReflectivity" "Raw Base Reflectivity Mosaic (optimal method)" "dBZ" +209 10 0 255 161 1 12 0 "FLASH_CREST_MAXUNITSTREAMFLOW" "FLASH QPE-CREST Unit Streamflow" "m^3/s/km^2" +209 10 0 255 161 1 12 1 "FLASH_CREST_MAXSTREAMFLOW" "FLASH QPE-CREST Streamflow" "m^3/s" +209 10 0 255 161 1 12 2 "FLASH_CREST_MAXSOILSAT" "FLASH QPE-CREST Soil Saturation" "%" +209 10 0 255 161 1 12 4 "FLASH_SAC_MAXUNITSTREAMFLOW" "FLASH QPE-SAC Unit Streamflow" "m^3/s/km^2" +209 10 0 255 161 1 12 5 "FLASH_SAC_MAXSTREAMFLOW" "FLASH QPE-SAC Streamflow" "m^3/s" +209 10 0 255 161 1 12 6 "FLASH_SAC_MAXSOILSAT" "FLASH QPE-SAC Soil Saturation" "%" +209 10 0 255 161 1 12 14 "FLASH_QPE_ARI30M" "FLASH QPE Average Recurrence Interval 30-min" "years" +209 10 0 255 161 1 12 15 "FLASH_QPE_ARI01H" "FLASH QPE Average Recurrence Interval 01H" "years" +209 10 0 255 161 1 12 16 "FLASH_QPE_ARI03H" "FLASH QPE Average Recurrence Interval 03H" "years" +209 10 0 255 161 1 12 17 "FLASH_QPE_ARI06H" "FLASH QPE Average Recurrence Interval 06H" "years" +209 10 0 255 161 1 12 18 "FLASH_QPE_ARI12H" "FLASH QPE Average Recurrence Interval 12H" "years" +209 10 0 255 161 1 12 19 "FLASH_QPE_ARI24H" "FLASH QPE Average Recurrence Interval 24H" "years" +209 10 0 255 161 1 12 20 "FLASH_QPE_ARIMAX" "FLASH QPE Average Recurrence Interval Maximum" "years" +209 10 0 255 161 1 12 26 "FLASH_QPE_FFG01H" "FLASH QPE-to-FFG Ratio 01H" "non-dim" +209 10 0 255 161 1 12 27 "FLASH_QPE_FFG03H" "FLASH QPE-to-FFG Ratio 03H" "non-dim" +209 10 0 255 161 1 12 28 "FLASH_QPE_FFG06H" "FLASH QPE-to-FFG Ratio 06H" "non-dim" +209 10 0 255 161 1 12 29 "FLASH_QPE_FFGMAX" "FLASH QPE-to-FFG Ratio Maximum" "non-dim" +209 10 0 255 161 1 12 39 "FLASH_HP_MAXUNITSTREAMFLOW" "FLASH QPE-Hydrophobic Unit Streamflow" "m^3/s/km^2" +209 10 0 255 161 1 12 40 "FLASH_HP_MAXSTREAMFLOW" "FLASH QPE-Hydrophobic Streamflow" "m^3/s" +209 10 0 255 161 1 13 0 "ANC_ConvectiveLikelihood" "Likelihood of convection over the next 01H" "non-dim" +209 10 0 255 161 1 13 1 "ANC_FinalForecast" "01H reflectivity forecast" "dBZ" +209 10 0 255 161 1 14 0 "LVL3_HREET" "Level III High Resolution Enhanced Echo Top mosaic" "kft" +209 10 0 255 161 1 14 1 "LVL3_HighResVIL" "Level III High Resouion VIL mosaic" "kg/m^2" diff --git a/docs/Flowchart/MET_flowchart_v2.0.png b/docs/Flowchart/MET_flowchart_v2.0.png index b038071276f4963fc69821d180c078019379e679..9d458afeeda5c5bee176acce18f7428b906f9075 100644 GIT binary patch literal 120070 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%0AywA(xSOB;;#xk(kASl`JX~Np~@OS9n^&gm}1) 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�G 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 ZW%F8MIn*bBt_*!Duh1y{~yZd&XoWF literal 74727 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 z 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 Zj7LwxNA$t^$_(aa@7`8Z$d@w>_+N#=Q7Zrd diff --git a/docs/Flowchart/MET_flowchart_v3.0.png b/docs/Flowchart/MET_flowchart_v3.0.png index b03670791a91692e872c4fe2ece015fa505e24eb..445f7451baf58905b8a562d32fe0ec51292401b3 100644 GIT binary patch literal 132917 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

tXmfO1nD}(^d)&md4 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 diff --git a/docs/Flowchart/MET_flowchart_v3.1.png b/docs/Flowchart/MET_flowchart_v3.1.png index 26a4a5ccb2d31c011cf129f7169dfd15f330388f..82c110964f0a4ca01d25d76c23fb38f24e3a93d8 100644 GIT binary patch literal 133980 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

rx7zm=+|vG(%N0<6JLqzPi2;uGcbh zrU)1h9LCwVC`0s~|4go7_B6x!@`WGXaFG#qkZ0;}CckI2{c|o2tYM!S36ZZKB6?6j z;BVk~a}*U{61P>7V>=8Uk$c_yJQ2W8K+gqJ%JsT8O>v+or@;PvsIh@+LolYX z$a9=XVTR0za>Dz-ut*Ua^gfDXq=9(xoAd?`D5}9sa8v+|LsbQnG4k->jmwD*lXC&V zPIlak?UxV>15C|~RNVoH9Qez3hV!B1@OI78w{!?zzYPQB+ejIO`E%vq5AiH)v#=+k zMz`<~KnwI8=Uhd!xr8pIJ-8C<`ha%+IkgfD7FlP@10bS!lwfFP1&w&**z_r2Yl3Cv z_)UZI4dOq8r#OG5q};(q_(ftw^~|>k(XD-n`ICb=z=cb|VgAl0kgqHAX05p9f{kEd ztf2o^HW6x;f*$W>dpKeDvs&k#uJgfC$cjppsaDYpJ+{~3m zN4^e+`U>YOu`HdDyVm)bzr@7IkiYKo%4gyO?ES}*|Yv}lusK9{fVj!gM22WaF4K+Z7H^FA3 zLl6*vosVo(;V-}J%H^5V(MB$W8vEk)z{_>T*>roZmHFj2ht$Mqc$O}=1cSlnsp7n- z8P>k;hL9=Y>IMJ~P6nm9g8=7S7co;uyJ!4OpXV&Z)@jbVMf0BtIRd)!`*$e_U7qii zO4O6kug%G=x3iyFM1P^sz?tZ!SjQ$q*T7$d0GF+n)iC{FZ_KfFux^8 zB?>TQxfBKK3}NIHNylZcR-BGSbv7P<8uq=tzL`aS&^Rv3$&-h=z0DKMlC>VJVwR4- z5B`~K6A9W`i#n{wU-$XZVd(~-pwlM{4RQP@GHa(vguQKI{>xt8l%+^_=4(_rkw;Z zmKwa>yp3#P1a2M9h94t6@V$*1qq9r^godR3?XXg`-E!%@`&1(P7yh$aQQB_@K4CpD zF1qgQhL4g4WIDCGO747{b;cSvB4gfFQi#Mnr+emlpg*PfEMd+xI4A2~j=PUF6o;`L z`|T$f%+%mO5m=ykD?1?#;@p}(ExAhc&kf4DxjQBLz5x?5{p2|2vM7ZA()nnd#v94G z%Qc1Ci%-1cs5_aA1}5DpGWs6DRy?lE+<*YCCU5Shtqt`g+yaB(I*G z{9O`MRC5DZpl`Lf((mDF>;AmlmOtGhwelAy9{h6spa?}*BYdf!@ zWBfZ5g(siq0)L~y}xb<1& z-RAg03>nQ6Kq2}_0}U5@yn>xm)*E9aqrHE=qtDZ5T#C;8~$#!U4F^o z+P+MK7jbZ_|L#`4y%H#2KNdm*xTA16@GZUsBUHJ~PXYVZSS3^kS*Q%ie9NI(@($+g z7ueP%$j@^Wj4=FFkJc@zJD!b0GN9r--{cSi)g3DyuhrQ7RPwPYog8Uvp?1HmMBD7tpg>J<^%Q2T~1D{^9 z0d*nmNuFGlc5K;7OQzrJ7ju672_|H35#a^Mc6R-PO91>Q`2^v zTtBS{R->4W2ZtSx;dLSY*C$ux0tAYlex5LZ%H=FTDR_=mrZd;B21>nor~d1p$XiNg zpIB#h0KIJzSZI88ZK^_{FcSGGtZh#_#&2eG|1W#ns}q9Pef!C~;84E$Qh98LjR6k7 zh!rWtZ}!_rLbr`hAJPirAYibre0Ax*5;k45Gw=@v0yywvvhfgyPSh*GMK02tnYKFJ z1S}@~j~Re|m`4fzWVVATsbNSzr!o`l&>6G=Knf1qy%)ld>bh2$eZ(v}Xv(K7P^FyL z%qmvJ+-C~*qa<#9^X#hxDlrq+(~18{^r3RuZ^vVScIFM@4jKMXK4{&MNS7JGD6=^) zee8uqeyd5}hqe0PjcY1*qV+W=`66>QQK4 zLD7(X%fa$EJ1hl5e{ZPZ3w~1_v|(wFJ5Ww^wwTFyL*W)hXPqUK+AeJUwOFk$ftjh3 zZ!`P@zhG^t2&^paKuR$Yk=|H4KxY6@P26@;x~KEk37#$kQSMHcUb=a*6~zz+oGXUi z*KGP~u(NV*XYo)fZJnW{9xj~im+muD=F9E7o(?Xe&}x(bQjmsp<%v-yn|>pCOOdmB z5ezI;gXN#X8$U{Bt{PiqPx??v5Dv&1l^-~fLgw!BBm+dK0P)Z13mY3Ecp4DC5R9C! zRc9t9CWbh9CW(y0e{iyrE&pP3yc;vtRC+d`KBLK3^j7=+TSITZPDmsY@fDl?cMo3HPjxrKkbwwp#1qSnO@Au*@fKTnTBcBS zh|V&i_0~wyH?4*yHB~b3$7PDv9EL|0@BujOt>XGBH}*L(yo)dsF?br#A^imqMz)n; z=Nnxg|H4>oN4AU4*Rif}HIdF%F4c;j&-qo0G)}i?Dds_Z&2rNUAA5CmQ|Q_qu{ODVbbk~|#FQqz!J8F4(_5nme&1Ju?Q#^Lm1lg%+4j zL`hH;C~+TDN+EG6apipY^~4`=jTnf08imE6YGoS>JP9lk$*!G}HUJ_N0n8+oM&(~1 z99hO5T<|T1M&|;*VZh`Qg=R&OM+-j}ZTuj78cg^9XU@VA zfd5+=kJS%dv~!by-$F*m`!NAjnv)er<(Y4@*< zl0%?+16~r%mBt;Ex)7DW{3`w35(^sErV6CulYrDX0D>j=WXCIQc36}aR$_9jL;)ZmT%ThDq?ZJ+z!at3ZjEQnak}H6_rz-n z{PwpBor$BRzCw#MgkDUR+$VHN`o`^Fzknh$ z(j{%ATu*L1yDdc19ah{&JDq)7_C3Y3yzWn#lj;_ozM|ab){FEjqw!7ukJNBJ!)3Vw9A*Q5EHYtNuS;fPjsZsc=J)qk4+qvm zT*N4@>E;vRnH(sv2_S;<&3R8ho%8h@DF@Ae2~Tu+|1*X_n>>Z1Abws=XgTO{JuR{6 zx^5&_Xzx?4e51`8%@?k6AS5OWy-1Ot+-E}wy?bQ0vh5s#U!*NJ-y9ZR&0f6iUj^Yd z6(zs|P|Rby1E3My3GFsIb&F~FWAL;}@a=MEG|CEQDa!WhD&Gzl#(;-{T-XIE zl3h$fH*`nH0>6WOb*=+ zLtO}%e?`%=D}et`?#BG;2R{UGdrflz2wW3T7&t8@V^q3)*~K?|KCKdXx%~LUi}Hw9 z#Tjib4aXuCfQnWlVLfCKwaRmS^P%&{gGcsFhE^x0^y5+tI??AwL}C`6CwH6e zXq@E!`Vb_%;-l4E`?!p>rLiQ&C;b`(0MEX~ zd@))fClJ00#JA%nCnW5ioSal+aF`k$!?ETgepL;M9I?smSPZ%jl(W~QQfZ8;Unn7!_Car>2XO>1S#PjF2G=iFkr?(Cc72)wdi z*xB!DhKT;51pvgHz|(F#P~1ck@?x>98d9W8g>7OO&Qx2(PG-wL)1AvJ_wbn7Z0y?L z6f#L}toSgb%btGx-zLUlVA3d#5n7 zRlR%dX0qWc3TI3;i{Y~NZ`X(<)VcfGhHyhqAQtljn4{6Cl?HWB>FMc(An%+0wQaMxAgzm;l!3T9z$u1QrSv0cP6K zK~%@raM47jo!A^iRN@Ca@6jm0P{r4A(Z69aUrG)d!&vZ3w zYFuI;n`!RL!fuI5XWF~z2y%nSs^B?Oc>+dH@}By5;z=0_NCX9!P19qP&eG?B7D1P> zE>dek{Pv3Z2O?bCOs)tl9f9a_6fjD6-paW;)CAbiz~#FC&&z%4+A0-H_qf@wSg&?F ziiwDTf&CngNUbf{+aA7h85#6@f}EQDO%`H%M_8omYV^ddpnyGt6H#H&aw_fZ2l?Mj z#tmsW;=hAiCEL8enx8k=lEI(>-Q)VEljgEA%?GE>f*GXOO>&)??6Zl{)#%nanm;+uymE!L4hvrSM+(0EsLt_3Fo+&eCME-2iXkmR5QNlNjvZs|*1T zs}kkk^$00x`4>M-2Tx3oV{J;?1q22We;IN{=JvCcqE+Yl?Yjw;>YBQlP(v_rqxgL1 z>J+>17C0}rw+g<}?S0|53_QlY@vWW{{mjwT&E?hpqztmCsqFAHP|E*3y<4KoWq*6J z#K_N2m`*l*$E^S-R~D2_i^>KMd>3g^GARn z&|%9RfHA6_rs~G|O`sWkMow@0+Q^;rs!2!3NhUe<5#@c*e-s~ll7wVqkbUK7Y=p5$ zKt+u9^fZKF(_a-hi9hITbYnmBx6#Kdd%Yt+q)}r|XyXySRELFo-|26F?FF*WKX&!g z5pd6GK9*<&^J_C(fp49Nw9gJ_zpqZ6)Ibb@4Z2>fviZ$5tqH$!Zy)}M&wIWt*-npE zk#>BYP&`x z3A@WBYO1A`Fz|WVOJnnf%QhZ9-iU}PhMb7qThz4Zz}>#D-mYI^hu`%FBj8xay*qCe zRPK5nID0Z$6*Wt!@zjB`Wjor8OgLYBN6z(7jThASQ5`UQ^coIM9 zJ;UW>{Y+=HVK&fa9%X%YZfQxN6WJ8D>FLLHFJkhzVPNPn?Vxuee0MH_&chTXnqYAydG|-mqrn-Y-jXNTOGa8 zMv*Mr_BREy6>>uwuM>f-1ZbL!Q33y##oy+dM2Wt0sctjisrobidlPhv;m6%*Iadg; z6r3UI4C4QMp|(-x@f6M9T5KFHFC&97i67aX`(bR6#rmhwzRe*b3%{kWzbVJ!Wb_96 zgUj@I{;y13kSW~HYW(jP>!!;{V_;@wZnAz5tI>>E@rWIEeb2p@rv?J}EqVguP4nGF z2H`N^?mrH+1q7i19ka+m)GHWUEyMV$kLSact;)jiwY(l89*>bjx;{t6699wDBnVb3 zjH$+7uHqFC=mgqgAiS}D6la+lewhyZlSO(58$k*J0Zw%{2M1H16ynrsvQA2#5E$O7 z(>a05`ZR@oSOx$g1ESC3(N1KIBC7lp%EGhd)8ITQ)J(R#(Lu{mfG~~#u$M_E()1aH{tCYlo0qeH#CP&#NK(%m1=G&aH9iJ0-| zb60<&<2JbL4j18NGRiE$5gKoDU0_&iOVf_qyAkm-E?W41vRcoXnKVy=y4?7TB7@~$ATEG1ArD;Scyt01&sT7}g6-Jk zg=k9XJA!xzw5`}PcVsO5R!tRlpV6gMhSY2zxJuw9ZW13rwIDaijZn(=EeO7QLl6~h zUgI*D9j`>b95JM(j%ruh*;SrvCXkeq09li`w~Cv^(M0>}GfS?_^Y`U`Re8b-27~H!)Wd$9xQfMsyTL zY*hd&X`l{59ViQ)?px#OXl6f)(%tpnfX;A3O|Y5Ss|e)TA2ATHYwQ+ z9v^ncDe4*R68SqFZ#Fy*7k7_=thTTw#XN%%!0@twh&eID-T#}r$(r6B$cf-4o~SO> zgFtM{#YR$y^}_-;$DRgez&{<}>6Qh1`$Xag-(DVSDwrpYU@2-gTA_Y=XAF>9RcH}U6{OkuBo5^g!nDcOKMj~|d?K9hNW~6(HH>vN& zfaM&Wv1g7m`;5!`j!wjEEPSqL^3uVX_@Sq{eF8hCmr^dR-&W;Xe5ybjqsW_RdF=IA zYXgVnd|iRt1KM|Fh#~aBOIe@!W}ot$Khu*O-WIDuXVeJ-?=1A*5-#iW^nQnT9(%}I zHI!Q8Q8yGDc|N3q+QB>tndjYcunH1BM~0wpr+6xmyM4OafRM@+3^7`l?fd=&K+0lo zo=>Wb8)~mV&jR^Hn3!Tea)pCQeDT>VraQbIO4W$r!T$g}IF+K>3IQr0(!2%ebCs;m zRvQ4dPefQ4TIhBMknjuq>~-`zIUyA}Ry?w?D6Og6*bX)&;**MB2m^2N-9tpOXhPH> zKu#{TKQ>`pozXz}$J>Q3-o53Fji{(72m}K9Tw!4dj^1wTnLM%O z3)|bn4A3Xk>10NIJ-`Q~eKPx7CJdciv~B}Hv;Rw!bOHVwz<}0ocGv=Tsti64r;qnH z_wP*LNGxBBG6!5k{7z6W6w%k|M^W&(w?`z1>69(~uf4y{wH+d&U|=KR9e=pX zhk0u}BTCZ!`Pt;jUvpEf)ZSR}w;unq(0#xC!vGK%8YG2| z_TQiV+1cI(fXVJ}&#uGzDK)u{iO`~+{XfwF4K4N&0yYDkUOUd&R3>keWZV}(pU^l= z%;i8b?k^0A!RM5JwEs#@E|1&jmQ?4reP)}Rk9p%Y!(3BX89t4f&W49DsM!NJX-rUs|9W;j zkv_zrM!0eI!>P19xbDGz9W7LEz=!^8&ehz^LKlg^;N7v7XwDcnp8TP6Wqh98CH1dJmLHr9X? z-Bo5Y0a(yaLbJFc9p#lSr$PW8wR>hn)$btwl>mhZu4U ztg$X2EKlG2N(`u1vOT4%>Mr8QB&O|q0-(1<@@$|gN$fkH_RFd|OULUUZikukrzmvc zV@fSAFlt60A@M{9GNr-#VupMz#=$OIdRbAM=UJ~qn47P)%zCzo*Gggb>(ErniU!S| zzCtX#=Na zhBK3MzTFA-;XSk)jpp{JyIa^tmjB#MF!>(_x^)V#{$B!rhc=B!oi+oNJZuhX8QJ^V zG-_=8y*w85nyrRup3w#N0%)U-HJz=xlrx>P8V$EddhJvRmnPbptBN%Xys40{G=3Q1 z`^fDHc1Z?L>+;sA7Zrc>`XT{hKfe;_NmtaK*eu|XJ+KCH(p9rI;3_C2L|w7n+q*U| z6$%!X_L>GRH}Vy5$VI4~y6e}OMWsYb(f_3J_z@aP`c4)R6J!6U@ytBiC+WaVGY%>v z7L0y+1)FfJ)euJyVC8Q11UhmCDd7^~IgDdIi0)BBCRsKs8_1C^LT{^8>Ts7s1l{2^ zk(x65ST5sZG3Y!3hO%Q?Kks_2T9Xl(WCkIJ9cW08-_nWG$^JBMo>qs$-|5hZm*g#X zZI|8i&Nf={B+u89#)vRn)`#)8+85GzY_%o(q&>>4tt!U7j*86fri+6ygWemy%%cC= ztL^n`jk`<|Xa3GO<>$F)tZ^oW=c-b*PKA?pm%rAHFp4vCrI@pfk;wSozT>Z7Klb)* zVE|@O+H9d89L8`}O6ox*t1HoYf2j9~A~+5#tH)S4=kmxYi>s;CEMp-%TXF9cfd!nt=bKF9CJ7bd}pzuyt;%(znZxZmWPT8uFr3E z(3oBHvRfV70iwr~H&gAD*?IDB3$|T<$q}hlOakEC8_ytt&w}|RbAaR>-fSBVuDH*0 zwF-+s*a(@7O(s zmxUOeX3?_+66ph;-+w<(x~6m3vRJPFRA@DyA_CG2;4vsRsi}0h4A_`Ug1xcKmZQ8O zOk61`LExD;;N4FAd|H8OkSDLB3DkiS+S~_3g_U|8;qHWre|iIvRulx^*w$;{AQgIu zl1AV3`83#1@07~a=~G$-UoS;cvc)WrgRcGDB)Wd)BzwW$D;o75#=YCt{*b>+^o1bp z$nTj0@d9r&up#s!)tim(&6-b4^=~_mvPJ)xABNZHHG(3)bR~ zZs#-VLly3?**z8=AYKT~upQWSrUT5k1{|-p#Sq+b$}DeqmckU};bgSSHESs3fGkhk zzfu|pW|PLtNUV^i&XW?GTRziIW|jQL#pV_k<$fU*=Kx(>1rNt$3)oY8rI8Sr7dfj~S;MBmDW!$+98j{?Y@TChj7Juy%c>s_#cL5M8nrT-8y*NHWXo?El+ zF>iX4_m)m*>tzEDuN&PfgMsqMH?7 zI1G13(5g|-5D;JeFdP;NyA2Z>j1Bier*9-9OxD5GXgj989hlxGes~zlfB23a^Ms0q z0)EQG;qov>bpqoc9|WX9(!3qgv>Qv z_}crVpAK&L>E9~B$=J^89n?IZ_L6V%9ofY##1C45nzDx&WhV8q8m(jVK6)>tNFjUB z4GJ$a?G2S#ZHD3%64$No)Mh0|1#R<7uLJ|<-{=}TJRu&(eDB@5)x@2Y;O(nUm|ZhK^G$Zb1p{n;8jIL+mNb z#yR>W3uA$uw@#Z#LMV72NiuNc=RmNmEvA(@i7$;J49QsKcB`oKMr+u|GwE{kH43LLZIB+lF@^HV~ zW(2rRv7gotUfP^pmT9r-sQYK>=l%N_R1mW36o8vcC z$Ghss9XXV)fM#0ZuI)rt`HFdSF7`L|%HM#<7J(0@X)Tg_87L+`IjW+9O9(SBKEJ{8Xbul)iK2Z8mP z#Dimm!`lA|#gbJ~9yJwpnn`$5p8i7x7f2%#-s#zZ#K+p!O(15oh=qfuM|LC&L=q{e zX@bsMg2#tBul@L zN6DHSZ6(hxix4zL{wruTF@MEh!CX>Ri!-Y^@bht+oOiJgCUm(AHN>_iGhCechN#t} zSz@7>&v&0d(qs?e1b{-R-3L>KFS|mc;3TG+Ng*8Y(A|Y-5M?3twjiS^Iosk+&KVIR zAb!CMzRDihpGcp{5${|<`E5CPN?#|0?tl&v^B0t9GC6AbNdb}CBe6(S8>>4L`9UJ6 zc}QB|%xGC1bta!Q*f6U5Jva}GkNHyghk*f!3)8h>{dBd%P6)yf$_&ZvcffE!nqw#w zga%Ov2X!!n73LlW@e>BAiXHR3VikkUcyjq+D1@W7xshqd@2r^G-Ld)Ei!2h6NZ(-D zWxaZ_VQhGOHEC*5PjNiB7ee>aJTM)nVn_T48sr=wB!pz3ZJ4;~H<^-mTl zUkx0BorATu4|jgpVIA;nb@|(xnsTW!|KQ3n$VHf3eUa1i;7*|cmmuFfg}^g|zuJ`D zfDT!zV>&|Y`>IrkM2Tvw-v$;yPI}L(S1n@P}WWl1&4M?+|sG$Tfz9>HC-$O!%RFUTNx zZ_~^rlqtfQu<>GWM_SX?^ZqnUYzw96*PT6}_9DqKRO`Wz(f*le0$d;dSK#_qVHm@l zB;Bv!)*_Qx<``y~AbPZ`oQu7Vx^m+qQdxjEp4(eC@b<)*(B1f zk|E+`*Qn9yqvuYu4|Artal_5o4R_360)A(N%S0$lHWz7uKKG@S{yEq|V?hM}enD=| zU1i-q9eqm9`WENEb-6{&AGIMb1Ds7n6=g)rD0GzB;FdzfG@|W8qZx1B+yL2XR8uS! z$lxEFIc@MOV?^^uaUGHnctnIOf*Cjw*^`Y}o( z|0f7IzPuaHqaDZ_)(nMD*bIE$kC#BtU{v-^2^~$cbEAu)TF#X~Z^P$${4}aIxR~?| z4N-=OVyJ&mR+}2728t%fu7FSUi`!jSvhSEyfQsSrTrinP0yNtyc2RZv2<`Gxl{i;p z7sF<9UENh;!-wv(X>x6=q;W-}PARmIx9OU1nAcP@RTsNmW$+mEiy)CwyOx@&KdK<7 z?@g2l_PHQU8bZ=1x`h(GnbF@S*rDs+=$f?dskBi$+&_=5qaqu60-YB~>OmOVO8$tl z45VqCvBW_&{ zKQZh6S#$+8{3hinkfVFL-Y5bX^nq#Fb7is{LWuL}T8lg}abMlO7J9W1#5Q)J)N{X1 zT@FHMizLqv-pg_EVqZzar^-xJ^Ek%8s4B|J)zN1Fz`iGIcS`Vs@9SDkJTpV*I*;MN zndXq7nbo)+ZMW5v)U z{onGw26i&my?)G;ygFzXPZ;sMwaLr~c*?@6k>@x?y-@S9xAgA}Z|xXD=%ND|UjEw$ zw#SJDDy*CZdh+vjuZu@zj|h>KBzEL>!5uRY>iI@w@Mpc_O8%fL^d3w2k~>v~uFq!u-smLYD)5S+bm?*2v5mIxD0AX}$( zTZB~mWc`1&ca~joY+bv?-QAr8cXx*X2@rxi1h>W=8rQ}xI0Ojp?he5T?v~)1;6YBY z&nx@_>Kl39D@dj3bUXn7*PVbDk_L?~adjJRUn}kEZme zS|eS7y%Qd8_`<2ggwNTFyxH&!$J<-Z0WFB}Th&Nlh3+osBScT%jZqU7?mmHCudypi_T7ZMV|FW(Vw;zjT*pdZvrW2yGDIn;Wmwat zj+_qVp5XHLs5_8%iMtXb@Zv`i=HT0QnbO%++D@WfD_5^U3SS2`^ls8%z0ZE^%HF@~ z+ur#RGi3RSH2DQ1AfQ~}Ap<&ub}YCb#cBkvrSu)hbEjCPafE9HIsHRz1Db8oL>*#< z`(G}^RD%}irp<4a7YdA)>2oW0ca91w<5C)H9M}Q5Isx{t)9=WoaYW{ORi#{T>U`~2nO1(? z><91c>1kq*^Zu*y+JF$2tR&Tzk81+H`6JKu@rzQ2eKO?Fk4YSNk$p>R`8yGoE=+AL zcbcq_yY>U5FAr!x3q&e*Yr9`EWhIV_)}*U`y0{g3%SoOacmH;5hQ+!^9;WGAicV`- zF%I*F%aGyUcskZkvuea|NQjm51TYrSp1^7q3OHA>^2}qd&-&d4UGEkQLfL`)>9qp} znh37(}*(g_k*f;oW#{REVkp=pb+V}v~<=C&|ilsJ&B$mLd5&gqLf z0cNWs6G#b^1O$Ah0}%j)HpaC-nJvvZU{O~EPTl>^3rrqHlNr=toU{QWIIn=p7}K2z z?d&KV1yJDL_+ZO6fYQmy4c}S)GgEXVPlxaiN6QzXz8yh+$Em`AsVzJnP7+DhQ>IZe zq)k(mPXsU|_YsNtBIVrZT8Gg}&C%-G_Z~;b*PdL4C9YH=Y=EHJ{}XM!qMnAUmOnEc z;|J(>DwkF&VX9;80f)nre|9(Y*?^dhN)54+@rqO}WUyPXL%0XHVG3dW&4E)$bPihGC%r@;NzNX*W4P^Qe2{Xub{w=!52Pt}6 zolRip*PhTVTiEXKeeQF@gp~bQgEG~eTq)c2)Z}sqS+aPuF?WH@NWDVODczH1#t0*p zs*D+;h57dru0Yuy9pPNTGHeDwco}VE!L80MybjfL6O!?U@1>gQMsZ7+~Y;!Zn~^$-1!@MH5OIeV&qCVt!hji6K4qhaz;p`jxErp z(Pn2mtV<)GfH-p}sdQ@QU@|o1SXgCrqjp4t%p3nU6x`+ZhRuJB(~AK4v16e5_d_f$ zwLK;Cy)rqHE$n;>K5O=eB?8#K)U(jjBq-!~uow&mTVBfS5KR-H9{07h18Eb#U@k@g z0id1()N{k7G9#~F_(e`6fwabLVbY;UW+K)<=uY~C0EiLE$jbJFFjN!<5JuJ;tkrpt z^sWJTYj?L^ij8Uw&Nm>TL^VGs>}})$$@B8`r9ywdWNA)9Fe^t5Wbs~H$R&zY}~4qIW4 zkwAP$UHl=fUnU-q!{Q>g_Be-;l92W`%{R=ip^`->|Gv6UAvXka zV%%~}u18mP`ehivbh`4M1tsK7*tqO@oi$Gc;(?*0>}QOQ0&J{@hshIdA2ICSA|Lb0 zxVc-V_4=6vr?HwUZ1}>laE2I4oHH@QJ|svk<)QWMTBpc$W3X>Ba@|KycG$1ZP3oQP zH|cddKD_V^oUw9uy^#V3cSOHQ;U=5w1ldy%mW389xf3E@I0V z$&skPR(MVBnyahA$IUNNJc^D(Jw6%C^(fw){H+1*hI@8JvHJBOHPAJJ9B>KJjKH+l zmM}x#nTH@!5_m`|3w>EglW@f-(MCeObC!^c08>m)TXwCc7s*m|aNtzuq0pcUKOE`= zjMU2rmp=!4Y{{+z zYXVBO{8EDgeKPOs^Kl{W^St4Z015Sp+`Q8|Mw|f+0rt*!mHXz^QS6;|RclxIUyF#) zhIOg*BA&gQU#$ic5z5BgKPl+n?<+jT9hXmIw*!wXD(GyuHP<~Mo4uP;o#P%FTG~qh z=jfI;HJ#PE^LzxlQy^N{^MMkH655Bmq7?xN@P5Woh&})&8*png(1kMyy6h=;(Ap5K z437#HniLGZ0eK$&!4JG98KjDBG;^R5=iuNF5g|iXuj%+g63y)#H+n1h+wk zNbtDa*SEp6gr`2Xv7e?GQWM-&be5v5?;INrrZX_6H9O!=GT;;>sxzGEc(4c}VxY?} z8mwnI*ej;`+f_T`$NDzVw88-(TmpJ{V4%XN8$dqD%3~0s0D5nPl;3U%=*p9P;%K|V zwfVwBe&EY|g(pKXXIY(LgQAX2K+0yFWJ<#afEI)y#}b!EgdSB{+a>oZyX86tG<)|zd}=%YJs4vwOGVhZetU}{t&on|8zdKm#!nI)`f)L+Xj zZhv>1$z)G3iZ5;(P38eiRi5RVsV`-DV!b1gaT~#>;*hS-0Z>96(lmWS}y_z zI-qoi0S4WjH%%%d*kfS-E9lwk5YloJ@~w zAiiXMKVv8n`u@OSP$0qX81zxf*`6GtcUGxUTsq}iuSn4*g&*M_%vSEFF%y;?4w{sG zO+ZK*2$(YNrdY)uCFxHJXKeof$j9%!M&MottR*Tvy{yyWn3PpOd0A6^sugU_z1}}W z82IaLZozdTUR<{H@5fSE>0Os>2dN*KKNq`85gWpaO*6!YKi!Ae3upzF^H3{!SaQ-G zn9;ErjH2AGmZ;HoRO{3uP;7XnQM?&FDoCB*)N8i-;;pEDK`dA{9)m`VK`cdGVgjFg zvGW`A^5nCyVm2#Rex|xv5{23nya>&v4dkc*YEmjdsh*STeCRFh{@(Tpd~^X(GN(J` zKn9ZxYQhn*REPe{HyLd!PgjQddMm{D-^D}bu-+f~vg?*6Plkp8Xvy|dhG|h+MW_LC z(oOb^<`hHx7uRpj_hcl%AdCsO$NrnKbC`{s)nh?FEWx;%07=U6X5GWUMucLlw4l?k zxB3=QaAM7t-BX%V7p?4<%BLfN_5jjXsy2QU4!WFD?wBoAe_I|G0t@sIAPX1_hrpYQ z3$QR;M~KOEsJhJGo73aD?|^e}rP0>f+8X3XFgfuX7Yi@B@lKgIMJMOSmmU=H^epst z--8MU5uT98c^!!?90K!f_<@`^H5I!o9lTpgkP)Yg1FR3^+8uW{tB$CcxY_fSDahY0 z^v=<|mfCmT)tA#eT{H|OSrKU#!3??B474V}CxAWPd}>76NoaT>(_Cq_nj6;b4}uqo z^6W1;F=FoP{?IDF#^idPJO3Q~xHC}(gtDYSg$5Hho&*N8Fb1k$6_=uD7Pn>#d^LSA zEtzmf5-k%X6oj=a>iuN#zM-UEREsom!^j$~`r_&Fj4?$h7&Lr*7xI{dz7Z7(Z>a-D zw#DwDE%q0EP}UklLYJpyfnwO`u(8Sf)Y$hg6nVD}o);tD}=( zZHpaIwP}1-0ADs(&;4Ttshj$81YVgcgS~nU7WaBR1n)$Vfsy{%ha{KTlV{LgfQs8( z%JO>JJ#GvpRjKFkBsF=V(S>l#tvB_x#d?TdTkM(|JnW*NFapH4VktzU4&3U9^u^-Y z)Qe-rIeDRN`OBzS!nUKdMyxpPsSgJ{WVI{H^TD4|yTiGG9Vf9 z&Dz2xXuOp!83*vkgic58=UvhRXgUbRwgWS`+egNq2%Pn^28(xqkFQEq=fprDTmXLp zMzU>V0DDsP4fq3`fX<*h4y>Vstx9M%+DVV=1E($C7a z%f>A$ytTS8cPc_)WYK+e=MXv;8nIBbjP;!CFTdnEJuwSg^|+DmUnhT#)r~VXmk{o` zV4l}jkY1E%jFgxy?9ucI(Jl>60Sp)OW~-3E>O#`h($j+~%4Il~Jd?*d2wfcjh4>>r z3E=kg+3`qB1ZneyT#QG!go9>O`?Z}S)-`xgMFr$SEZ`P;VuP3J{sJ*NJUuVzf#`UW z*EAP$MHLb8Q=t12?OK|h1N*fWZ0uVs@j`=kcZOglf#{McAi^(IVSDEYJoDhWyr=Ud zM+xlcAbyr-9p%=p%?Y)FJshUZ6b@~9rLf8aCdE*+S6b>_2h+b=Y4D{QZ?|}Mc_1D< zLEY-5lh;b_6=@`y5sj@NIGoi|Dj3&aw?bwwcr0$LTl=ukknPYWKV`G{hca6{?!VLv z0y~=4Hx|oOuaBOefv;0ClXeYV5bwd=-@noln8aLg!ii*p&Ty9b0w!0X|D^M2=V>73Duqu^cedSViv-9n_u4x%+QiPv36Zq6wVE2?Lol$<;ibp|NbXm{h01LS zxwR%=0p@N&C;}80-Vt};YgM2Uhtqd4I7`i4xSq$4Qng$ZpzmioE_c}QW!aS;FgG$X zva<~;A-Aw56ZWS~Mto$zdXi?WzUGbn6~jR)onhAP1nHp~Wnw@O&_2{|bv8dG*WRju zhK3A=9^mEB4PBMnt$|2Du7>RWjaS*({Ei!le~RI63d^g+q`bz(#qFO4Ow4LYeJPIX zGa}()x{at?eu8^ptJ5x!PF2SSK4`D~dT1ib4UX()HE^Iq1*rbr>a+y%Wou49-xF6M zvLVm z7p{UKFWUnl3JBs1s*6N_|uG_Ui7 zKUjHSK1}(hL`0a03_kQf=$h1G4irNcMjAa>bVi@x;%lofg;%X!_&u$@S)9hk>M9#y zz@|N~%{3OG5@vE)*9CF`X>Wngv_NB=lZU%NBKo({7KTIW<#Bf>irk*<5r?r42D`rRrAqYs%8}o|4(akR zpmp=+x5o`#alv8!yD5w8?053F)_Ww9TPJgk=dlzixu@KagAmzq72~C?{3(xf$i+~D zH1oEp!9bBUX#umC+;zo39}l1rRAT3Wn;MySTz9>$i_-d^q)fF=-P*onn)NL<4}&*` zck7$yIOUV4mwP5cuASpid^=8n3yz=p1;zL8dDoJ?+WRRi!`gRs5NRc#PmKxZ*uKG{i|*E2Pr08fTUzZ_ z=SIY}ThG1`awNi>;8UWJTV+>D?d1JDz07Evef-t2Dz;k zM=v)BzJbH~M#QAy=p&{fn#<-Zo&vy#HB&sm9}ry9*y0}dkGHoIa&o$W5tDAC4e_R~ zm{K1)!jIN~m*@ByIX-$ZEzLk>N-NrG>}Z`VC_ZSf^#<+=mH{%(S(pHWkkv5ac^3@zVhZ{ifYJkMt0|h?9=xLv zWDEqTh%NP6|0i$AeHw!rkQ`ucY)pwZH#`x_K!6VAO@#`Su$tv(3x7dxxq&Ud4|i0n zBd8$%m4}j^kK!!aR-e5H>SDsGk~O3Iu9M8=d6si>4^mTEvdKc|{wbO@%4+k(AZjaxZr(!@2} z7vch5Am4?0=<6pK(a43a08BR2s_J9W=qro^q~jtN@dVA4sA;NANxZ(-tFH5{zRn(I ze81%R`LE+9VzqBmlI`_iG~uq)?hXP1f*4TW5HOPkUupyWgEvol9Hsa(Fxu&-m)OGg zrQ7h_g$zMRzm5ab;XNQgHUKE)fCNls10mw1VPUZY61ZMoUIN_l)#WAjy_1uZz^i~! zZP*EX%ku!8+@@7+xP!NG$!)*g7YdlO%2o4W$T$F(7yN!y7&@u{MK59xRTQgHmoGpc z60+&HxSwWZW|F3gyPa=z0wJ-pv$HyKVZ~|0l~}e^-te-iZ_`p{B-a}UhuoGSm^QM) z4RkT-q>RULyp=iu+mG;ENyx`IH4Q4PATU%e7j%i<9_IOfgs#98MxcZsB zz;zj0I^5*&bI$7b#)7WDDMi&Na&>ea|}-$A^A`mbAC#v?|8i7@aekAO1~K#RjQb2vw0fM| z)^BYzh%1dnrw;CjI0OI2 zjA12{-w}gM0PEozC<#cg^2t2}Kk$`BKb-w$W@?%PK#OqCq+-4T1RK3#PXJV#N5s-Q zy}Sd@-BiJVgVl~TtU6WQ{Ve3&iXmbr%y9+q{yG?8W z9dbw-Q>_??xibXZ|2CH)8c@PZ=eERQu>G@i( z_mtA5?VkA!S+kAN%Eq4s?~5`bq@)FEuzZ#$weoNnYi4l(r|9G+bIa4NyGi^I=GFi? zCtIX7FpNI>d;3|)uH*)~?~kjeL&RB0jz+(Ojr?7LdV`f3Y$I?3SZq~rQ1n;A@+)~N85SXkgkKp$l$7v~W&==A0l zlT}kwGxEE}*JlS2bO!>lf*3Zjr>j{&4ITOY8rH5D*}-zY|6-Zbi(_&Hzlia<3n$>A`Q1cFGHjISsblQi=k&vXVZ?kHgDzD zJ?FQx88{88K>Cl*x`Ee{l~_UpOJSS(|!p_EQ9Xlt1+Aoo<H`p(XEEXMN4C|1I4+L{zh3zQ|@mWXRLsgD=4CxV-PPlNnjm1ROp zHcb6mJoImF?g~@B4#hl!);#;^y%xNXB;=&yb}$hR#hae5e-X}BBjN!bt?QbNBSn%n zLBMA{S~YvP=-B^xBm9l!u^$_@OaDQ z?okHY-gV;eFf%Kpa_%hAWPJ2O>P9Ecei=w$J~07&Ym~HOS`{V2Dfu}h{faL z;J_RU$LvH%`JF6r>I`+^;7#ASbC|Fe3AMk?Ms@huJf*6g_isB z=KA!l$hyeUeD&g0D1UwqB{4JR96c3Tp0$r=nzx~Mxn6Ts4b5?R%)A>`w$RkW{eAC7 zOlUAjRa34O%pmVYd?#gTknW#=iO)PmvJoMJicSZmJSWGRjM$(9{|EnUxg$pCWO%yqDvmO`>ux2gjw{`pB1> zEXYG~k+4&1n_`T z$t1;N@TNhNa@T-&Nb$PDZh~UAL1J}Rqkb;kp4FjbNTi7IAzSUd%IDnjWg)g{my^XS zB5pNL?JAYql0ye__$M9?4Hukv_P7=LqOOM19ioyY+G#)A)S0A-&q|@nQBvXqR?&SB zt)K^&5xn<;C%{H-?SXpGzJW>cvNJ;sUoZby`h1ST8px|DfrZCGz|>MZOtX}FQ#ePsXq zd}TlqNTEkB4E;D9jID!kTLNUN{Vv_E1XwfI>Fc+^m-G#dE%__;p>_I?{WL_}VR7EK zOBqGl`c{UpneK5+KP80TRxBHF*7dEu&z$q%(J~1-k$MlK`s3h3N3=h6DRv&pxu>en z(c>5LfK%luWtFM%7BbTCEM>y9ffhSQg_kWVEkZ&Ok|BS&UV5oMrBtS^Gc~>fUF}j1 zo&zXnoeGS8ykRbO0?MAsmaL8(?Z~+ z>_3%jzSkk&^b6_iPi0`$Z8%u2f9spJ9T#Xh2cjkBcgU(M4CLukQ2D}T4#Y~Z&R*pW zd7>DTMQqs0yJK2C&fzPI6~yU#9|Fs^p;Em`cA69Tm$y}*b(s7y3@Dz78u zo|?28(Y@cJosA@O#eQ z&@`Km5k#mdW4W8kqyd(<_@U3W!c-^2G`QurTe_^fjuIMX+)^R2L(hz!k{Z!&keckT z9azf>9l&JgVxeb<*>qp(C*YKW!oD2Hkk$D(*O%|fNZM<77EyOQDSS>Aa1r#q1F+44 z$a_CT)uq-w0+P_J(V2`@`=Z>hgzY5AuZAUUq^Fe@?**!0#LwLoI=udCh{RnHaevbd zhzcnOhDEpCX-`A_**mURNL`nvTZ(U-BVG)$etI=@>SJ?$@Ds*fS!5xzYxo!?_+3j* z>{xZ%l5}T)+Lb)@p|^#Zb~JJd(_gTkASXT^%05c8VVjRt6VArBjVc4%2G*J2lBZ@S zZ%D@r=?~u=yYhMj7ltV7ABc+a6Ac`~9CsMXSo0_gt zL&FnfW^|-u$U1W17EtkGx)Aecf6^<3*<$z7iFvV9@M8YCy7RG&OdR({0hr(ORg=Is zpc@jRSe5JJG3L1)S(KxF@5ufrv48P1KtYgY?)`Q*nSjJx@2siZd#}kk z4bO5wD-OaZUfzPMv&}(f^sjn=@LN?ty;;hUjlmGkjhaBuWh3MBcvrziB_Lro&zDs~ z=6uR$_al9AvEH(8_}K8_sZTBci~mMybe!JEEc5Bl#%M$pk=aUhNR&o~*m80pZ^iFY z&3tv;JPmMGIGa`ABrK1TRzCd7kC5zozsuGFOxK0^{Qw2cdyK6Y(yQb6Bc1QKiX`DR z%9LVGCsUAsv(?&Rc7YmWPH_RBwbtC!=DQXL{k~V^7JGHqO)x7#+XpX(zCx){uxODmLi;qM=h`0#)XT6yp4SygG<1!g=ASJngo$D8 z{ls_uz2)Ri2FLDXGY=ELVEJf#LPKMX9cl4wZEZ_MV%B*hLMB`*o5CCi$^?<*1Le*a zx4D6%EGyaJM<-AGs0j`H&W`#OwAA+tl+GD3m7>vg&bJS1kB@@!=iQEsGCkC3bXsYn zb`BgI^hWjFJ1S^e{l~g#>3T-?P^HN~36zwD4G{&RJ-rTGD_o}^X zB1ycrK^^U2)P>FTi&%cRyGvJ-*l!iqldK*U$WjyyE}4+sR{h0PkNaQ8{^tz-zA=`i zJgDfLy#Gf|`ro%W5&>s;LY{WaKYRbb#{k3C0T%r~E`Yf6ujS3F1O-hHoe0nz|FeL3 zzk)_;jyll(y(XP8JDgQuQyTN2)4x|(>JhgTba zB)izR5C1v|V4NA^ESZw+3F7xVs&f zqkkW$7}%UIo7nb$HU<6=-~^8Iw(BlS=zsSZ4?YAo|IcaucZ2??HUD#M{@1ne|M?c$ ZdKuz-l(pIC5`Y4J-pPKDsgg1d`akuF#C-q& literal 91895 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. Important issues are listed **in bold** for emphasis. -MET Version 10.1.0 release notes (20220314) -------------------------------------------- +MET Version 11.0.0-beta1 release notes (20220622) +------------------------------------------------- * Repository and build: - * Installation: + * **Restructure the contents of the MET repository so that it matches the existing release tarfiles** (`#1920 `_). + * Fix the OpenMP compilation error for GCC 9.3.0/9.4.0 (`#2106 `_). + * Update the MET version number to 11.0.0 (`#2132 `_). - * **Enhance the MET compilation script and its documentation** (`#1395 `_). +* Bugfixes: - * Static Code Analysis: + * Fix regression test differences in pb2nc and ioda2nc output (`#2102 `_). + * Fix support for reading rotated lat/lon grids from CF-compliant NetCDF files (`#2115 `_). + * Fix support for reading rotated lat/lon grids from GRIB1 files (grid type 10) (`#2118 `_). + * Fix support for int64 NetCDF variable types (`#2123 `_). + * Fix Stat-Analysis to aggregate the ECNT ME and RMSE values correctly (`#2170 `_). + * Fix NetCDF library code to process scale_factor and add_offset attributes independently (`#2187 `_). - * **Automate calls to the SonarQube static code analysis tool in the nightly build** (`#2020 `_). - * Fix Fortify High finding for src/libcode/vx_data2d_nccf/nccf_file.cc (`#1795 `_). - * Fix the findings from SonarQube (`#1855 `_). - * Reduce the Security hotspots from SonarQube (`#1903 `_). - * Address findings from the Cppcheck code analysis tool (`#1996 `_). +* Enhancements: - * Testing: - - * Review and revise the warning messages when running the MET unit tests (`#1921 `_). - * Investigate nightly build output wind direction differences caused by machine precision (`#2027 `_). - * Modify plot_tcmpr.R script to support plotting of extra-tropical cyclone tracks not verified against BEST tracks (`#1801 `_). - * Fix failure in plot_tcmpr.R script when a directory is passed in with -lookin (`#1872 `_). - - * Continuous Integration: - - * **Implement Continuous Integration with GitHub Actions in MET** (`#1546 `_). - * Treat warnings from the documentation as errors to facilitate continuous integration with GHA (`#1819 `_). - -* Documentation: - - * **Create and publish a PDF of the MET User's Guide via Read-The-Docs** (`#1453 `_). - * **Enhance the MET documentation to follow the standard for sections** (`#1998 `_). - * Add anchors to link directly to configuration items in the MET User's Guide (`#1811 `_). - * Update FAQ in User's Guide with info from webpage FAQ (`#1834 `_). - * Document the statistics from the RPS line type in Appendix C (`#1853 `_). - * Enhance the documentation with meta-data that is expected by MET for netCDF (`#1949 `_). - * Update documentation to reference GitHub Discussions instead of MET Help (`#1833 `_). - * Fix broken URLs in default MET config files (`#1864 `_). - - -* Library code: - - * Bugfixes: - - * Add check for the start offset and data count are valid before calling NetCDF API (`#1852 `_). - * Fix the MET library code to correclty parse timing information from Grid-Stat NetCDF matched pairs output files (`#2040 `_). - * Fix bug with the incrementing of numbers in temporary file names (`#1906 `_). - - * Python embedding enhancements: - - * **Enhance Ensemble-Stat, Point-Stat, Plot-Point-Obs, and Point2Grid to support python embedding of point observations** (`#1844 `_). - * Fix python embedding when using a named grid with MET_PYTHON_EXE set (`#1798 `_). - - * Miscellaneous: - - * **Enhance MET to use point observations falling between the first and last columns of a global grid** (`#1823 `_). - * Support percentile thresholds for frequency bias not equal to 1 (e.g. ==FBIAS0.9) (`#1761 `_). - * Reimplement the NumArray class based on an STL template (`#1899 `_). - * Modify the interpretation of the message_type_group_map values to support the use of regular expressions (`#1974 `_). - * Sort files read from directories to provide consistent behavior across platforms (`#1989 `_). - * Print warning message for fields that contain no valid data (`#1912 `_). - * Update error messages to redirect users from the MET-Help desk to METplus Discussions (`#2054 `_). - * Update the copyright year of the source code to 2022 (`#2013 `_). - - * NetCDF library: - - * **Implement a common API for reading and writing the common NetCDF point observation file format** (`#1402 `_ and `#1581 `_). - * **Enhance the MET library code to read Rotated Lat/Lon data from CF-compliant NetCDF files** (`#1055 `_). - - * Statistics computations: - - * Add Scatter Index to the CNT line type (`#1843 `_). - * Add the HSS_EC statistic to the MCTS line type and a configurable option for its computation (`#1749 `_). - -* Application code: - - * ASCII2NC Tool: - - * Fix ASCII2NC to check the return status when reading ASCII input files (`#1957 `_). - - * Ensemble-Stat Tool: - - * **Enhance Ensemble-Stat to compute probabilistic statistics for user-defined or climatology-based thresholds** (`#1259 `_). - * **Enhance Ensemble-Stat to apply the HiRA method to ensembles** (`#1583 `_ and `#2045 `_). - * **Enhance Ensemble-Stat and Gen-Ens-Prod to read all ensemble members from a single input file** (`#1695 `_). - * **Add logic to Ensemble-Stat to handle an ensemble control member** (`#1905 `_). - * Enhance Ensemble-Stat and Gen-Ens-Prod to error out if the control member also appears in the list of ensemble members (`#1968 `_). - * Add Point-Stat and Ensemble-Stat obs_quality_exc configuration option to specify which quality flags should be excluded (`#1858 `_). - * Print a warning message about switching from Ensemble-Stat to Gen-Ens-Prod (`#1907 `_). - * Fix failure of Ensemble-Stat when verifying against gridded ECMWF GRIB1 files (`#1879 `_). - - * Gen-Ens-Prod Tool (NEW): - - * **Create the new Gen-Ens-Prod tool for ensemble product generation** (`#1904 `_). - * **Enhance Ensemble-Stat and Gen-Ens-Prod to read all ensemble members from a single input file** (`#1695 `_). - * Enhance Gen-Ens-Prod to standardize ensemble members relative to climatology (`#1918 `_). - - * Gen-Vx-Mask Tool: - - * **Refine logic to prevent rounding shapefile points to the nearest grid point** (affects GenVxMask -type shape masks) (`#1810 `_). - * Change -type for Gen-Vx-Mask from an optional argument to a required one (`#1792 `_). - * Fix Gen-Vx-Mask to handle named grids and grid specification strings for -type grid (`#1993 `_). - * Fix Gen-Vx-Mask so that the -input_field and -mask_field options are processed independently (`#1891 `_). - - * Grid-Diag Tool: - - * Fix integer overflow in Grid-Diag (`#1886 `_). - - * Grid-Stat Tool: - - * **Enhance Grid-Stat to use OpenMP for efficient computation of neighborhood statistics by setting $OMP_NUM_THREADS** (`#1926 `_). - * **Add G and G-Beta to the DMAP line type from Grid-Stat** (`#1673 `_). - * Fix Point-Stat and Grid-Stat to write VCNT output even if no VL1L2 or VAL1L2 output is requested (`#1991 `_). - - * IODA2NC Tool: - - * Fix IODA2NC to handle the same input file being provided multiple times (`#1965 `_). - * Fix IODA2NC bug rejecting all input observations in unit tests (`#1922 `_). - - * MADIS2NC Tool: - - * Enhance MADIS2NC to handle the 2016 updates to its format (`#1936 `_). - * Fix MADIS2NC to correctly parse MADIS profiler quality flag values (`#2028 `_). - - * MODE Tool: - - * **Add support for Multi-Variate MODE** (`#1184 `_). - - * MTD Tool: - - * Fix MTD to compute the CDIST_TRAVELLED value correctly (`#1976 `_). - - * PB2NC Tool: - - * **Enhance PB2NC to derive Mixed-Layer CAPE (MLCAPE)** (`#1824 `_). - * Enhance the PBL derivation logic in PB2NC (`#1913 `_). - * Update the PB2NC configuration to correct the obs_prefbufr_map name as obs_prepbufr_map (`#2044 `_). - * Add entries to the default obs_prepbufr_map setting (`#2070 `_). - * Fix PB2NC to better inventory BUFR input data when processing all variables (`#1894 `_). - * Fix PB2NC to reduce redundant verbosity level 3 log messages (`#2015 `_). - * Resolve PB2NC string truncation warning messages (`#1909 `_). - - * Point2Grid Tool: - - * Enhance Point2Grid to support double type latitude/longitude variables (`#1838 `_). - * Fix the output of Point2Grid which is flipped and rotated with lat/lon to lat/lon conversion (`#1817 `_). - - * Point-Stat Tool: - - * Add ORANK line type to the HiRA output from Point-Stat (`#1764 `_). - * Add Point-Stat and Ensemble-Stat obs_quality_exc configuration option to specify which quality flags should be excluded (`#1858 `_). - * Fix Point-Stat and Grid-Stat to write VCNT output even if no VL1L2 or VAL1L2 output is requested (`#1991 `_). - - * Series-Analysis Tool: - - * Enhance Series-Analysis to compute the BRIERCL statistic from the PSTD line type (`#2003 `_). - - * Stat-Analysis Tool: - - * **Enhance Stat-Analysis to compute the CBS Index** (`#1031 `_). - * **Enhance Stat-Analysis to write the GO Index and CBS Index into a new SSIDX STAT line type** (`#1788 `_). - * Modify the STAT-Analysis GO Index configuration file (`#1945 `_). - * Fix Stat-Analysis skill score index job which always writes a dump row output file (`#1914 `_). - * Fix consumption of too much memory by Stat-Analysis (`#1875 `_). - - * TC-Gen Tool: - - * **Enhance TC-Gen to verify genesis probabilities from ATCF e-deck files** (`#1809 `_). - * **Enhance TC-Gen to verify NHC tropical weather outlook shapefiles** (`#1810 `_). - - * TC-Pairs Tool: - - * Enhance TC-Pairs to only write output for a configurable list of valid times (`#1870 `_). - - * TC-Stat Tool: - - * Fix TC-Stat event equalization logic to include any model name requested using -amodel (`#1932 `_). - - * Wavelet-Stat Tool: - - * Make the specification of a binary threshold in Wavelet-Stat optional (`#1746 `_). - -MET Version 10.0.0 release notes (20210510) -------------------------------------------- - -* Repository and build: - - * **Migrate GitHub respository from the NCAR to DTCenter organization** (`#1462 `_). - * **Switch to consistent vX.Y.Z version numbering, from v10.0 to v10.0.0** (`#1590 `_). - * Switch from tagging releases as met-X.Y.Z to vX.Y.Z instead (`#1541 `_). - * Add a GitHub pull request template (`#1516 `_). - * Resolve warnings from autoconf (`#1498 `_). - * Restructure nightly builds (`#1510 `_). - * Update the MET unit test logic by unsetting environment variables after each test to provide a clean environment for the next (`#1624 `_). - * Run the nightly build as the shared met_test user (`#1116 `_). - * Correct the time offset for tests in unit_plot_data_plane.xml (`#1677 `_). - * Enhance the sample plotting R-script to read output from different versions of MET (`#1653 `_). - * Update the default configuration options to compile the development code with the debug (-g) option and the production code without it (`#1778 `_). - * Update MET to compile using GCC version 10 (`#1552 `_). - * Update MET to compile using PGI version 20 (`#1317 `_). - -* Documentation: - - * **Migrate the MET documentation to Read the Docs** (`#1649 `_). - * Enhance and update documentation (`#1459 `_ and `#1460 `_, and `#1731 `_). - * Enhance the python embedding documentation (`#1468 `_). - * Document the supported grid definition templates (`#1469 `_). - * Update comments at the top of each MET config file directing users to the MET User's Guide (`#1598 `_). - * Migrate content from README and README_TC in data/config to the MET User's Guide (`#1474 `_). - * Add version selector to the Sphinx documentation page (`#1461 `_). - * Make bolding consistent across the documentation (`#1458 `_). - * Implement hanging indents for references (`#1457 `_). - * Correct typos and spelling errors (`#1456 `_). - * Update the Grid-Diag documentation to clarify the -data command line option (`#1611 `_). - * Documentation updates to correct typos and apply consistent formatting (`#1455 `_). - * Correct the definition of H_RATE and PODY in MET User's Guide Appendix C (`#1631 `_). - -* Library code: - - * Bugfixes: - - * Apply the GRIB ensemble filtering option (GRIB_ens) whenever specified by the user (`#1604 `_). - * Fix the set_attr_accum option to set the accumulation time instead of the lead time (`#1646 `_). - * Fix ASCII file list parsing logic (`#1484 `_ and `#1508 `_). - * Fix parsing error for floating point percentile thresholds, like ">SFP33.3" (`#1716 `_). - - * Python embedding enhancements: - - * Note that the netCDF4 Python package is now required in place of the pickle package! - * **Replace the pickle format for temporary python files with NetCDF for gridded data** (`#1319 `_, `#1697 `_). - * **Replace the pickle format for temporary python files with ASCII for point observations in ascii2nc and matched pair data in Stat-Analysis** (`#1319 `_, `#1700 `_). - * **Complete support for Python XArray embedding** (`#1534 `_). - * Treat gridded fields of entirely missing data as missing files and fix python embedding to call common data processing code (`#1494 `_). - * Clarify error messages for Xarray python embedding (`#1472 `_). - * Add support for Gaussian grids with python embedding (`#1477 `_). - * Correct error messages from python embedding (`#1473 `_). - * Enhance to support the "grid" being defined as a named grid or specification string (`#1471 `_). - * Enhance to parse python longlong variables as integers to make the python embedding scripts less particular (`#1747 `_). - * Fix the read_ascii_mpr.py python embedding script to pass all 37 columns of MPR data to Stat-Analysis (`#1620 `_). - * Fix the read_tmp_dataplane.py python embedding script to handle the fill value correctly (`#1753 `_). - - * Miscellaneous: - - * **Enhance support for rotated latlon grids and update related documentation** (`#1574 `_). - * Parse the -v and -log options prior to application-specific command line options (`#1527 `_). - * Update GRIB1/2 table entries for the MXUPHL, MAXREF, MAXUVV, and MAXDVV variables (`#1658 `_). - * Update the Air Force GRIB tables to reflect current AF usage (`#1519 `_). - * Enhance the DataLine::get_item() error message to include the file name, line number, and column (`#1429 `_). - * Add support for climatological probabilities for complex CDP thresholds, like >=CDP33&&<=CDP67 (`#1705 `_). - * Update the NCL-derived color tables (`#1568 `_). - - * NetCDF library: - - * Enhance to support additional NetCDF data types (`#1492 `_ and `#1493 `_). - * Add support for the NetCDF-CF conventions time bounds option (`#1657 `_). - * Extend CF-compliant NetCDF file support when defining the time dimension as a time string (`#1755 `_). - * Error out when reading CF-compliant NetCDF data with incomplete grid definition (`#1454 `_). - * Reformat and simplify the magic_str() printed for NetCDF data files (`#1655 `_). - * Parse the "init_time" and "valid_time" attributes from MET NetCDF input files (`#1346 `_). - - * Statistics computations: - - * **Modify the climatological Brier Score computation to match the NOAA/EMC VSDB method** (`#1684 `_). - * **Add support for the Hersbach CRPS algorithm by add new columns to the ECNT line type** (`#1450 `_). - * Enhance MET to derive the Hersbach CRPSCL_EMP and CRPSS_EMP statistics from a single deterministic reference model (`#1685 `_). - * Correct the climatological CRPS computation to match the NOAA/EMC VSDB method (`#1451 `_). - * Refine log messages when verifying probabilities (`#1502 `_). - -* Application code: - - * ASCII2NC Tool: - - * Fix to handle bad records in little_r format (`#1737 `_). - * Create empty output files for zero input observations instead of erroring out (`#1630 `_). - - * GIS Tools: - - * Fix memory corruption bug in the gis_dump_dbf utility which causes it to abort at runtime (`#1777 `_). - - * Grid-Diag Tool: - - * Fix bug when reading the same variable name from multiple data sources (`#1694 `_). - - * Grid-Stat Tool: - - * **Add mpr_column and mpr_thresh configuration options to filter out matched pairs based on large fcst, obs, and climo differences** (`#1575 `_). - * Correct the climatological CDF values in the NetCDF matched pairs output files and correct the climatological probability values for climatgological distribution percentile (CDP) threshold types (`#1638 `_). - - * IODA2NC Tool (NEW): - - * **Add the new ioda2nc tool** (`#1355 `_). - - * MADIS2NC Tool: - - * Clarify various error messages (`#1409 `_). - - * MODE Tool: - - * **Update the MODE AREA_RATIO output column to list the forecast area divided by the observation area** (`#1643 `_). - * **Incremental development toward the Multivariate MODE tool** (`#1282 `_, `#1284 `_, and `#1290 `_). - - * PB2NC Tool: - - * Fix intermittent segfault when deriving PBL (`#1715 `_). - - * Plot-Point-Obs Tool: - - * **Overhaul Plot-Point-Obs to make it highly configurable** (`#213 `_, `#1528 `_, and `#1052 `_). - * Support regridding option in the config file (`#1627 `_). - - * Point2Grid Tool: - - * **Support additional NetCDF point observation data sources** (`#1345 `_, `#1509 `_, and `#1511 `_). - * Support the 2-dimensional time variable in Himawari data files (`#1580 `_). - * Create empty output files for zero input observations instead of erroring out (`#1630 `_). - * Improve the Point2Grid runtime performance (`#1421 `_). - * Process point observations by variable name instead of GRIB code (`#1408 `_). - - * Point-Stat Tool: - - * **Add mpr_column and mpr_thresh configuration options to filter out matched pairs based on large fcst, obs, and climo differences** (`#1575 `_). - * **Print the rejection code reason count log messages at verbosity level 2 for zero matched pairs** (`#1644 `_). - * **Add detailed log messages when discarding observations** (`#1588 `_). - * Update log messages (`#1514 `_). - * Enhance the validation of masking regions to check for non-unique masking region names (`#1439 `_). - * Fix Point-Stat runtime error for some CF-complaint NetCDF files (`#1782 `_). - - * Stat-Analysis Tool: - - * **Process multiple output thresholds and write multiple output line types in a single aggregate_stat job** (`#1735 `_). - * Skip writing job output to the logfile when the -out_stat option is provided (`#1736 `_). - * Add -fcst_init_inc/_exc and -fcst_valid_inc/_exc job command filtering options to Stat-Analysis (`#1135 `_). - * Add -column_exc job command option to exclude lines based on string values (`#1733 `_). - * Fix Stat-Analysis failure when aggregating ECNT lines (`#1706 `_). - - * TC-Gen Tool: - - * **Overhaul the genesis matching logic, add the development and operational scoring algorithms, and add many config file options** (`#1448 `_). - * Add config file options to filter data by initialization time (init_inc and init_exc) and hurricane basin (basin_mask) (`#1626 `_). - * Add the genesis matched pair (GENMPR) output line type (`#1597 `_). - * Add a gridded NetCDF output file with counts for genesis events and track points (`#1430 `_). - * Enhance the matching logic and update several config options to support its S2S application (`#1714 `_). - * Fix lead window filtering option (`#1465 `_). - - * TC-Pairs Tool: - - * Fix to report the correct number of lines read from input track data files (`#1725 `_). - * Fix to read supported RI edeck input lines and ignore unsupported edeck probability line types (`#1768 `_). - - * TC-Stat Tool: - - * Add -column_exc job command option to exclude lines based on string values (`#1733 `_). + * Sort mask.sid station lists to check their contents more efficiently (`#1950 `_). + * Add Anomaly Correlation Coefficient to VCNT Line Type (`#2022 `_). + * Enhance TC-RMW to compute tangential and radial winds (`#2072 `_). + * Allow 2x2 HSS calculations to include user-defined EC values (`#2147 `_). + * Enhance Gen-Vx-Mask by adding a new poly_xy masking type option (`#2152 `_). + * Add M_to_KFT and KM_to_KFT functions to ConfigConstants (`#2180 `_). diff --git a/docs/conf.py b/docs/conf.py index 44bbb2f91f..9ba9c47ec5 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -19,12 +19,12 @@ project = 'MET' author = 'UCAR/NCAR, NOAA, CSU/CIRA, and CU/CIRES' -author_list = 'Newman, K., J. Opatz, T. Jensen, J. Prestopnik, H. Soh, L. Goodrich, B. Brown, R. Bullock, J. Halley Gotway' -version = '10.1.0' +author_list = 'Opatz, J., T. Jensen, J. Prestopnik, H. Soh, L. Goodrich, B. Brown, R. Bullock, J. Halley Gotway, K. Newman' +version = '11.0.0-beta1' verinfo = version release = f'{version}' release_year = '2022' -release_date = f'{release_year}-03-14' +release_date = f'{release_year}-06-22' copyright = f'{release_year}, {author}' # -- General configuration --------------------------------------------------- diff --git a/internal/scripts/docker/Dockerfile b/internal/scripts/docker/Dockerfile index f6fdc194c3..d324cbb6d4 100644 --- a/internal/scripts/docker/Dockerfile +++ b/internal/scripts/docker/Dockerfile @@ -36,4 +36,4 @@ RUN echo "Checking out MET ${MET_GIT_NAME} from ${MET_GIT_URL}" \ && git clone ${MET_GIT_URL} ${MET_REPO_DIR} \ && cd ${MET_REPO_DIR} \ && git checkout ${MET_GIT_NAME} \ - && ../scripts/docker/build_met_docker.sh + && internal/scripts/docker/build_met_docker.sh diff --git a/internal/scripts/docker/README.md b/internal/scripts/docker/README.md index 80c6acaa08..87635ceb84 100644 --- a/internal/scripts/docker/README.md +++ b/internal/scripts/docker/README.md @@ -4,17 +4,17 @@ Run all of the Docker commands from the top-level directory of the MET repositor ## Build image with minimum requirements needed to build MET -```docker build -t dtcenter/met-base:minimum -f scripts/docker/Dockerfile.minimum . +```docker build -t dtcenter/met-base:minimum -f internal/scripts/docker/Dockerfile.minimum . docker push dtcenter/met-base:minimum``` ## Build image with requirements to build MET and run MET unit tests -```docker build -t dtcenter/met-base:unit_test -f scripts/docker/Dockerfile.test . +```docker build -t dtcenter/met-base:unit_test -f internal/scripts/docker/Dockerfile.test . docker push dtcenter/met-base:unit_test``` ## Build MET from clone -```docker build -t dtcenter/met:${TAG_NAME} --build-arg SOURCE_BRANCH=${BRANCH_NAME} scripts/docker +```docker build -t dtcenter/met:${TAG_NAME} --build-arg SOURCE_BRANCH=${BRANCH_NAME} internal/scripts/docker docker push dtcenter/met:${TAG_NAME}``` where: @@ -23,7 +23,7 @@ where: ## Build MET from local source code with minimum requirements -```docker build -t dtcenter/met:${TAG_NAME} --build-arg SOURCE_BRANCH=${BRANCH_NAME} -f scripts/docker/Dockerfile.copy . +```docker build -t dtcenter/met:${TAG_NAME} --build-arg SOURCE_BRANCH=${BRANCH_NAME} -f internal/scripts/docker/Dockerfile.copy . docker push dtcenter/met:${TAG_NAME}``` where: @@ -32,7 +32,7 @@ where: ## Build MET from local source code with unit test requirements -```docker build -t dtcenter/met:${TAG_NAME} --build-arg SOURCE_BRANCH=${BRANCH_NAME} --build-arg MET_BASE_IMAGE=unit_test -f scripts/docker/Dockerfile.copy . +```docker build -t dtcenter/met:${TAG_NAME} --build-arg SOURCE_BRANCH=${BRANCH_NAME} --build-arg MET_BASE_IMAGE=unit_test -f internal/scripts/docker/Dockerfile.copy . docker push dtcenter/met:${TAG_NAME}``` where: diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 80ce57a3e7..7aa7ba15a8 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -5,6 +5,7 @@ echo "Running script to build MET in Docker" LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_configure.log echo "Configuring MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" +./bootstrap ./configure --enable-grib2 --enable-mode_graphics --enable-modis --enable-lidar2nc --enable-python \ MET_HDF=/usr/local/hdf MET_HDFEOS=/usr/local/hdfeos \ MET_FREETYPEINC=/usr/include/freetype2 MET_FREETYPELIB=/usr/lib \ diff --git a/scripts/sonarqube/python.sonar-project.properties b/internal/scripts/sonarqube/python.sonar-project.properties similarity index 100% rename from scripts/sonarqube/python.sonar-project.properties rename to internal/scripts/sonarqube/python.sonar-project.properties diff --git a/internal/test_unit/config/Ascii2NcConfig_rain_01H_sum b/internal/test_unit/config/Ascii2NcConfig_rain_01H_sum new file mode 100644 index 0000000000..ca7aafdf4d --- /dev/null +++ b/internal/test_unit/config/Ascii2NcConfig_rain_01H_sum @@ -0,0 +1,52 @@ +//////////////////////////////////////////////////////////////////////////////// +// +// ASCII2NC configuration file. +// +// For additional information, please see the MET User's Guide. +// +//////////////////////////////////////////////////////////////////////////////// + +// +// The parameters listed below are used to summarize the ASCII data read in +// + +// +// Time periods for the summarization +// obs_var (string array) is added and works like grib_code (int array) +// when the obs name is given instead of grib_code +// + +time_summary = { + flag = TRUE; + raw_data = FALSE; + beg = "00"; + end = "23"; + step = 3600; + width = { beg = -3599; end = 1; } + grib_code = [ ]; + obs_var = [ "rain" ]; + type = [ "sum" ]; + vld_freq = 15*60; + vld_thresh = 1.0; +} + +// +// Mapping of input little_r report types to output message types +// +message_type_map = [ + { key = "FM-12 SYNOP"; val = "ADPSFC"; }, + { key = "FM-13 SHIP"; val = "SFCSHP"; }, + { key = "FM-15 METAR"; val = "ADPSFC"; }, + { key = "FM-18 BUOY"; val = "SFCSHP"; }, + { key = "FM-281 QSCAT"; val = "ASCATW"; }, + { key = "FM-32 PILOT"; val = "ADPUPA"; }, + { key = "FM-35 TEMP"; val = "ADPUPA"; }, + { key = "FM-88 SATOB"; val = "SATWND"; }, + { key = "FM-97 ACARS"; val = "AIRCFT"; } +]; + +// +// Indicate a version number for the contents of this configuration file. +// The value should generally not be modified. +// +version = "V11.0.0"; diff --git a/internal/test_unit/xml/unit_ascii2nc.xml b/internal/test_unit/xml/unit_ascii2nc.xml index feef57c65d..01322961a8 100644 --- a/internal/test_unit/xml/unit_ascii2nc.xml +++ b/internal/test_unit/xml/unit_ascii2nc.xml @@ -101,4 +101,20 @@ + + &MET_BIN;/ascii2nc + \ + &DATA_DIR_OBS;/ascii/aws/aws_20220609_020000.txt \ + &DATA_DIR_OBS;/ascii/aws/aws_20220609_021500.txt \ + &DATA_DIR_OBS;/ascii/aws/aws_20220609_023000.txt \ + &DATA_DIR_OBS;/ascii/aws/aws_20220609_024500.txt \ + &DATA_DIR_OBS;/ascii/aws/aws_20220609_030000.txt \ + &OUTPUT_DIR;/ascii2nc/aws_2022060903_rain_01H_sum.nc \ + -config &CONFIG_DIR;/Ascii2NcConfig_rain_01H_sum + + + &OUTPUT_DIR;/ascii2nc/aws_2022060903_rain_01H_sum.nc + + + diff --git a/internal/test_unit/xml/unit_plot_data_plane.xml b/internal/test_unit/xml/unit_plot_data_plane.xml index 02f85765bc..f581160b33 100644 --- a/internal/test_unit/xml/unit_plot_data_plane.xml +++ b/internal/test_unit/xml/unit_plot_data_plane.xml @@ -273,6 +273,20 @@ + + &MET_BIN;/plot_data_plane + \ + &DATA_DIR_MODEL;/nccf/gtg/latlon/gtg_obs_forecast.20130730.i00.f00.nc \ + &OUTPUT_DIR;/plot_data_plane/gtg_obs_forecast.20130730.i00.f00.NCCF_latlon_20000.ps \ + 'name = "edr"; level = "(0,@20000,*,*)";' \ + -title "NCCF Latitude/Longitude Level 0" \ + -v 1 + + + &OUTPUT_DIR;/plot_data_plane/gtg_obs_forecast.20130730.i00.f00.NCCF_latlon_20000.ps + + + &MET_BIN;/plot_data_plane \ @@ -403,7 +417,7 @@ \ &DATA_DIR_MODEL;/easm/pr_day_MPI-ESM-MR_rcp85_r1i1p1_20060101-20091231.nc \ &OUTPUT_DIR;/plot_data_plane/EaSM_CMIP5_pr_day_MPI-ESM-MR_rcp85_r1i1p1_20060101_12_time.ps \ - 'name="pr"; level="(20060102_000000,*,*)";' \ + 'name="pr"; level="(@20060102_000000,*,*)";' \ -v 4 diff --git a/src/basic/vx_util/util_constants.h b/src/basic/vx_util/util_constants.h index d8920d0f9b..2200bded36 100644 --- a/src/basic/vx_util/util_constants.h +++ b/src/basic/vx_util/util_constants.h @@ -119,6 +119,7 @@ static const double const_gop = 9.80616; // from The Ceaseless Wind static const double const_rd = 287.0; // kg/k dry gas constant static const int vx_data2d_star = -12345; +static const int vx_data2d_dim_by_value = -123456; // apply the value instead of offset for slicing //////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_data2d/level_info.cc b/src/libcode/vx_data2d/level_info.cc index 2323475e93..92df64e9db 100644 --- a/src/libcode/vx_data2d/level_info.cc +++ b/src/libcode/vx_data2d/level_info.cc @@ -70,7 +70,6 @@ void LevelInfo::init_from_scratch() { clear(); - return; } /////////////////////////////////////////////////////////////////////////////// @@ -88,9 +87,8 @@ void LevelInfo::assign(const LevelInfo &l) { Upper = l.upper(); Lower = l.lower(); Increment = l.increment(); - time_as_offset = l.is_time_as_offset(); + Is_offset = l.is_offset(); - return; } /////////////////////////////////////////////////////////////////////////////// @@ -106,9 +104,8 @@ void LevelInfo::clear() { Upper = 0.0; Lower = 0.0; Increment = 0.0; - time_as_offset = true; + Is_offset = true; - return; } /////////////////////////////////////////////////////////////////////////////// @@ -125,56 +122,48 @@ void LevelInfo::dump(ostream &out) const { << " Upper = " << Upper << "\n" << " Increment = " << Increment << "\n"; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_type(LevelType lt) { Type = lt; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_type_num(int i) { TypeNum = i; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_req_name(const char *str) { ReqName = str; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_name(const char *str) { Name = str; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_units(const char *str) { Units = str; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_upper(double u) { Upper = u; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_lower(double l) { Lower = l; - return; } /////////////////////////////////////////////////////////////////////////////// @@ -182,21 +171,18 @@ void LevelInfo::set_lower(double l) { void LevelInfo::set_range(double l, double u) { Lower = l; Upper = u; - return; } /////////////////////////////////////////////////////////////////////////////// void LevelInfo::set_increment(double i) { Increment = i; - return; } /////////////////////////////////////////////////////////////////////////////// -void LevelInfo::set_time_as_offset(bool b) { - time_as_offset = b; - return; +void LevelInfo::set_is_offset(bool b) { + Is_offset = b; } /////////////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_data2d/level_info.h b/src/libcode/vx_data2d/level_info.h index a9becc61e6..445528017a 100644 --- a/src/libcode/vx_data2d/level_info.h +++ b/src/libcode/vx_data2d/level_info.h @@ -48,7 +48,7 @@ class LevelInfo double Upper; // Upper level limit double Lower; // Lower level limit double Increment; // Increment (time: seconds, 0 for no increment) - bool time_as_offset;// default: true, false: the (time) value instead + bool Is_offset; // default: true, false: the value instead // of the offset at Lower and Upper void init_from_scratch(); @@ -77,7 +77,7 @@ class LevelInfo double upper() const; double lower() const; double increment() const; - bool is_time_as_offset()const; + bool is_offset() const; // // set stuff @@ -92,7 +92,7 @@ class LevelInfo void set_lower(double l); void set_range(double l, double u); void set_increment(double i); - void set_time_as_offset(bool b); + void set_is_offset(bool b); }; @@ -106,7 +106,7 @@ inline ConcatString LevelInfo::units() const { return(Units); } inline double LevelInfo::upper() const { return(Upper); } inline double LevelInfo::lower() const { return(Lower); } inline double LevelInfo::increment()const { return(Increment);} -inline bool LevelInfo::is_time_as_offset()const { return(time_as_offset);} +inline bool LevelInfo::is_offset()const { return(Is_offset);} /////////////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_data2d_nc_met/met_file.cc b/src/libcode/vx_data2d_nc_met/met_file.cc index 14a41b64d1..4aab77db9d 100644 --- a/src/libcode/vx_data2d_nc_met/met_file.cc +++ b/src/libcode/vx_data2d_nc_met/met_file.cc @@ -32,16 +32,10 @@ using namespace std; //////////////////////////////////////////////////////////////////////// -static const char x_dim_name [] = "lon"; -static const char y_dim_name [] = "lat"; +static const char x_dim_name [] = "lon"; +static const char y_dim_name [] = "lat"; -static const string valid_time_att_name = "valid_time"; -static const string init_time_att_name = "init_time"; -static const string valid_time_ut_att_name = "valid_time_ut"; -static const string init_time_ut_att_name = "init_time_ut"; -static const string accum_time_att_name = "accum_time_sec"; - -static const int max_met_args = 30; +static const int max_met_args = 30; //////////////////////////////////////////////////////////////////////// @@ -50,59 +44,30 @@ template void copy_nc_data_as_double(double *to_array, const T *from_array, const int x_slot, const int y_slot, const int nx, const int ny, - double missing_value, double fill_value, - float add_offset, float scale_factor) { + double missing_value, double fill_value) { double value; int x, y, offset, start_offset; offset = 0; - if (add_offset != 0.0 || scale_factor != 1.0) { - if (x_slot > y_slot) { - for (y=0; y y_slot) { + for (y=0; y y_slot) { + for (x=0; x= 7) { @@ -735,17 +603,18 @@ plane.set_size(Nx, Ny); mlog << Debug(7) << method_name_short << "took " << duration_sec << " seconds to read NetCDF data\n"; } - + plane.set_block(data_array, Nx, Ny); - + if (mlog.verbosity_level() >= 7) { double duration_sec = (double)(clock() - nc_time)/CLOCKS_PER_SEC; mlog << Debug(7) << method_name_short << "took " << duration_sec << " seconds to fill data plane\n"; } - + if (data_array) delete[] data_array; - + if (double_array) delete[] double_array; + // // done // diff --git a/src/libcode/vx_data2d_nc_pinterp/data2d_nc_pinterp.cc b/src/libcode/vx_data2d_nc_pinterp/data2d_nc_pinterp.cc index 327cab74a3..cf1a97d45e 100644 --- a/src/libcode/vx_data2d_nc_pinterp/data2d_nc_pinterp.cc +++ b/src/libcode/vx_data2d_nc_pinterp/data2d_nc_pinterp.cc @@ -133,9 +133,25 @@ bool MetNcPinterpDataFile::data_plane(VarInfo &vinfo, DataPlane &plane) { plane.clear(); // Read the data + PinterpNc->get_nc_var_info(vinfo_nc->req_name().c_str(), info); + LongArray dimension = vinfo_nc->dimension(); + int dim_count = dimension.n_elements(); + for (int k=0; kvar, k)); + NcVarInfo *var_info = find_var_info_by_dim_name(PinterpNc->Var, dim_name, + PinterpNc->Nvars); + if (var_info) { + long new_offset = get_index_at_nc_data(var_info->var, + vinfo_nc->dim_value(k), + dim_name, (k == info->t_slot)); + if (new_offset != bad_data_int) dimension[k] = new_offset; + } + } + } + status = PinterpNc->data(vinfo_nc->req_name().c_str(), - vinfo_nc->dimension(), - plane, pressure, info); + dimension, plane, pressure, info); // Check that the times match those requested if(status) { diff --git a/src/libcode/vx_data2d_nc_pinterp/pinterp_file.cc b/src/libcode/vx_data2d_nc_pinterp/pinterp_file.cc index d4f8451006..c5dbe62a7b 100644 --- a/src/libcode/vx_data2d_nc_pinterp/pinterp_file.cc +++ b/src/libcode/vx_data2d_nc_pinterp/pinterp_file.cc @@ -7,8 +7,6 @@ // *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* - - //////////////////////////////////////////////////////////////////////// @@ -54,7 +52,7 @@ static const char pressure_var_wrf_interp_name [] = "LEV"; static const char pa_units_str [] = "Pa"; static const char hpa_units_str [] = "hPa"; -static const string init_time_att_name = "START_DATE"; +static const string start_time_att_name = "START_DATE"; static const int max_pinterp_args = 30; @@ -75,7 +73,6 @@ static bool is_bad_data_pinterp(double); static bool is_accumulation(const char *); - //////////////////////////////////////////////////////////////////////// @@ -283,7 +280,7 @@ else { } ConcatString att_value; -get_global_att(Nc, init_time_att_name, att_value); +get_global_att(Nc, start_time_att_name, att_value); InitTime = parse_init_time(att_value.c_str()); @@ -567,53 +564,10 @@ int i; short s; float f; double d = bad_data_double; -float add_offset = 0.f; -float scale_factor = 1.f; double missing_value = get_var_missing_value(var); double fill_value = get_var_fill_value(var); -NcVarAtt *att_add_offset = get_nc_att(var, (string)"add_offset"); -NcVarAtt *att_scale_factor = get_nc_att(var, (string)"scale_factor"); -if (!IS_INVALID_NC_P(att_add_offset) && !IS_INVALID_NC_P(att_scale_factor)) { - add_offset = get_att_value_float(att_add_offset); - scale_factor = get_att_value_float(att_scale_factor); -} -if (att_add_offset) delete att_add_offset; -if (att_scale_factor) delete att_scale_factor; - -switch ( GET_NC_TYPE_ID_P(var) ) { - - case NcType::nc_INT: - status = get_nc_data(var, &i, (long *)a); - d = (double) (i); - break; - - case NcType::nc_SHORT: - status = get_nc_data(var, &s, (long *)a); - d = (double) (s); - break; - - case NcType::nc_FLOAT: - status = get_nc_data(var, &f, (long *)a); - d = (double) (f); - break; - - case NcType::nc_DOUBLE: - status = get_nc_data(var, &d, (long *)a); - break; - - default: - mlog << Error << "\nPinterpFile::data(NcVar *, const LongArray &) const -> " - << " bad type for variable \"" << (GET_NC_NAME_P(var)) << "\"\n\n"; - exit ( 1 ); - break; - -} // switch - -if ((add_offset != 0.0 || scale_factor != 1.0) && - !is_eq(d, missing_value) && - !is_eq(d, fill_value)) { - d = d * scale_factor + add_offset; -} + +status = get_nc_data(var, &d, (long *)a); if ( !status ) { @@ -784,22 +738,9 @@ plane.set_size(Nx, Ny); // get the data // double d[Ny]; -int i[Ny]; -short s[Ny]; -float f[Ny]; long offsets[dim_count]; long lengths[dim_count]; -float add_offset = 0.f; -float scale_factor = 1.f; -NcVarAtt *att_add_offset = get_nc_att(v, (string)"add_offset"); -NcVarAtt *att_scale_factor = get_nc_att(v, (string)"scale_factor"); -if (!IS_INVALID_NC_P(att_add_offset) && !IS_INVALID_NC_P(att_scale_factor)) { - add_offset = get_att_value_float(att_add_offset); - scale_factor = get_att_value_float(att_scale_factor); -} -if (att_add_offset) delete att_add_offset; -if (att_scale_factor) delete att_scale_factor; for (int k=0; k " - << " bad type for variable \"" << (GET_NC_NAME_P(v)) << "\"\n\n"; - exit ( 1 ); - break; - - } // switch - + get_nc_data(v, (double *)&d, lengths, offsets); b[x_slot] = x; @@ -854,9 +761,6 @@ for (x=0; xvar, a, plane, pressure); // // store the times // -time_index = a[Var[j].t_slot]; + time_index = a[info->t_slot]; -plane.set_init ( InitTime ); -plane.set_valid ( valid_time(time_index) ); -plane.set_lead ( lead_time(time_index) ); + plane.set_init ( InitTime ); + plane.set_valid ( valid_time(time_index) ); + plane.set_lead ( lead_time(time_index) ); // // since Pinterp files only contain WRF-ARW output, it is always a // a runtime accumulation // -if ( is_accumulation(var_name) ) { + if ( is_accumulation(var_name) ) { - plane.set_accum ( lead_time(time_index) ); + plane.set_accum ( lead_time(time_index) ); -} else { + } else { - plane.set_accum ( 0 ); + plane.set_accum ( 0 ); -} + } // // done // -return ( found ); + return ( found ); } +//////////////////////////////////////////////////////////////////////// + +bool PinterpFile::get_nc_var_info(const char *var_name, NcVarInfo *&info) const { + bool found = false; + + if (NULL == info) { + for (int j=0; j " + mlog << Error << "\n" << method_name << "only one dimension can have a range for NetCDF variable \"" << MagicStr << "\".\n\n"; exit(1); } // Store the dimension of the range and limits else { - Dimension.add(range_flag); + add_dimension(range_flag); Level.set_lower(atoi(ptr2)); Level.set_upper(atoi(++ptr3)); @@ -202,7 +218,29 @@ void VarInfoNcPinterp::set_magic(const ConcatString &nstr, const ConcatString &l } // Single level else { - Dimension.add(atoi(ptr2)); + int level = 0; + double level_value = bad_data_double; + if (is_number(ptr2)) { + if (as_offset) level = atoi(ptr2); + else { + level = vx_data2d_dim_by_value; + level_value = atof(ptr2); + } + } + else if (is_datestring(ptr2)) { + unixtime unix_time = timestring_to_unix(ptr2); + level = vx_data2d_dim_by_value; + level_value = unix_time; + as_offset = false; + } + else { + mlog << Error << "\n" << method_name + << "trouble parsing NetCDF dimension value \"" + << ptr2 << "\"!\n\n"; + exit(1); + } + if (as_offset) add_dimension(level, as_offset); + else add_dimension(level, as_offset, level_value); } } diff --git a/src/libcode/vx_data2d_nc_pinterp/var_info_nc_pinterp.h b/src/libcode/vx_data2d_nc_pinterp/var_info_nc_pinterp.h index e169437291..bff8f90389 100644 --- a/src/libcode/vx_data2d_nc_pinterp/var_info_nc_pinterp.h +++ b/src/libcode/vx_data2d_nc_pinterp/var_info_nc_pinterp.h @@ -23,6 +23,10 @@ /////////////////////////////////////////////////////////////////////////////// +typedef CRC_Array BoolArray; + +/////////////////////////////////////////////////////////////////////////////// + // // List of Pinterp precipitation variable names // Taken from the WRF version 3.2 Registry.EM file @@ -184,9 +188,12 @@ class VarInfoNcPinterp : public VarInfo // LongArray Dimension; // Dimension values for extracting 2D field + BoolArray Is_offset; // boolean for Dimension value (true: offset, false: value to be an offset (false for value) + NumArray Dim_value; // Dimension values as float for extracting 2D field void init_from_scratch(); void assign(const VarInfoNcPinterp &); + void clear_dimension(); public: VarInfoNcPinterp(); @@ -202,8 +209,12 @@ class VarInfoNcPinterp : public VarInfo // GrdFileType file_type() const; - const LongArray & dimension() const; - int dimension(int i) const; + const LongArray & dimension() const; + int dimension(int i) const; + const NumArray & dim_value() const; + double dim_value(int i) const; + const BoolArray & is_offset() const; + bool is_offset(int i) const; int n_dimension() const; // @@ -213,7 +224,7 @@ class VarInfoNcPinterp : public VarInfo void set_magic(const ConcatString &, const ConcatString &); void set_dict(Dictionary &); - void add_dimension(int dim); + void add_dimension(int dim, bool as_index=true, double dim_value=bad_data_double); void set_dimension(int i_dim, int dim); // @@ -235,6 +246,10 @@ inline GrdFileType VarInfoNcPinterp::file_type() const { return(FileT inline const LongArray & VarInfoNcPinterp::dimension() const { return(Dimension); } inline int VarInfoNcPinterp::dimension(int i) const { return(Dimension[i]); } inline int VarInfoNcPinterp::n_dimension() const { return(Dimension.n_elements()); } +inline const NumArray & VarInfoNcPinterp::dim_value() const { return(Dim_value); } +inline double VarInfoNcPinterp::dim_value(int i) const { return(Dim_value[i]); } +inline const BoolArray & VarInfoNcPinterp::is_offset() const { return(Is_offset); } +inline bool VarInfoNcPinterp::is_offset(int i) const { return(Is_offset[i]); } /////////////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_data2d_nccf/data2d_nccf.cc b/src/libcode/vx_data2d_nccf/data2d_nccf.cc index 8a8b2008c3..2a078bf4ed 100644 --- a/src/libcode/vx_data2d_nccf/data2d_nccf.cc +++ b/src/libcode/vx_data2d_nccf/data2d_nccf.cc @@ -76,8 +76,8 @@ MetNcCFDataFile & MetNcCFDataFile::operator=(const MetNcCFDataFile &) { void MetNcCFDataFile::nccf_init_from_scratch() { - _file = (NcCfFile *) 0; - _time_dim_offset = -1; + _file = (NcCfFile *) 0; + _cur_time_index = -1; close(); @@ -175,51 +175,89 @@ bool MetNcCFDataFile::data_plane(VarInfo &vinfo, DataPlane &plane) if (NULL != data_var) vinfo_nc->set_req_name(data_var->name.c_str()); } + int zdim_slot = bad_data_int; int time_dim_slot = bad_data_int; long org_time_offset = bad_data_int; + long org_z_offset = bad_data_int; + NumArray dim_value = vinfo_nc->dim_value(); LongArray dimension = vinfo_nc->dimension(); - long time_cnt = (long)_file->ValidTime.n_elements(); - long time_threshold_cnt = (time_cnt + 1000) * 1000; - + BoolArray is_offset = vinfo_nc->is_offset(); + data_var = _file->find_var_name(vinfo_nc->req_name().c_str()); if (NULL != data_var) { time_dim_slot = data_var->t_slot; - if (0 <= time_dim_slot) { - org_time_offset = dimension[time_dim_slot]; - long time_offset = org_time_offset; - bool time_as_value = !vinfo_nc->level().is_time_as_offset(); - if (time_as_value || (time_offset == range_flag) || (time_offset == vx_data2d_star)) { - if (0 <= _time_dim_offset) time_offset = _time_dim_offset; - if (time_as_value && time_offset > time_threshold_cnt) // convert the unixtime to offset + for (int idx=0; idxValidTime.n(); + long time_threshold_cnt = 10000000; + org_time_offset = dim_offset; + long time_offset = org_time_offset; + if (time_offset == range_flag) time_offset = _cur_time_index; // from data_plane_array() + else if (!is_offset[idx]) { + long time_value = dim_value[idx]; + time_offset = convert_time_to_offset(time_value); + if ((0 > time_offset) || (time_offset >= time_cnt)) { + if (time_value > time_threshold_cnt) // from time string (yyyymmdd_hh) + mlog << Warning << "\n" << method_name << "the requested time " + << unix_to_yyyymmdd_hhmmss(time_value) << " for \"" + << vinfo.req_name() << "\" variable does not exist (" + << unix_to_yyyymmdd_hhmmss(_file->ValidTime[0]) << " and " + << unix_to_yyyymmdd_hhmmss(_file->ValidTime[time_cnt-1]) << ").\n\n"; + else + mlog << Warning << "\n" << method_name << "the requested time value " + << time_value << " for \"" << vinfo.req_name() << "\" variable " + << "is out of range (between 0 and " << (time_cnt-1) << ").\n\n"; + + return false; + } + } + else if ((0 > time_offset) || (time_offset >= time_cnt)) { time_offset = convert_time_to_offset(time_offset); - } - - if ((0 <= time_offset) && (time_offset < time_cnt)) + } + if ((0 > time_offset) || (time_offset >= time_cnt)) { + mlog << Error << "\n" << method_name << "the requested time offset " + << time_offset << " for \"" << vinfo.req_name() << "\" variable " + << "is out of range (between 0 and " << (time_cnt-1) << ").\n\n"; + return false; + } dimension[time_dim_slot] = time_offset; + } else { - bool do_stop = true; - if (time_offset > time_threshold_cnt) // is from time string (yyyymmdd_hh) - mlog << Warning << "\n" << method_name << "the requested time " - << unix_to_yyyymmdd_hhmmss(time_offset) << " for \"" - << vinfo.req_name() << "\" variable does not exist (" - << unix_to_yyyymmdd_hhmmss(_file->ValidTime[0]) << " and " - << unix_to_yyyymmdd_hhmmss(_file->ValidTime[time_cnt-1]) << ").\n\n"; - else if (org_time_offset == bad_data_int) - mlog << Warning << "\n" << method_name << "the requested offset for \"" - << vinfo.req_name() << "\" variable " - << "is out of range (between 0 and " << (time_cnt-1) << ").\n\n"; - else if (org_time_offset == vx_data2d_star) { - do_stop = false; - dimension[time_dim_slot] = 0; - mlog << Warning << "\n" << method_name << "returns the first available time for \"" - << vinfo.req_name() << "\" variable.\n\n"; + long z_cnt = (long)_file->vlevels.n(); + if (z_cnt > 0) { + + zdim_slot = idx; + org_z_offset = dim_offset; + long z_offset = dim_offset; + string z_dim_name; + if (0 <= data_var->z_slot) { + NcDim z_dim = get_nc_dim(data_var->var, data_var->z_slot); + if (IS_VALID_NC(z_dim)) z_dim_name = GET_NC_NAME(z_dim); + } + if (!is_offset[idx]) { + // convert the value to index for slicing + z_offset = convert_value_to_offset(dim_value[idx], z_dim_name); + } + else if ((dim_offset < 0 || dim_offset >= z_cnt)) { + // convert the value to index for slicing + z_offset = convert_value_to_offset(dim_offset, z_dim_name); + } + if ((z_offset >= 0) && (z_offset < z_cnt)) + dimension[idx] = long(z_offset); + else { + if (is_offset[idx]) + mlog << Error << "\n" << method_name << "the requested vertical offset " + << dim_offset << " for \"" << vinfo.req_name() << "\" variable " + << "is out of range (between 0 and " << (z_cnt-1) << ").\n\n"; + else + mlog << Error << "\n" << method_name << "the requested vertical value " + << dim_value[idx] << " for \"" << vinfo.req_name() << "\" variable " + << "does not exist (data size = " << z_cnt << ").\n\n"; + return false; + } } - else - mlog << Warning << "\n" << method_name << "the requested offset " - << org_time_offset << " for \"" << vinfo.req_name() << "\" variable " - << "is out of range (between 0 and " << (time_cnt-1) << ").\n\n"; - - if (do_stop) return false; } } } @@ -233,6 +271,8 @@ bool MetNcCFDataFile::data_plane(VarInfo &vinfo, DataPlane &plane) if (org_time_offset != bad_data_int && 0 <= time_dim_slot) dimension[time_dim_slot] = org_time_offset; + if (org_z_offset != bad_data_int && 0 <= zdim_slot) + dimension[zdim_slot] = org_z_offset; // Check that the times match those requested @@ -311,28 +351,27 @@ int MetNcCFDataFile::data_plane_array(VarInfo &vinfo, NcVarInfo *data_var = find_first_data_var(); if (NULL != data_var) vinfo_nc->set_req_name(data_var->name.c_str()); } - - LongArray time_offsets = collect_time_offsets(vinfo); + + LongArray time_offsets = collect_time_offsets(vinfo); if (0 < time_offsets.n_elements()) { LevelInfo level = vinfo.level(); VarInfoNcCF *vinfo_nc = (VarInfoNcCF *)&vinfo; - LongArray dimension = vinfo_nc->dimension(); long time_lower = bad_data_int; long time_upper = bad_data_int; if (level.type() == LevelType_Time) { time_lower = level.lower(); time_upper = level.upper(); } - - int debug_level = 7; + for (int idx=0; idx= debug_level) { for (int idx=0; idx< time_offsets.n_elements(); idx++ ) { mlog << Debug(debug_level) << method_name << "time: " @@ -368,10 +407,10 @@ LongArray MetNcCFDataFile::collect_time_offsets(VarInfo &vinfo) { int time_dim_slot = info->t_slot; int time_dim_size = _file->ValidTime.n_elements(); if (0 < time_dim_size && time_dim_slot < 0) { - // The time dimension does not exist at the variable and the time - // variable exists. Stop time slicing and set the time offset to 0. - time_offsets.add(0); - return(time_offsets); + // The time dimension does not exist at the variable and the time + // variable exists. Stop time slicing and set the time offset to 0. + time_offsets.add(0); + return(time_offsets); } double time_lower = bad_data_double; @@ -380,7 +419,7 @@ LongArray MetNcCFDataFile::collect_time_offsets(VarInfo &vinfo) { LevelInfo level = vinfo.level(); LongArray dimension = vinfo_nc->dimension(); bool is_time_range = (level.type() == LevelType_Time); - bool time_as_value = !level.is_time_as_offset(); + bool time_as_value = !level.is_offset(); long dim_offset = (time_dim_slot >= 0) ? dimension[time_dim_slot] : -1; bool include_all_times = (dim_offset == vx_data2d_star); @@ -444,8 +483,7 @@ LongArray MetNcCFDataFile::collect_time_offsets(VarInfo &vinfo) { if (_file->ValidTime[idx] == next_time) { time_offsets.add(idx); mlog << Debug(9) << method_name << " found the time " - << (is_time_range ? - unix_to_yyyymmdd_hhmmss(_file->ValidTime[idx]) : idx) << "\n"; + << unix_to_yyyymmdd_hhmmss(_file->ValidTime[idx]) << "\n"; next_time += time_inc; } } @@ -571,18 +609,72 @@ int MetNcCFDataFile::index(VarInfo &vinfo){ //////////////////////////////////////////////////////////////////////// long MetNcCFDataFile::convert_time_to_offset(long time_value) { + bool found = false; + bool found_value = false; long time_offset = time_value; - int dim_size = _file->ValidTime.n_elements(); - long time_threshold_cnt = (dim_size + 1000) * 1000; - if (time_value >= time_threshold_cnt) { + int dim_size = _file->ValidTime.n(); + static const string method_name + = "MetNcCFDataFile::convert_time_to_offset() -> "; + + for (int idx=0; idxValidTime[idx] == time_value) { + time_offset = idx; + found = true; + break; + } + } + + if (!found) { + dim_size = _file->raw_times.n(); for (int idx=0; idxValidTime[idx] == time_value) { + if (_file->raw_times[idx] == time_value) { time_offset = idx; + found_value = true; break; } } } + + if (found) + mlog << Debug(7) << method_name << " Found " + << unix_to_yyyymmdd_hhmmss(time_value) + << " at index " << time_offset << " from time value\n"; + else if (found_value) + mlog << Debug(7) << method_name << " Found " << time_value + << " at index " << time_offset << " from time value\n"; + else + mlog << Warning << "\n" << method_name << time_value + << " does not exist at time variable\n\n"; + return time_offset; } //////////////////////////////////////////////////////////////////////// + +long MetNcCFDataFile::convert_value_to_offset(double z_value, string z_dim_name) { + bool found = false; + long z_offset = (long)z_value; + int dim_size = _file->vlevels.n(); + static const string method_name + = "MetNcCFDataFile::convert_value_to_offset() -> "; + + for (int idx=0; idxvlevels[idx], z_value)) { + found = true; + z_offset = idx; + break; + } + } + + if (!found && 0 < z_dim_name.length()) { + NcVarInfo *var_info = find_var_info_by_dim_name(_file->Var, z_dim_name, _file->Nvars); + if (var_info) { + long new_offset = get_index_at_nc_data(var_info->var, z_value, z_dim_name); + if (new_offset != bad_data_int) z_offset = new_offset; + } + } + + return z_offset; +} + +//////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_data2d_nccf/data2d_nccf.h b/src/libcode/vx_data2d_nccf/data2d_nccf.h index dbe5ed8073..4abc64d934 100644 --- a/src/libcode/vx_data2d_nccf/data2d_nccf.h +++ b/src/libcode/vx_data2d_nccf/data2d_nccf.h @@ -36,7 +36,8 @@ class MetNcCFDataFile : public Met2dDataFile { void nccf_init_from_scratch(); NcVarInfo *find_first_data_var(); - long convert_time_to_offset(long time_dim_value); + long convert_time_to_offset(long time_value); + long convert_value_to_offset(double z_value, string z_dim_name); LongArray collect_time_offsets(VarInfo &vinfo); MetNcCFDataFile(const MetNcCFDataFile &); @@ -47,7 +48,7 @@ class MetNcCFDataFile : public Met2dDataFile { // NcCfFile * _file; // allocated - long _time_dim_offset; // current time offset to get the data plane + long _cur_time_index; // current time index to get the data plane (for array of data_plane) public: diff --git a/src/libcode/vx_data2d_nccf/nccf_file.cc b/src/libcode/vx_data2d_nccf/nccf_file.cc index 7dcb7dc99a..5235b1639d 100644 --- a/src/libcode/vx_data2d_nccf/nccf_file.cc +++ b/src/libcode/vx_data2d_nccf/nccf_file.cc @@ -150,6 +150,8 @@ void NcCfFile::close() // Reset the time values ValidTime.clear(); + raw_times.clear(); + vlevels.clear(); InitTime = (unixtime)0; AccumTime = (unixtime)0; @@ -183,7 +185,6 @@ bool NcCfFile::open(const char * filepath) // NcError err(NcError::silent_nonfatal); // Open the file - _ncFile = open_ncfile(filepath); if (IS_INVALID_NC_P(_ncFile)) @@ -206,15 +207,16 @@ bool NcCfFile::open(const char * filepath) // Pull out the variables + int max_dim_count = 0; + NcVar *z_var = (NcVar *)0; NcVar *valid_time_var = (NcVar *)0; ConcatString att_value; - StringArray varNames; Nvars = get_var_names(_ncFile, &varNames); Var = new NcVarInfo [Nvars]; - //get_vars_info(Nc, &Var); + NcDim dim; for (int j=0; j max_dim_count) max_dim_count = dim_count; Var[j].Dims = new NcDim * [dim_count]; // parse the variable attributes - get_att_str( Var[j], (string)"long_name", Var[j].long_name_att ); - get_att_str( Var[j], (string)"units", Var[j].units_att ); + get_att_str( Var[j], long_name_att_name, Var[j].long_name_att ); + get_att_str( Var[j], units_att_name, Var[j].units_att ); - if (get_nc_att_value(Var[j].var, (string)"axis", att_value)) { + if (get_var_axis(Var[j].var, att_value)) { if ( "T" == att_value || "time" == att_value ) { valid_time_var = Var[j].var; _time_var_info = &Var[j]; } + else if ( "Z" == att_value || "z" == att_value ) { + z_var = Var[j].var; + } } - if (get_nc_att_value(Var[j].var, (string)"standard_name", att_value)) { + + if (get_var_standard_name(Var[j].var, att_value)) { if ( "time" == att_value ) { valid_time_var = Var[j].var; _time_var_info = &Var[j]; } else if( "latitude" == att_value ) _latVar = Var[j].var; else if( "longitude" == att_value ) _lonVar = Var[j].var; + else if( ("air_pressure" == att_value || "height" == att_value) + && (0 == z_var) ) z_var = Var[j].var; } if ( Var[j].name == "time" && (valid_time_var == 0)) { valid_time_var = Var[j].var; @@ -297,30 +306,25 @@ bool NcCfFile::open(const char * filepath) // Parse the units for the time variable. ut = sec_per_unit = 0; - NcVarAtt *units_att = get_nc_att(valid_time_var, (string)"units", false); - if (IS_VALID_NC_P(units_att)) - { - if (!get_att_value_chars(units_att, units) || units.length() == 0) - { + if (get_var_units(valid_time_var, units)) { + if (units.length() == 0) { mlog << Warning << "\n" << method_name << "the \"time\" variable must contain a \"units\" attribute. " << "Using valid time of 0\n\n"; } - else - { + else { mlog << Debug(4) << method_name << "parsing units for the time variable \"" << units << "\"\n"; parse_cf_time_string(units.c_str(), ut, sec_per_unit); } } - if (units_att) delete units_att; NcVar bounds_time_var; NcVar *nc_time_var = (NcVar *)0; bool use_bounds_var = false; ConcatString bounds_var_name; nc_time_var = valid_time_var; - NcVarAtt *bounds_att = get_nc_att(valid_time_var, (string)"bounds", false); + NcVarAtt *bounds_att = get_nc_att(valid_time_var, bounds_att_name, false); if (get_att_value_chars(bounds_att, bounds_var_name)) { bounds_time_var = get_nc_var(_ncFile, bounds_var_name.c_str()); use_bounds_var = IS_VALID_NC(bounds_time_var); @@ -346,6 +350,7 @@ bool NcCfFile::open(const char * filepath) if( latest_time < time_values[i] ) latest_time = time_values[i]; } ValidTime.add(add_to_unixtime(ut, sec_per_unit, latest_time, no_leap_year)); + raw_times.add(latest_time); } else { if (use_bounds_var) { @@ -353,6 +358,7 @@ bool NcCfFile::open(const char * filepath) double time_fraction; for(int i=0; iunits_att.c_str())) { + Var[j].t_slot = k; + t_dims.add(dim_name); + } + else if (is_nc_unit_latitude(info->units_att.c_str())) { + Var[j].y_slot = k; + } + else if (is_nc_unit_longitude(info->units_att.c_str())) { + Var[j].x_slot = k; + } + else { + Var[j].z_slot = k; + z_dims.add(dim_name); + if (0 == z_dim_name.length()) z_dim_name = dim_name; + } + } + } } } // for j + // Find the vertical level variable from dimension name if not found + if (IS_INVALID_NC_P(z_var) && (0 < z_dim_name.length())) { + NcVarInfo *info = find_var_by_dim_name(z_dim_name.c_str()); + if (info) z_var = info->var; + } + + // Pull out the vertical levels + if (IS_VALID_NC_P(z_var)) { + + int z_count = (int) get_data_size(z_var); + double *z_values = new double[z_count]; + + if( get_nc_data(z_var, z_values) ) { + for(int i=0; i y_slot ) { @@ -1134,7 +1076,6 @@ bool NcCfFile::getData(NcVar * v, const LongArray & a, DataPlane & plane) const if( is_eq(value, missing_value) || is_eq(value, fill_value) ) { value = bad_data_double; } - else if( do_scale_factor ) value = value * scale_factor + add_offset; plane.set(value, x, y_offset); @@ -1152,7 +1093,6 @@ bool NcCfFile::getData(NcVar * v, const LongArray & a, DataPlane & plane) const if( is_eq(value, missing_value) || is_eq(value, fill_value) ) { value = bad_data_double; } - else if( do_scale_factor ) value = value * scale_factor + add_offset; plane.set(value, x, y_offset); @@ -1227,6 +1167,32 @@ NcVarInfo* NcCfFile::find_var_name(const char * var_name) const //////////////////////////////////////////////////////////////////////// +NcVarInfo* NcCfFile::find_var_by_dim_name(const char *dim_name) const +{ + NcVarInfo *var = find_var_name(dim_name); + if (!var) { + //StringArray dimNames; + for (int i=0; igetSize(), _xDim->getSize()); status = true; } @@ -1393,7 +1351,7 @@ void NcCfFile::get_grid_from_grid_mapping(const NcVarAtt *grid_mapping_att) } } /* endfor - i */ - if (grid_mapping_var == 0 || IS_INVALID_NC_P(grid_mapping_var)) + if ((grid_mapping_var == 0) || (IS_INVALID_NC_P(grid_mapping_var))) { mlog << Error << "\n" << method_name << " -> " << "Cannot extract grid mapping variable (" << mapping_name @@ -1403,7 +1361,7 @@ void NcCfFile::get_grid_from_grid_mapping(const NcVarAtt *grid_mapping_att) // Get the name of the grid mapping - NcVarAtt *grid_mapping_name_att = get_nc_att(grid_mapping_var, (string)"grid_mapping_name"); + NcVarAtt *grid_mapping_name_att = get_nc_att(grid_mapping_var, grid_mapping_name_att_name); if (IS_INVALID_NC_P(grid_mapping_name_att)) { @@ -1672,18 +1630,14 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin // files that are in other units, we'll have to update the code to do the // units conversions. - const NcVarAtt *x_coord_units_att = get_nc_att(_xCoordVar, (string)"units"); - if (IS_INVALID_NC_P(x_coord_units_att)) - { + ConcatString x_coord_units_name; + if (!get_var_units(_xCoordVar, x_coord_units_name)) { mlog << Warning << "\n" << method_name << " -> " << "Units not given for X coordinate variable -- assuming meters.\n\n"; } - else - { + else { //const char *x_coord_units_name = x_coord_units_att->getValues(att->as_string(0); - ConcatString x_coord_units_name; - if (!get_att_value_chars(x_coord_units_att, x_coord_units_name)) - { + if (0 == x_coord_units_name.length()) { mlog << Warning << "\n" << method_name << " -> " << "Cannot extract X coordinate units from netCDF file -- " << "assuming meters.\n\n"; @@ -1699,20 +1653,14 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin } } - if (x_coord_units_att) delete x_coord_units_att; - - const NcVarAtt *y_coord_units_att = get_nc_att(_yCoordVar, (string)"units"); - if (IS_INVALID_NC_P(y_coord_units_att)) - { + ConcatString y_coord_units_name; + if (!get_var_units(_yCoordVar, y_coord_units_name)) { mlog << Warning << "\n" << method_name << " -> " << "Units not given for Y coordinate variable -- assuming meters.\n\n"; } - else - { + else { //const char *y_coord_units_name = y_coord_units_att->getValues(att->as_string(0); - ConcatString y_coord_units_name; - if (!get_att_value_chars(y_coord_units_att, y_coord_units_name)) - { + if (0 == y_coord_units_name.length()) { mlog << Warning << "\n" << method_name << " -> " << "Cannot extract Y coordinate units from netCDF file -- " << "assuming meters.\n\n"; @@ -1728,8 +1676,6 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin } } - if (y_coord_units_att) delete y_coord_units_att; - // Figure out the dx/dy and x/y pin values from the dimension variables long x_counts = GET_NC_SIZE_P(_xDim); @@ -1738,7 +1684,6 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin //_xCoordVar->get(x_values, &x_counts); get_nc_data(_xCoordVar, x_values); - long y_counts = GET_NC_SIZE_P(_yDim); double y_values[y_counts]; @@ -1856,22 +1801,10 @@ void NcCfFile::get_grid_mapping_latitude_longitude(const NcVar *grid_mapping_var // The lat/lon dimensions are identified by their units const NcVar coord_var = get_var(_ncFile, _dims[dim_num]->getName().c_str()); - if (IS_INVALID_NC(coord_var)) - continue; - - const NcVarAtt *units_att = get_nc_att(&coord_var, (string)"units"); - if (IS_INVALID_NC_P(units_att)) { - if (units_att) delete units_att; - continue; - } + if (IS_INVALID_NC(coord_var)) continue; ConcatString dim_units; - if (!get_att_value_chars(units_att, dim_units)) { - if (units_att) delete units_att; - continue; - } - - if (units_att) delete units_att; + if (!get_var_units(&coord_var, dim_units)) continue; // See if this is a lat or lon dimension @@ -2062,17 +1995,11 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if (IS_INVALID_NC(coord_var)) continue; - const NcVarAtt *std_name_att = get_nc_att(&coord_var, (string)"standard_name"); - if (IS_INVALID_NC_P(std_name_att)) { - if (std_name_att) delete std_name_att; - continue; - } ConcatString dim_std_name; - if (!get_att_value_chars(std_name_att, dim_std_name)) { - if (std_name_att) delete std_name_att; + const NcVarAtt *std_name_att = get_nc_att(&coord_var, standard_name_att_name); + if (!get_var_standard_name(&coord_var, dim_std_name)) { continue; } - if (std_name_att) delete std_name_att; // See if this is an X or Y dimension @@ -2150,17 +2077,14 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va // files that are in other units, we'll have to update the code to do the // units conversions. - const NcVarAtt *x_coord_units_att = get_nc_att(_xCoordVar, (string)"units"); - if (IS_INVALID_NC_P(x_coord_units_att)) - { + ConcatString x_coord_units_name; + const NcVarAtt *x_coord_units_att = get_nc_att(_xCoordVar, units_att_name); + if (!get_var_units(_xCoordVar, x_coord_units_name)) { mlog << Warning << "\n" << method_name << " -> " << "Units not given for X coordinate variable -- assuming meters.\n\n"; } - else - { - ConcatString x_coord_units_name; - if (!get_att_value_chars(x_coord_units_att, x_coord_units_name)) - { + else { + if (0 == x_coord_units_name.length()) { mlog << Warning << "\n" << method_name << " -> " << "Cannot extract X coordinate units from netCDF file -- " << "assuming meters.\n\n"; @@ -2176,19 +2100,14 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va } } - if(x_coord_units_att) delete x_coord_units_att; - - const NcVarAtt *y_coord_units_att = get_nc_att(_yCoordVar, (string)"units"); - if (IS_INVALID_NC_P(y_coord_units_att)) - { + ConcatString y_coord_units_name; + const NcVarAtt *y_coord_units_att = get_nc_att(_yCoordVar, units_att_name); + if (!get_var_units(_yCoordVar, y_coord_units_name)) { mlog << Warning << "\n" << method_name << " -> " << "Units not given for Y coordinate variable -- assuming meters.\n\n"; } - else - { - ConcatString y_coord_units_name; - if (!get_att_value_chars(y_coord_units_att, y_coord_units_name)) - { + else { + if (0 == y_coord_units_name.length()) { mlog << Warning << "\n" << method_name << " -> " << "Cannot extract Y coordinate units from netCDF file -- " << "assuming meters.\n\n"; @@ -2204,8 +2123,6 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va } } - if(y_coord_units_att) delete y_coord_units_att; - // Figure out the dx/dy and x/y pin values from the dimension variables long x_counts = GET_NC_SIZE_P(_xDim); @@ -2307,20 +2224,15 @@ void NcCfFile::get_grid_mapping_rotated_latitude_longitude(const NcVar *grid_map if (IS_INVALID_NC(coord_var)) continue; - const NcVarAtt *std_name_att = get_nc_att(&coord_var, (string)"standard_name"); - if (IS_INVALID_NC_P(std_name_att)) { - if (std_name_att) delete std_name_att; + ConcatString dim_standard_name; + if (!get_var_standard_name(&coord_var, dim_standard_name)) { continue; } - ConcatString dim_standard_name; - if (!get_att_value_chars(std_name_att, dim_standard_name)) { - if (std_name_att) delete std_name_att; + if (0 == dim_standard_name.length()) { continue; } - if (std_name_att) delete std_name_att; - // See if this is a grid_latitude or grid_longitude dimension if (dim_standard_name == "grid_latitude") @@ -2584,7 +2496,7 @@ void NcCfFile::get_grid_mapping_geostationary( if (IS_INVALID_NC(coord_var)) continue; - const NcVarAtt *std_name_att = get_nc_att(&coord_var, (string)"standard_name"); + const NcVarAtt *std_name_att = get_nc_att(&coord_var, standard_name_att_name); if (IS_INVALID_NC_P(std_name_att)) { if (std_name_att) delete std_name_att; continue; @@ -2779,11 +2691,10 @@ bool NcCfFile::get_grid_from_coordinates(const NcVar *data_var) { mlog << Debug(6) << "\n" << method_name << " -> " << "collect GRID info from \"" << GET_NC_NAME_P(data_var) << "\".\n\n"; - NcVarAtt *coordinates_att = get_nc_att(data_var, (string)"coordinates"); + NcVarAtt *coordinates_att = get_nc_att(data_var, coordinates_att_name); if (IS_VALID_NC_P(coordinates_att)) { ConcatString coordinates_value, units_value, axis_value; - NcVarAtt *missing_value_att = (NcVarAtt*) 0; get_att_value_chars(coordinates_att, coordinates_value); StringArray sa = coordinates_value.split(" "); int count = sa.n_elements(); @@ -2799,7 +2710,7 @@ bool NcCfFile::get_grid_from_coordinates(const NcVar *data_var) { is_x_dim_var = is_y_dim_var = false; for (int cIdx = 0; cIdx " << "unknown units [" << units_value << "] for the coordinate variable [" @@ -2826,21 +2737,11 @@ bool NcCfFile::get_grid_from_coordinates(const NcVar *data_var) { } if (is_y_dim_var || Var[var_num].name == y_dim_var_name) { _yCoordVar = Var[var_num].var; - missing_value_att = get_nc_att(_yCoordVar, (string)"_FillValue"); - if (IS_VALID_NC_P(missing_value_att)) { - lat_missing_value = get_att_value_double(missing_value_att); - } + get_var_fill_value(_yCoordVar, lat_missing_value); } else if (is_x_dim_var || Var[var_num].name == x_dim_var_name) { _xCoordVar = Var[var_num].var; - missing_value_att = get_nc_att(_xCoordVar, (string)"_FillValue"); - if (IS_VALID_NC_P(missing_value_att)) { - lon_missing_value = get_att_value_double(missing_value_att); - } - } - if(missing_value_att) { - delete missing_value_att; - missing_value_att = (NcVarAtt *)0; + get_var_fill_value(_xCoordVar, lon_missing_value); } } diff --git a/src/libcode/vx_data2d_nccf/nccf_file.h b/src/libcode/vx_data2d_nccf/nccf_file.h index e2acf3ee64..9aa9308f16 100644 --- a/src/libcode/vx_data2d_nccf/nccf_file.h +++ b/src/libcode/vx_data2d_nccf/nccf_file.h @@ -80,6 +80,8 @@ class NcCfFile { // TimeArray ValidTime; + NumArray raw_times; + NumArray vlevels; unixtime InitTime; unixtime AccumTime; @@ -112,6 +114,7 @@ class NcCfFile { bool getData(const char *, const LongArray &, DataPlane &, NcVarInfo *&) const; NcVarInfo* find_var_name(const char * var_name) const; + NcVarInfo* find_var_by_dim_name(const char *dim_name) const; private: diff --git a/src/libcode/vx_data2d_nccf/var_info_nccf.cc b/src/libcode/vx_data2d_nccf/var_info_nccf.cc index 25495392f0..ee3880971c 100644 --- a/src/libcode/vx_data2d_nccf/var_info_nccf.cc +++ b/src/libcode/vx_data2d_nccf/var_info_nccf.cc @@ -95,8 +95,10 @@ void VarInfoNcCF::assign(const VarInfoNcCF &v) { VarInfo::assign(v); // Copy - Dimension.clear(); - for(i=0; i " + if (Dimension.has(range_flag)) { + mlog << Error << "\n" << method_name << "only one dimension can have a range for NetCDF variable \"" << MagicStr << "\".\n\n"; exit(1); } - else - { - int increment = 0; + else { + int increment = 1; // Store the dimension of the range and limits *ptr3++ = 0; char *ptr_inc = strchr(ptr3, ':'); @@ -228,50 +242,66 @@ void VarInfoNcCF::set_magic(const ConcatString &nstr, const ConcatString &lstr) bool datestring_start = is_datestring(ptr2); bool datestring_end = is_datestring(ptr3); + if (datestring_start != datestring_end) { + mlog << Error << "\n" << method_name + << "the time value and an index/offset can not be mixed for NetCDF variable \"" + << MagicStr << "\".\n\n"; + exit(1); + } + if (datestring_start && datestring_end) as_offset = false; + unixtime time_lower = datestring_start - ? timestring_to_unix(ptr2) : atoi(ptr2); + ? timestring_to_unix(ptr2) + : (as_offset ? atoi(ptr2) : atof(ptr2)); unixtime time_upper = datestring_end - ? timestring_to_unix(ptr3) : atoi(ptr3); + ? timestring_to_unix(ptr3) + : (as_offset ? atoi(ptr3) : atof(ptr3)); if (ptr_inc != NULL) { - if (datestring_end && datestring_start) { - increment = timestring_to_sec(ptr_inc); - mlog << Debug(7) << method_name - << " increment: \"" << ptr_inc << "\" to " - << increment << " seconds.\n"; - } - else increment = atoi(ptr_inc); + if (as_offset) increment = atoi(ptr_inc); + else { + increment = is_float(ptr_inc) + ? atof(ptr_inc) : timestring_to_sec(ptr_inc); + mlog << Debug(7) << method_name + << " increment: \"" << ptr_inc << "\" to " + << increment << " seconds.\n"; + } } - Dimension.add(range_flag); + add_dimension(range_flag, as_offset); Level.set_lower(time_lower); Level.set_upper(time_upper); Level.set_increment(increment); // Assume time level type for a range of levels Level.set_type(LevelType_Time); - if (datestring_end && datestring_start) - as_offset = false; + Level.set_is_offset(as_offset); } } - else - { + else { // Single level int level = 0; - if (is_datestring(ptr2)) { + double level_value = bad_data_double; + if (is_number(ptr2)) { + if (as_offset) level = atoi(ptr2); + else { + level = vx_data2d_dim_by_value; + level_value = atof(ptr2); + } + } + else if (is_datestring(ptr2)) { unixtime unix_time = timestring_to_unix(ptr2); - level = unix_time; + level = vx_data2d_dim_by_value; + level_value = unix_time; as_offset = false; } - else if (is_number(ptr2)) { - level = atoi(ptr2); - } else { mlog << Error << "\n" << method_name << "trouble parsing NetCDF dimension value \"" << ptr2 << "\"!\n\n"; exit(1); } - Dimension.add(level); + if (as_offset) add_dimension(level, as_offset); + else add_dimension(level, as_offset, level_value); } } @@ -279,7 +309,6 @@ void VarInfoNcCF::set_magic(const ConcatString &nstr, const ConcatString &lstr) ptr = NULL; } // end while - Level.set_time_as_offset(as_offset); } // end else diff --git a/src/libcode/vx_data2d_nccf/var_info_nccf.h b/src/libcode/vx_data2d_nccf/var_info_nccf.h index f49326d80a..f740539e0d 100644 --- a/src/libcode/vx_data2d_nccf/var_info_nccf.h +++ b/src/libcode/vx_data2d_nccf/var_info_nccf.h @@ -23,6 +23,10 @@ /////////////////////////////////////////////////////////////////////////////// +typedef CRC_Array BoolArray; + +/////////////////////////////////////////////////////////////////////////////// + class VarInfoNcCF : public VarInfo { private: @@ -32,9 +36,12 @@ class VarInfoNcCF : public VarInfo // LongArray Dimension; // Dimension values for extracting 2D field + BoolArray Is_offset; // boolean for Dimension value (true: offset, false: value to be an offset (false for value) + NumArray Dim_value; // Dimension values as float for extracting 2D field void init_from_scratch(); void assign(const VarInfoNcCF &); + void clear_dimension(); public: VarInfoNcCF(); @@ -49,10 +56,14 @@ class VarInfoNcCF : public VarInfo // get stuff // - GrdFileType file_type() const; - const LongArray & dimension() const; - int dimension(int i) const; - int n_dimension() const; + GrdFileType file_type() const; + const LongArray & dimension() const; + int dimension(int i) const; + const NumArray & dim_value() const; + double dim_value(int i) const; + const BoolArray & is_offset() const; + bool is_offset(int i) const; + int n_dimension() const; // // set stuff @@ -61,7 +72,7 @@ class VarInfoNcCF : public VarInfo void set_magic(const ConcatString &, const ConcatString &); void set_dict(Dictionary &s); - void add_dimension(int dim); + void add_dimension(int dim, bool as_offset=true, double dim_value=bad_data_double); // // do stuff @@ -78,9 +89,13 @@ class VarInfoNcCF : public VarInfo /////////////////////////////////////////////////////////////////////////////// inline GrdFileType VarInfoNcCF::file_type() const { return(FileType_NcCF); } -inline const LongArray & VarInfoNcCF::dimension() const { return(Dimension); } -inline int VarInfoNcCF::dimension(int i) const { return(Dimension[i]); } -inline int VarInfoNcCF::n_dimension() const { return(Dimension.n_elements()); } +inline const LongArray & VarInfoNcCF::dimension() const { return(Dimension); } +inline int VarInfoNcCF::dimension(int i) const { return(Dimension[i]); } +inline int VarInfoNcCF::n_dimension() const { return(Dimension.n_elements());} +inline const NumArray & VarInfoNcCF::dim_value() const { return(Dim_value); } +inline double VarInfoNcCF::dim_value(int i) const { return(Dim_value[i]); } +inline const BoolArray & VarInfoNcCF::is_offset() const { return(Is_offset); } +inline bool VarInfoNcCF::is_offset(int i) const { return(Is_offset[i]); } /////////////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_nc_util/nc_utils.cc b/src/libcode/vx_nc_util/nc_utils.cc index 6820afc6bd..f439407c1f 100644 --- a/src/libcode/vx_nc_util/nc_utils.cc +++ b/src/libcode/vx_nc_util/nc_utils.cc @@ -57,7 +57,7 @@ bool get_att_value(const NcAtt *att, ConcatString &value) { //////////////////////////////////////////////////////////////////////// template -bool _get_att_num_value(const NcAtt *att, T &att_val, int matching_type) { +bool get_att_num_value_(const NcAtt *att, T &att_val, int matching_type) { bool status = false; if (IS_VALID_NC_P(att)) { int nc_type_id = GET_NC_TYPE_ID_P(att); @@ -83,42 +83,42 @@ bool _get_att_num_value(const NcAtt *att, T &att_val, int matching_type) { //////////////////////////////////////////////////////////////////////// bool get_att_value(const NcAtt *att, ncbyte &att_val) { - bool status = _get_att_num_value(att, att_val, NC_BYTE); + bool status = get_att_num_value_(att, att_val, NC_BYTE); return(status); } //////////////////////////////////////////////////////////////////////// bool get_att_value(const NcAtt *att, short &att_val) { - bool status = _get_att_num_value(att, att_val, NC_SHORT); + bool status = get_att_num_value_(att, att_val, NC_SHORT); return(status); } //////////////////////////////////////////////////////////////////////// bool get_att_value(const NcAtt *att, int &att_val) { - bool status = _get_att_num_value(att, att_val, NC_INT); + bool status = get_att_num_value_(att, att_val, NC_INT); return(status); } //////////////////////////////////////////////////////////////////////// bool get_att_value(const NcAtt *att, unsigned int &att_val) { - bool status = _get_att_num_value(att, att_val, NC_UINT); + bool status = get_att_num_value_(att, att_val, NC_UINT); return(status); } //////////////////////////////////////////////////////////////////////// bool get_att_value(const NcAtt *att, float &att_val) { - bool status = _get_att_num_value(att, att_val, NC_FLOAT); + bool status = get_att_num_value_(att, att_val, NC_FLOAT); return(status); } //////////////////////////////////////////////////////////////////////// bool get_att_value(const NcAtt *att, double &att_val) { - bool status = _get_att_num_value(att, att_val, NC_DOUBLE); + bool status = get_att_num_value_(att, att_val, NC_DOUBLE); return(status); } @@ -490,7 +490,7 @@ bool get_nc_att_value(const NcVar *var, const ConcatString &att_name, //////////////////////////////////////////////////////////////////////// template -bool _get_nc_att_value(const NcVar *var, const ConcatString &att_name, +bool get_nc_att_value_(const NcVar *var, const ConcatString &att_name, T &att_val, bool exit_on_error, T bad_data, const char *caller_name) { bool status = false; @@ -521,17 +521,27 @@ bool _get_nc_att_value(const NcVar *var, const ConcatString &att_name, bool get_nc_att_value(const NcVar *var, const ConcatString &att_name, int &att_val, bool exit_on_error) { static const char *method_name = "get_nc_att_value(NcVar,int) -> "; - bool status = _get_nc_att_value(var, att_name, att_val, exit_on_error, + bool status = get_nc_att_value_(var, att_name, att_val, exit_on_error, bad_data_int, method_name); return(status); } //////////////////////////////////////////////////////////////////////// +bool get_nc_att_value(const NcVar *var, const ConcatString &att_name, + double &att_val, bool exit_on_error) { + static const char *method_name = "get_nc_att_value(NcVar,double) -> "; + bool status = get_nc_att_value_(var, att_name, att_val, exit_on_error, + bad_data_double, method_name); + return(status); +} + +//////////////////////////////////////////////////////////////////////// + bool get_nc_att_value(const NcVar *var, const ConcatString &att_name, float &att_val, bool exit_on_error) { static const char *method_name = "get_nc_att_value(NcVar,float) -> "; - bool status = _get_nc_att_value(var, att_name, att_val, exit_on_error, + bool status = get_nc_att_value_(var, att_name, att_val, exit_on_error, bad_data_float, method_name); return(status); } @@ -558,7 +568,7 @@ bool get_nc_att_value(const NcVarAtt *att, ConcatString &att_val) { //////////////////////////////////////////////////////////////////////// template -bool _get_nc_att_value(const NcVarAtt *att, T &att_val, bool exit_on_error, +bool get_nc_att_value_(const NcVarAtt *att, T &att_val, bool exit_on_error, T bad_data, const char *caller_name) { bool status = true; @@ -582,7 +592,7 @@ bool _get_nc_att_value(const NcVarAtt *att, T &att_val, bool exit_on_error, bool get_nc_att_value(const NcVarAtt *att, int &att_val, bool exit_on_error) { static const char *method_name = "get_nc_att_value(NcVarAtt,int) -> "; - bool status = _get_nc_att_value(att, att_val, exit_on_error, bad_data_int, method_name); + bool status = get_nc_att_value_(att, att_val, exit_on_error, bad_data_int, method_name); return(status); } @@ -590,7 +600,7 @@ bool get_nc_att_value(const NcVarAtt *att, int &att_val, bool exit_on_error) { bool get_nc_att_value(const NcVarAtt *att, float &att_val, bool exit_on_error) { static const char *method_name = "get_nc_att_value(NcVarAtt,float) -> "; - bool status = _get_nc_att_value(att, att_val, exit_on_error, bad_data_float, method_name); + bool status = get_nc_att_value_(att, att_val, exit_on_error, bad_data_float, method_name); return(status); } @@ -598,25 +608,42 @@ bool get_nc_att_value(const NcVarAtt *att, float &att_val, bool exit_on_error) { bool get_nc_att_value(const NcVarAtt *att, double &att_val, bool exit_on_error) { static const char *method_name = "get_nc_att_value(NcVarAtt,double) -> "; - bool status = _get_nc_att_value(att, att_val, exit_on_error, bad_data_double, method_name); + bool status = get_nc_att_value_(att, att_val, exit_on_error, bad_data_double, method_name); return(status); } /////////////////////////////////////////////////////////////////////////////// -bool has_att(NcFile * ncfile, const ConcatString att_name, bool exit_on_error) -{ +bool has_att(NcFile *ncfile, const ConcatString att_name, bool do_log) { bool status = false; NcGroupAtt *att; att = get_nc_att(ncfile, att_name); - if ( IS_VALID_NC_P(att)) { + if (IS_VALID_NC_P(att)) { status = true; - } else if(exit_on_error) { - mlog << Error << "\nhas_att() -> " + } + else if (do_log) { + mlog << Warning << "\nhas_att() -> " << "can't find global NetCDF attribute " << att_name << ".\n\n"; - exit ( 1 ); + } + if (att) delete att; + return status; +} + +/////////////////////////////////////////////////////////////////////////////// + +bool has_att(NcVar *var, const ConcatString att_name, bool do_log) { + bool status = false; + + NcVarAtt *att = get_nc_att(var, att_name); + if (IS_VALID_NC_P(att)) { + status = true; + } + else if (do_log) { + mlog << Warning << "\nhas_att() -> " + << "can't find NetCDF variable attribute " << att_name + << ".\n\n"; } if (att) delete att; return status; @@ -624,10 +651,22 @@ bool has_att(NcFile * ncfile, const ConcatString att_name, bool exit_on_error) //////////////////////////////////////////////////////////////////////// +bool has_add_offset_attr(NcVar *var) { + return has_att(var, add_offset_att_name); +} + +//////////////////////////////////////////////////////////////////////// + +bool has_scale_factor_attr(NcVar *var) { + return has_att(var, scale_factor_att_name); +} + +//////////////////////////////////////////////////////////////////////// + bool has_unsigned_attribute(NcVar *var) { bool is_unsigned = false; static const char *method_name = "has_unsigned_attribute() -> "; - NcVarAtt *att_unsigned = get_nc_att(var, string("_Unsigned")); + NcVarAtt *att_unsigned = get_nc_att(var, string("_Unsigned")); if (IS_VALID_NC_P(att_unsigned)) { ConcatString att_value; get_att_value_chars(att_unsigned, att_value); @@ -729,7 +768,7 @@ bool get_global_att(const NcFile *nc, const ConcatString &att_name, //////////////////////////////////////////////////////////////////////// template -bool _get_global_att_value(const NcFile *nc, const ConcatString& att_name, +bool get_global_att_value_(const NcFile *nc, const ConcatString& att_name, T &att_val, T bad_data, bool error_out, const char *caller_name) { bool status = false; // Initialize @@ -763,16 +802,16 @@ bool _get_global_att_value(const NcFile *nc, const ConcatString& att_name, bool get_global_att(const NcFile *nc, const ConcatString& att_name, int &att_val, bool error_out) { static const char *method_name = "\nget_global_att(int) -> "; - bool status = _get_global_att_value(nc, att_name, att_val, bad_data_int, + bool status = get_global_att_value_(nc, att_name, att_val, bad_data_int, false, method_name); if (!status) { short tmp_att_val; - status = _get_global_att_value(nc, att_name, tmp_att_val, (short)bad_data_int, + status = get_global_att_value_(nc, att_name, tmp_att_val, (short)bad_data_int, false, method_name); if (status) att_val = tmp_att_val; else { ncbyte tmp_val2; - status = _get_global_att_value(nc, att_name, tmp_val2, (ncbyte)bad_data_int, + status = get_global_att_value_(nc, att_name, tmp_val2, (ncbyte)bad_data_int, error_out, method_name); if (status) att_val = tmp_val2; } @@ -811,8 +850,8 @@ bool get_global_att(const NcFile *nc, const ConcatString& att_name, bool get_global_att(const NcFile *nc, const ConcatString& att_name, float &att_val, bool error_out) { static const char *method_name = "\nget_global_att(float) -> "; - bool status = _get_global_att_value(nc, att_name, att_val, bad_data_float, - error_out, method_name); + bool status = get_global_att_value_(nc, att_name, att_val, bad_data_float, + error_out, method_name); return(status); } @@ -823,11 +862,11 @@ bool get_global_att(const NcFile *nc, const ConcatString& att_name, double &att_val, bool error_out) { static const char *method_name = "\nget_global_att(double) -> "; bool status; - status = _get_global_att_value(nc, att_name, att_val, bad_data_double, - false, method_name); + status = get_global_att_value_(nc, att_name, att_val, bad_data_double, + false, method_name); if (!status) { float tmp_att_val; - status = _get_global_att_value(nc, att_name, tmp_att_val, bad_data_float, + status = get_global_att_value_(nc, att_name, tmp_att_val, bad_data_float, error_out, method_name); if (status) att_val = tmp_att_val; } @@ -930,7 +969,7 @@ int get_var_names(NcFile *nc, StringArray *varNames) { //////////////////////////////////////////////////////////////////////// template -bool _get_var_att_num(const NcVar *var, const ConcatString &att_name, +bool get_var_att_num_(const NcVar *var, const ConcatString &att_name, T &att_val, T bad_data) { bool status = false; @@ -952,7 +991,7 @@ bool _get_var_att_num(const NcVar *var, const ConcatString &att_name, bool get_var_att_double(const NcVar *var, const ConcatString &att_name, double &att_val) { - bool status = _get_var_att_num(var, att_name, att_val, bad_data_double); + bool status = get_var_att_num_(var, att_name, att_val, bad_data_double); return(status); } @@ -961,23 +1000,78 @@ bool get_var_att_double(const NcVar *var, const ConcatString &att_name, bool get_var_att_float(const NcVar *var, const ConcatString &att_name, float &att_val) { - bool status = _get_var_att_num(var, att_name, att_val, bad_data_float); + bool status = get_var_att_num_(var, att_name, att_val, bad_data_float); return(status); } //////////////////////////////////////////////////////////////////////// -bool get_var_units(const NcVar *var, ConcatString &att_val) { +double get_var_add_offset(const NcVar *var) { + double v; - return(get_nc_att_value(var, units_att_name, att_val)); + if(!get_var_att_double(var, add_offset_att_name, v)) { + v = 0.f; + } + + return(v); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_var_axis(const NcVar *var, ConcatString &att_val) { + return(get_nc_att_value(var, axis_att_name, att_val)); +} + +//////////////////////////////////////////////////////////////////////// + +template +bool get_var_fill_value(const NcVar *var, T &att_val) { + bool found = false; + + NcVarAtt *att = get_nc_att(var, fill_value_att_name); + if (IS_INVALID_NC_P(att)) { + if (att) delete att; + att = get_nc_att(var, missing_value_att_name); + } + if (IS_VALID_NC_P(att)) { + att->getValues(&att_val); + found = true; + } + + if (att) delete att; + + return(found); } //////////////////////////////////////////////////////////////////////// -bool get_var_level(const NcVar *var, ConcatString &att_val) { +double get_var_fill_value(const NcVar *var) { + double v; + + if(!get_var_att_double(var, fill_value_att_name, v)) { + v = bad_data_double; + } + + return(v); +} + +//////////////////////////////////////////////////////////////////////// - return(get_nc_att_value(var, level_att_name, att_val)); +bool get_var_grid_mapping(const NcVar *var, ConcatString &att_val) { + return(get_nc_att_value(var, grid_mapping_att_name, att_val)); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_var_grid_mapping_name(const NcVar *var, ConcatString &att_val) { + return(get_nc_att_value(var, grid_mapping_name_att_name, att_val)); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_var_long_name(const NcVar *var, ConcatString &att_val) { + return(get_nc_att_value(var, long_name_att_name, att_val)); } //////////////////////////////////////////////////////////////////////// @@ -994,11 +1088,11 @@ double get_var_missing_value(const NcVar *var) { //////////////////////////////////////////////////////////////////////// -double get_var_fill_value(const NcVar *var) { +double get_var_scale_factor(const NcVar *var) { double v; - if(!get_var_att_double(var, fill_value_att_name, v)) { - v = bad_data_double; + if(!get_var_att_double(var, scale_factor_att_name, v)) { + v = 1.f; } return(v); @@ -1006,6 +1100,19 @@ double get_var_fill_value(const NcVar *var) { //////////////////////////////////////////////////////////////////////// +bool get_var_standard_name(const NcVar *var, ConcatString &att_val) { + return(get_nc_att_value(var, standard_name_att_name, att_val)); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_var_units(const NcVar *var, ConcatString &att_val) { + + return(get_nc_att_value(var, units_att_name, att_val)); +} + +//////////////////////////////////////////////////////////////////////// + char get_char_val(NcFile * nc, const char * var_name, const int index) { NcVar var = get_var(nc, var_name); return (get_char_val(&var, index)); @@ -1253,36 +1360,73 @@ float get_float_var(NcVar * var, const int index) { //////////////////////////////////////////////////////////////////////// template -bool _get_nc_data(NcFile *nc, const char *var_name, T *data, - const long *dim, const long *cur) { - - // - // Retrieve the input variables - // - NcVar var = get_var(nc, var_name); - return get_nc_data(&var, data, dim, cur); -} - -//////////////////////////////////////////////////////////////////////// +void apply_scale_factor_(T *data, const int cell_count, + double add_offset, double scale_factor, + const T nc_fill_value, const T met_fill_value, + bool has_fill_value, + const char *data_type, const char *var_name) { + const int debug_level = 7; + clock_t start_clock = clock(); + const char *method_name = "apply_scale_factor(T) "; -bool get_nc_data(NcFile *nc, const char *var_name, int *data, - const long *dim, const long *cur) { + if (cell_count > 0) { + int idx; + int positive_cnt = 0; + int unpacked_count = 0; + T min_value, max_value; + T raw_min_val, raw_max_val; + + idx = 0; + if (has_fill_value) { + for (; idx data[idx]) raw_min_val = data[idx]; + if (raw_max_val < data[idx]) raw_max_val = data[idx]; + data[idx] = (data[idx] * scale_factor) + add_offset; + if (data[idx] > 0) positive_cnt++; + if (min_value > data[idx]) min_value = data[idx]; + if (max_value < data[idx]) max_value = data[idx]; + unpacked_count++; + } + } + //cout << typeid(nc_fill_value).name(); + mlog << Debug(debug_level) << method_name << var_name + << "(" << typeid(data[0]).name() << "): unpacked data: count=" + << unpacked_count << " out of " << cell_count + << ", scale_factor=" << scale_factor<< " add_offset=" << add_offset + << ". FillValue(" << data_type << ")=" << nc_fill_value << "\n"; + mlog << Debug(debug_level) << method_name + << " data range [" << min_value << " - " << max_value + << "] raw data: [" << raw_min_val << " - " << raw_max_val + << "] Positive count: " << positive_cnt << "\n"; + } + mlog << Debug(debug_level) << method_name << " took " + << (clock()-start_clock)/double(CLOCKS_PER_SEC) << " seconds\n"; + return; } //////////////////////////////////////////////////////////////////////// +// Note: +// - template _t reads data as is (do not apply no scale_factor and add_offset) +// - template _ reads data and applies scale_factor and add_offset. template -bool _get_nc_data(NcVar *var, T *data) { +bool get_nc_data_t(NcVar *var, T *data) { bool return_status = false; if (IS_VALID_NC_P(var)) { - // - // Retrieve the float value from the NetCDF variable. - // Note: missing data was checked here - // var->getVar(data); + return_status = true; } return(return_status); @@ -1290,45 +1434,67 @@ bool _get_nc_data(NcVar *var, T *data) { //////////////////////////////////////////////////////////////////////// -bool get_nc_data(NcVar *var, time_t *data) { - bool return_status = _get_nc_data(var, data); - return(return_status); -} - -//////////////////////////////////////////////////////////////////////// - -bool get_nc_data(NcVar *var, int *data) { - bool return_status = _get_nc_data(var, data); +template +bool get_nc_data_(NcVar *var, T *data, const T met_missing) { + //const char *method_name = "get_nc_data_() "; + + int data_size = get_data_size(var); + for (int idx1=0; idx1", GET_NC_NAME_P(var).c_str()); + } + } return(return_status); } //////////////////////////////////////////////////////////////////////// template -bool _get_nc_data(NcVar *var, T *data, T bad_data, const long *curs) { +bool get_nc_data_(NcVar *var, T *data, T bad_data, const long *dims, const long *curs) { bool return_status = false; - const char *method_name = "_get_nc_data(const long *curs) "; + const char *method_name = "get_nc_data_(T, *dims, *curs) "; if (IS_VALID_NC_P(var)) { std::vector start; std::vector count; - const int dimC = get_dim_count(var); + int data_size = 1; + int dimC = get_dim_count(var); for (int idx = 0 ; idx < dimC; idx++) { int dim_size = get_dim_size(var, idx); - if ((curs[idx] > dim_size) && (0 < dim_size)) { + if ((curs[idx]+dims[idx]) > dim_size) { NcDim nc_dim = get_nc_dim(var, idx); - mlog << Error << "\n" << method_name << "The start offset (" - << curs[idx] << ") exceeds the dimension[" << idx << "] " << dim_size << " " + mlog << Error << "\n" << method_name << "The start offset and count (" + << curs[idx] << ", " << dims[idx] << ") exceeds the dimension[" + << idx << "] " << dim_size << " " << (IS_VALID_NC(nc_dim) ? GET_NC_NAME(nc_dim) : " ") << " for the variable " << GET_NC_NAME_P(var) << ".\n\n"; exit(1); } + start.push_back((size_t)curs[idx]); - count.push_back((size_t)1); + count.push_back((size_t)dims[idx]); + data_size *= dims[idx]; } - *data = bad_data; + for (int idx1=0; idx1getVar(start, count, data); return_status = true; - } - return(return_status); -} - -//////////////////////////////////////////////////////////////////////// - - -bool get_nc_data(NcVar *var, int *data, const long *curs) { - bool return_status = _get_nc_data(var, data, bad_data_int, curs); + //scale_factor and add_offset + if (has_add_offset_attr(var) || has_scale_factor_attr(var)) { + T nc_missing; + double add_offset = get_var_add_offset(var); + double scale_factor = get_var_scale_factor(var); + bool has_missing_attr = get_var_fill_value(var, nc_missing); + if (!has_missing_attr) nc_missing = bad_data; + apply_scale_factor_(data, data_size, add_offset, scale_factor, + nc_missing, bad_data, has_missing_attr, + "", GET_NC_NAME_P(var).c_str()); + } + } return(return_status); } //////////////////////////////////////////////////////////////////////// template -bool _get_nc_data(NcVar *var, T *data, T bad_data, const long dim, const long cur) { +bool get_nc_data_(NcVar *var, T *data, T met_missing, const long dim, const long cur) { bool return_status = false; - const char *method_name = "_get_nc_data(const long dim, const long cur) "; + const char *method_name = "get_nc_data_(T, dim, cur) "; + for (int idx=0; idxgetVar(start, count, data); return_status = true; + + //scale_factor and add_offset + if (has_add_offset_attr(var) || has_scale_factor_attr(var)) { + T nc_missing; + double add_offset = get_var_add_offset(var); + double scale_factor = get_var_scale_factor(var); + bool has_missing_attr = get_var_fill_value(var, nc_missing); + if (!has_missing_attr) nc_missing = met_missing; + apply_scale_factor_(data, dim, add_offset, scale_factor, + nc_missing, met_missing, has_missing_attr, + "", GET_NC_NAME_P(var).c_str()); + } } return(return_status); } //////////////////////////////////////////////////////////////////////// - -bool get_nc_data(NcVar *var, int *data, const long dim, const long cur) { - return(_get_nc_data(var, data, bad_data_int, dim, cur)); -} - -//////////////////////////////////////////////////////////////////////// +// read a single data template -bool _get_nc_data(NcVar *var, T *data, T bad_data, const long *dims, const long *curs) { +bool get_nc_data_(NcVar *var, T *data, T bad_data, const long *curs) { bool return_status = false; - const char *method_name = "_get_nc_data(const long *dims, const long *curs) "; + const char *method_name = "get_nc_data_(*curs) "; if (IS_VALID_NC_P(var)) { - std::vector start; - std::vector count; - int data_size = 1; int dimC = get_dim_count(var); + long dims[dimC]; for (int idx = 0 ; idx < dimC; idx++) { - int dim_size = get_dim_size(var, idx); - if ((curs[idx]+dims[idx]) > dim_size) { - NcDim nc_dim = get_nc_dim(var, idx); - mlog << Error << "\n" << method_name << "The start offset and count (" - << curs[idx] << ", " << dims[idx] << ") exceeds the dimension[" - << idx << "] " << dim_size << " " - << (IS_VALID_NC(nc_dim) ? GET_NC_NAME(nc_dim) : " ") - << " for the variable " << GET_NC_NAME_P(var) << ".\n\n"; - exit(1); - } - - start.push_back((size_t)curs[idx]); - count.push_back((size_t)dims[idx]); - data_size *= dims[idx]; + dims[idx] = 1; } - for (int idx1=0; idx1getVar(start, count, data); - return_status = true; + // Retrieve the NetCDF value from the NetCDF variable. + return_status = get_nc_data_(var, data, bad_data, dims, curs); } return(return_status); } //////////////////////////////////////////////////////////////////////// -bool get_nc_data(NcVar *var, int *data, const long *dims, const long *curs) { - bool return_status = _get_nc_data(var, data, bad_data_int, dims, curs); +bool get_nc_data(NcVar *var, int *data, const long *curs) { + bool return_status = get_nc_data_(var, data, bad_data_int, curs); return(return_status); } //////////////////////////////////////////////////////////////////////// -bool get_nc_data(NcVar *var, short *data, const long *curs) { - bool return_status = _get_nc_data(var, data, (short)bad_data_int, curs); +bool get_nc_data(NcVar *var, time_t *data) { + bool return_status = get_nc_data_(var, data, (time_t)bad_data_int); return(return_status); } //////////////////////////////////////////////////////////////////////// -bool get_nc_data(NcVar *var, short *data, const long *dims, const long *curs) { - bool return_status = _get_nc_data(var, data, (short)bad_data_int, dims, curs); +bool get_nc_data(NcVar *var, int *data) { + bool return_status = get_nc_data_(var, data, bad_data_int); + return(return_status); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_nc_data(NcVar *var, int *data, const long dim, const long cur) { + return(get_nc_data_(var, data, bad_data_int, dim, cur)); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_nc_data(NcVar *var, int *data, const long *dims, const long *curs) { + bool return_status = get_nc_data_(var, data, bad_data_int, dims, curs); return(return_status); } //////////////////////////////////////////////////////////////////////// -bool get_nc_data(NcFile *nc, const char *var_name, float *data, - const long *dims, const long *curs) { +bool get_nc_data(NcVar *var, short *data, const long *curs) { + bool return_status = get_nc_data_(var, data, (short)bad_data_int, curs); - // - // Retrieve the input variables - // - NcVar var = get_var(nc, var_name); - return _get_nc_data(&var, data, bad_data_float, dims, curs); + return(return_status); +} + +//////////////////////////////////////////////////////////////////////// + +bool get_nc_data(NcVar *var, short *data, const long *dims, const long *curs) { + bool return_status = get_nc_data_(var, data, (short)bad_data_int, dims, curs); + + return(return_status); } //////////////////////////////////////////////////////////////////////// template -void _apply_scale_factor(float *data, const T *packed_data, - const int cell_count, const T fill_value, - T &raw_min_val, T &raw_max_val, const char *data_type, - float add_offset, float scale_factor) { - int positive_cnt = 0; - int unpacked_count = 0; - float min_value = 10e10; - float max_value = -10e10; +void copy_nc_data_t(NcVar *var, float *data, const T *packed_data, + const int cell_count, const char *data_type, + double add_offset, double scale_factor, bool has_missing, T missing_value) { clock_t start_clock = clock(); - const char *method_name = "apply_scale_factor(float)"; + const char *method_name = "copy_nc_data_t(float) "; + + if (cell_count > 0) { + int idx; + float min_value, max_value; + bool do_scale_factor = has_scale_factor_attr(var) || has_add_offset_attr(var); + + if (do_scale_factor) { + int positive_cnt = 0; + int unpacked_count = 0; + T raw_min_val, raw_max_val; + + for (idx=0; idx packed_data[idx]) raw_min_val = packed_data[idx]; + if (raw_max_val < packed_data[idx]) raw_max_val = packed_data[idx]; + data[idx] = ((float)packed_data[idx] * scale_factor) + add_offset; + if (data[idx] > 0) positive_cnt++; + if (min_value > data[idx]) min_value = data[idx]; + if (max_value < data[idx]) max_value = data[idx]; + unpacked_count++; + } + } + mlog << Debug(7) << method_name << GET_NC_NAME_P(var) + << " apply_scale_factor unpacked data: count=" + << unpacked_count << " out of " << cell_count + << ". FillValue(" << data_type << ")=" << missing_value << "\n"; + mlog << Debug(7) << method_name + << "data range [" << min_value << " - " << max_value + << "] raw data: [" << raw_min_val << " - " << raw_max_val + << "] Positive count: " << positive_cnt << "\n"; + } else { - if (raw_min_val > packed_data[idx]) raw_min_val = packed_data[idx]; - if (raw_max_val < packed_data[idx]) raw_max_val = packed_data[idx]; - data[idx] = ((float)packed_data[idx] * scale_factor) + add_offset; - if (data[idx] > 0) positive_cnt++; - if (min_value > data[idx]) min_value = data[idx]; - if (max_value < data[idx]) max_value = data[idx]; - if (!is_eq(0., add_offset) && !is_eq(1., scale_factor)) unpacked_count++; - } - } - mlog << Debug(4) << method_name << " unpacked data: count=" - << unpacked_count << " out of " << cell_count - << ". FillValue(" << data_type << ")=" << fill_value << "\n"; - mlog << Debug(4) << method_name << "data range [" << min_value << " - " << max_value - << "] raw data: [" << raw_min_val << " - " << raw_max_val << "] Positive count: " - << positive_cnt << "\n"; - mlog << Debug(7) << method_name << " took " + idx = 0; + + if (has_missing) { + for (idx=0; idx data[idx]) min_value = data[idx]; + if (max_value < data[idx]) max_value = data[idx]; + } + } + mlog << Debug(7) << method_name << "data range [" << min_value + << " - " << max_value << "]\n"; + } + } + mlog << Debug(7) << method_name << "took " << (clock()-start_clock)/double(CLOCKS_PER_SEC) << " seconds\n"; return; } //////////////////////////////////////////////////////////////////////// +template +void copy_nc_data_(NcVar *var, float *data, const T *packed_data, + const int cell_count, const char *data_type, + double add_offset, double scale_factor) { + T missing_value; + bool has_missing = get_var_fill_value(var, missing_value); + copy_nc_data_t(var, data, packed_data, cell_count, data_type, + add_offset, scale_factor, has_missing, missing_value); + return; +} + +//////////////////////////////////////////////////////////////////////// + bool get_nc_data(NcVar *var, float *data) { - clock_t start_clock = clock(); bool return_status = false; + clock_t start_clock = clock(); static const char *method_name = "get_nc_data(NcVar *, float *) "; if (IS_VALID_NC_P(var)) { @@ -1531,207 +1751,140 @@ bool get_nc_data(NcVar *var, float *data) { // Note: missing data was checked here // int type_id = GET_NC_TYPE_ID_P(var); + int cell_count = get_data_size(var); + return_status = true; if (NcType::nc_FLOAT == type_id) { - var->getVar(data); - } - else if (NcType::nc_DOUBLE == type_id) { - int cell_count = 1; - for (int idx=0; idxgetDimCount();idx++) { - cell_count *= get_dim_size(var, idx); - } - double *double_data = new double[cell_count]; - var->getVar(double_data); - for (int idx=0; idxgetDimCount();idx++) { - cell_count *= get_dim_size(var, idx); - } - - float add_offset = 0.; - float scale_factor = 1.; int unpacked_count = 0; + float add_offset = get_var_add_offset(var); + float scale_factor = get_var_scale_factor(var); + bool do_scale_factor = has_scale_factor_attr(var) || has_add_offset_attr(var); bool unsigned_value = has_unsigned_attribute(var); - NcVarAtt *att_add_offset = get_nc_att(var, string("add_offset")); - NcVarAtt *att_scale_factor = get_nc_att(var, string("scale_factor")); - NcVarAtt *att_fill_value = get_nc_att(var, string("_FillValue")); - if (IS_VALID_NC_P(att_add_offset)) add_offset = get_att_value_float(att_add_offset); - if (IS_VALID_NC_P(att_scale_factor)) scale_factor = get_att_value_float(att_scale_factor); - mlog << Debug(4) << method_name << "add_offset = " << add_offset - << ", scale_factor=" << scale_factor << ", cell_count=" << cell_count - << ", is_unsigned_value: " << unsigned_value << " for " << GET_NC_NAME_P(var) << "\n"; + mlog << Debug(6) << method_name << GET_NC_NAME_P(var) + << " data_size=" << cell_count << ", is_unsigned_value: " + << unsigned_value << "\n"; + if (do_scale_factor) { + mlog << Debug(6) << method_name << GET_NC_NAME_P(var) + << " add_offset = " << add_offset + << ", scale_factor=" << scale_factor << "\n"; + } switch ( type_id ) { + case NcType::nc_DOUBLE: + { + double *packed_data = new double[cell_count]; + + get_nc_data_t(var, packed_data); + + double fill_value; + bool has_fill_value = get_var_fill_value(var, fill_value); + for (int idx=0; idxgetVar(packed_data); - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "int64", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "int64", add_offset, scale_factor); delete [] packed_data; } break; case NcType::nc_INT: { - int fill_value = bad_data_int; - int min_value = 2147483647; - int max_value = -2147483648; int *packed_data = new int[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) - fill_value = get_att_value_int(att_fill_value); - var->getVar(packed_data); - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "int", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "int", add_offset, scale_factor); delete [] packed_data; } break; case NcType::nc_SHORT: { - short fill_value = (short)bad_data_int; + short missing_value; + bool has_missing = get_var_fill_value(var, missing_value); short *packed_data = new short[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) - fill_value = get_att_value_short(att_fill_value); - var->getVar(packed_data); - if (unsigned_value) { - unsigned short value; - int positive_cnt = 0; - int raw_min_value = 70000; - int raw_max_value = -70000; - float min_value = 10e10; - float max_value = -10e10; - unsigned short unsigned_fill_value = (unsigned short)fill_value; + unsigned short *ushort_data = new unsigned short[cell_count]; for (int idx=0; idx value) raw_min_value = value; - if (raw_max_value < value) raw_max_value = value; - if (data[idx] > 0) positive_cnt++; - if (min_value > data[idx]) min_value = data[idx]; - if (max_value < data[idx]) max_value = data[idx]; - } + ushort_data[idx] =(unsigned short)packed_data[idx]; } - mlog << Debug(4) << method_name << " unpacked data: count=" - << unpacked_count << " out of " << cell_count - << ". FillValue(short with unsigned) " << fill_value - << " data range [" << min_value << " - " << max_value - << "] raw data: [" << raw_min_value << " - " << raw_max_value << "] Positive count: " - << positive_cnt << "\n"; + copy_nc_data_t(var, data, ushort_data, cell_count, + "ushort", add_offset, scale_factor, + has_missing, (unsigned short)missing_value); + delete [] ushort_data; } else { - short min_value = 32766; - short max_value = -32767; - _apply_scale_factor(data, packed_data, - cell_count, fill_value, min_value, max_value, "short", - add_offset, scale_factor); + copy_nc_data_t(var, data, packed_data, cell_count, + "short", add_offset, scale_factor, + has_missing, missing_value); } delete [] packed_data; } break; case NcType::nc_USHORT: { - unsigned short min_value = 65535; - unsigned short max_value = 0; - unsigned short fill_value = (unsigned short)bad_data_int; unsigned short *packed_data = new unsigned short[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) - fill_value = get_att_value_ushort(att_fill_value); - var->getVar(packed_data); - - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "unsigned short", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "unsigned short", add_offset, scale_factor); delete [] packed_data; } break; case NcType::nc_BYTE: { - ncbyte fill_value = (ncbyte)bad_data_int; + ncbyte missing_value; + bool has_missing = get_var_fill_value(var, missing_value); ncbyte *packed_data = new ncbyte[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) { - fill_value = get_att_value_char(att_fill_value); - } - var->getVar(packed_data); - if (unsigned_value) { - int value; - int positive_cnt = 0; - int raw_min_value = 70000; - int raw_max_value = -70000; - float min_value = 10e10; - float max_value = -10e10; - int unsigned_fill_value = (ncbyte)fill_value; + unsigned char *ubyte_data = new unsigned char[cell_count]; for (int idx=0; idx value) raw_min_value = value; - if (raw_max_value < value) raw_max_value = value; - if (data[idx] > 0) positive_cnt++; - if (min_value > data[idx]) min_value = data[idx]; - if (max_value < data[idx]) max_value = data[idx]; - } + ubyte_data[idx] =(unsigned char)packed_data[idx]; } - mlog << Debug(4) << method_name << " unpacked data: count=" - << unpacked_count << " out of " << cell_count - << ". FillValue(byte with unsigned) " << fill_value - << " data range [" << min_value << " - " << max_value - << "] raw data: [" << raw_min_value << " - " << raw_max_value << "] Positive count: " - << positive_cnt << "\n"; + copy_nc_data_t(var, data, ubyte_data, cell_count, + "ncubyte", add_offset, scale_factor, + has_missing, (unsigned char)missing_value); + delete [] ubyte_data; } else { - ncbyte min_value = 127; - ncbyte max_value = -127; - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "ncbyte", - add_offset, scale_factor); + copy_nc_data_t(var, data, packed_data, cell_count, + "ncbyte", add_offset, scale_factor, + has_missing, missing_value); } delete [] packed_data; } break; case NcType::nc_UBYTE: { - unsigned char min_value = 255; - unsigned char max_value = 0; - unsigned char fill_value = (unsigned char)-99; unsigned char *packed_data = new unsigned char[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) { - fill_value = get_att_value_char(att_fill_value); - } - - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "unsigned char", - add_offset, scale_factor); + var->getVar(packed_data); + copy_nc_data_(var, data, packed_data, cell_count, + "unsigned char", add_offset, scale_factor); delete [] packed_data; } break; @@ -1741,9 +1894,6 @@ bool get_nc_data(NcVar *var, float *data) { << type_id << ", type name: " << GET_NC_TYPE_NAME_P(var) << ") for " << GET_NC_NAME_P(var) << "\n"; } - if(att_add_offset) delete att_add_offset; - if(att_scale_factor) delete att_scale_factor; - if(att_fill_value) delete att_fill_value; } } @@ -1756,7 +1906,7 @@ bool get_nc_data(NcVar *var, float *data) { //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, float *data, const long *curs) { - bool return_status = _get_nc_data(var, data, bad_data_float, curs); + bool return_status = get_nc_data_(var, data, bad_data_float, curs); return(return_status); } @@ -1764,7 +1914,7 @@ bool get_nc_data(NcVar *var, float *data, const long *curs) { //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, float *data, const long *dims, const long *curs) { - bool return_status = _get_nc_data(var, data, bad_data_float, dims, curs); + bool return_status = get_nc_data_(var, data, bad_data_float, dims, curs); return(return_status); } @@ -1772,7 +1922,7 @@ bool get_nc_data(NcVar *var, float *data, const long *dims, const long *curs) { //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, float *data, const long dim, const long cur) { - bool return_status = _get_nc_data(var, data, bad_data_float, dim, cur); + bool return_status = get_nc_data_(var, data, bad_data_float, dim, cur); return(return_status); } @@ -1785,43 +1935,94 @@ bool get_nc_data(NcFile *nc, const char *var_name, double *data, // // Retrieve the input variables // - NcVar var = get_var(nc, var_name); + NcVar var = get_var(nc, var_name); return get_nc_data(&var, data, dims, curs); } //////////////////////////////////////////////////////////////////////// template -int _apply_scale_factor(double *data, const T *packed_data, - const int cell_count, const T fill_value, - T &raw_min_val, T &raw_max_val, const char *data_type, - double add_offset, double scale_factor) { - int positive_cnt = 0; +void copy_nc_data_t(NcVar *var, double *data, const T *packed_data, + const int cell_count, const char *data_type, + double add_offset, double scale_factor, + bool has_missing, T missing_value) { int unpacked_count = 0; - double min_value = 10e10; - double max_value = -10e10; - const char *method_name = "apply_scale_factor(double)"; + const char *method_name = "copy_nc_data_t(double) "; + + if (cell_count > 0) { + int idx; + T missing_value; + double min_value, max_value; + bool do_scale_factor = has_scale_factor_attr(var) || has_add_offset_attr(var); + + if (do_scale_factor) { + int positive_cnt = 0; + T raw_min_val, raw_max_val; - for (int idx=0; idx packed_data[idx]) raw_min_val = packed_data[idx]; + if (raw_max_val < packed_data[idx]) raw_max_val = packed_data[idx]; + data[idx] = ((double)packed_data[idx] * scale_factor) + add_offset; + if (data[idx] > 0) positive_cnt++; + if (min_value > data[idx]) min_value = data[idx]; + if (max_value < data[idx]) max_value = data[idx]; + unpacked_count++; + } + } + mlog << Debug(7) << method_name << GET_NC_NAME_P(var) + << " apply_scale_factor unpacked data: count=" + << unpacked_count << " out of " << cell_count + << ". FillValue(" << data_type << ")=" << missing_value + << " data range [" << min_value << " - " << max_value + << "] raw data: [" << raw_min_val << " - " << raw_max_val + << "] Positive count: " << positive_cnt << "\n"; + } else { - if (raw_min_val > packed_data[idx]) raw_min_val = packed_data[idx]; - if (raw_max_val < packed_data[idx]) raw_max_val = packed_data[idx]; - data[idx] = ((double)packed_data[idx] * scale_factor) + add_offset; - if (data[idx] > 0) positive_cnt++; - if (min_value > data[idx]) min_value = data[idx]; - if (max_value < data[idx]) max_value = data[idx]; - if (!is_eq(0., add_offset) && !is_eq(1., scale_factor)) unpacked_count++; + idx = 0; + + if (has_missing) { + for (idx=0; idx data[idx]) min_value = data[idx]; + if (max_value < data[idx]) max_value = data[idx]; + } + } + mlog << Debug(7) << method_name << "data range [" << min_value + << " - " << max_value << "]\n"; } } - mlog << Debug(4) << method_name << " unpacked data: count=" - << unpacked_count << " out of " << cell_count - << ". FillValue(" << data_type << ")=" << fill_value - << " data range [" << min_value << " - " << max_value - << "] raw data: [" << raw_min_val << " - " << raw_max_val << "] Positive count: " - << positive_cnt << "\n"; - return unpacked_count; +} + +//////////////////////////////////////////////////////////////////////// + +template +void copy_nc_data_(NcVar *var, double *data, const T *packed_data, + const int cell_count, const char *data_type, + double add_offset, double scale_factor) { + T missing_value; + bool has_missing = get_var_fill_value(var, missing_value); + copy_nc_data_t(var, data, packed_data, cell_count, data_type, + add_offset, scale_factor, has_missing, missing_value); + return; } //////////////////////////////////////////////////////////////////////// @@ -1837,200 +2038,138 @@ bool get_nc_data(NcVar *var, double *data) { // int unpacked_count = 0; int type_id = GET_NC_TYPE_ID_P(var); + const int cell_count = get_data_size(var); + return_status = true; - if ((NcType::nc_DOUBLE == type_id) || (NcType::nc_FLOAT == type_id)){ + if (NcType::nc_DOUBLE == type_id) { + var->getVar(data); + + double fill_value; + bool has_fill_value = get_var_fill_value(var, fill_value); + if (has_fill_value) { + for (int idx=0; idxgetDimCount();idx++) { - cell_count *= get_dim_size(var, idx); - } - - double add_offset = 0.; - double scale_factor = 1.; bool unsigned_value = has_unsigned_attribute(var); - NcVarAtt *att_add_offset = get_nc_att(var, (string)"add_offset"); - NcVarAtt *att_scale_factor = get_nc_att(var, (string)"scale_factor"); - NcVarAtt *att_fill_value = get_nc_att(var, (string)"_FillValue"); - if (IS_VALID_NC_P(att_add_offset)) { - add_offset = get_att_value_double(att_add_offset); - } - if (IS_VALID_NC_P(att_scale_factor)) { - scale_factor = get_att_value_double(att_scale_factor); + const double add_offset = get_var_add_offset(var); + const double scale_factor = get_var_scale_factor(var); + bool do_scale_factor = has_scale_factor_attr(var) || has_add_offset_attr(var); + mlog << Debug(6) << method_name << GET_NC_NAME_P(var) + << " data_size=" << cell_count << ", is_unsigned_value: " + << unsigned_value << "\n"; + if (do_scale_factor) { + mlog << Debug(6) << method_name << GET_NC_NAME_P(var) + << " add_offset = " << add_offset + << ", scale_factor=" << scale_factor << "\n"; } - mlog << Debug(4) << method_name << "add_offset = " << add_offset - << ", scale_factor=" << scale_factor << ", cell_count=" << cell_count - << ", is_unsigned_value: " << unsigned_value << " for " << GET_NC_NAME_P(var) << "\n"; switch ( type_id ) { + case NcType::nc_FLOAT: + { + float *packed_data = new float[cell_count]; + + var->getVar(packed_data); + + float fill_value; + bool has_fill_value = get_var_fill_value(var, fill_value); + for (int idx=0; idxgetVar(packed_data); - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "int64", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "int64", add_offset, scale_factor); delete [] packed_data; } break; case NcType::nc_INT: { - int fill_value = bad_data_int; - int min_value = 2147483647; - int max_value = -2147483648; int *packed_data = new int[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) - fill_value = get_att_value_int(att_fill_value); - var->getVar(packed_data); - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "int", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "int", add_offset, scale_factor); delete [] packed_data; } break; case NcType::nc_SHORT: { - short fill_value = (short)bad_data_int; + short missing_value; + bool has_missing = get_var_fill_value(var, missing_value); short *packed_data = new short[cell_count]; - - if (IS_VALID_NC_P(att_fill_value)) - fill_value = get_att_value_short(att_fill_value); - var->getVar(packed_data); - if (unsigned_value) { - int value; - int positive_cnt = 0; - int raw_min_value = 70000; - int raw_max_value = -70000; - float min_value = 10e10; - float max_value = -10e10; - int unsigned_fill_value = (unsigned short)fill_value; + unsigned short *ushort_data = new unsigned short[cell_count]; for (int idx=0; idx value) raw_min_value = value; - if (raw_max_value < value) raw_max_value = value; - if (data[idx] > 0) positive_cnt++; - if (min_value > data[idx]) min_value = data[idx]; - if (max_value < data[idx]) max_value = data[idx]; - } + ushort_data[idx] =(unsigned short)packed_data[idx]; } - mlog << Debug(4) << method_name << " unpacked data: count=" - << unpacked_count << " out of " << cell_count - << ". FillValue(short with unsigned) " << fill_value - << " data range [" << min_value << " - " << max_value - << "] raw data: [" << raw_min_value << " - " << raw_max_value << "] Positive count: " - << positive_cnt << "\n"; + copy_nc_data_t(var, data, ushort_data, cell_count, + "ushort", add_offset, scale_factor, + has_missing, (unsigned short)missing_value); + delete [] ushort_data; } else { - short min_value = 32766; - short max_value = -32767; - _apply_scale_factor(data, packed_data, - cell_count, fill_value, min_value, max_value, "int", - add_offset, scale_factor); + copy_nc_data_t(var, data, packed_data, cell_count, + "short", add_offset, scale_factor, + has_missing, missing_value); } delete [] packed_data; } break; case NcType::nc_USHORT: { - unsigned short fill_value = (unsigned short)bad_data_int; unsigned short *packed_data = new unsigned short[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) - fill_value = get_att_value_short(att_fill_value); - var->getVar(packed_data); - - unsigned short min_value = 65535; - unsigned short max_value = 0; - _apply_scale_factor(data, packed_data, - cell_count, fill_value, min_value, max_value, "int", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "ushort", add_offset, scale_factor); delete [] packed_data; } break; case NcType::nc_BYTE: { - ncbyte fill_value = (ncbyte)bad_data_int; + ncbyte missing_value; + bool has_missing = get_var_fill_value(var, missing_value); ncbyte *packed_data = new ncbyte[cell_count]; - if (IS_VALID_NC_P(att_fill_value)) { - fill_value = get_att_value_char(att_fill_value); - } - var->getVar(packed_data); - if (unsigned_value) { - int value; - int positive_cnt = 0; - int raw_min_value = 70000; - int raw_max_value = -70000; - float min_value = 10e10; - float max_value = -10e10; - int unsigned_fill_value = (ncbyte)fill_value; + unsigned char *ubyte_data = new unsigned char[cell_count]; for (int idx=0; idx value) raw_min_value = value; - if (raw_max_value < value) raw_max_value = value; - if (data[idx] > 0) positive_cnt++; - if (min_value > data[idx]) min_value = data[idx]; - if (max_value < data[idx]) max_value = data[idx]; - } + ubyte_data[idx] =(unsigned char)packed_data[idx]; } - mlog << Debug(4) << method_name << " unpacked data: count=" - << unpacked_count << " out of " << cell_count - << ". FillValue(short with unsigned) " << fill_value - << " data range [" << min_value << " - " << max_value - << "] raw data: [" << raw_min_value << " - " << raw_max_value << "] Positive count: " - << positive_cnt << "\n"; + copy_nc_data_t(var, data, ubyte_data, cell_count, + "ncubyte", add_offset, scale_factor, + has_missing, (unsigned char)missing_value); + delete [] ubyte_data; } else { - ncbyte min_value = 127; - ncbyte max_value = -127; - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "ncbyte", - add_offset, scale_factor); + copy_nc_data_t(var, data, packed_data, cell_count, + "ncbyte", add_offset, scale_factor, + has_missing, missing_value); } delete [] packed_data; } break; case NcType::nc_UBYTE: { - signed char min_value = 255; - signed char max_value = 0; - signed char fill_value = (signed char)bad_data_int; - signed char *packed_data = new signed char[cell_count]; - - if (IS_VALID_NC_P(att_fill_value)) { - fill_value = get_att_value_char(att_fill_value); - } + unsigned char *packed_data = new unsigned char[cell_count]; var->getVar(packed_data); - - _apply_scale_factor(data, packed_data, cell_count, - fill_value, min_value, max_value, "ncbyte", - add_offset, scale_factor); + copy_nc_data_(var, data, packed_data, cell_count, + "ncubyte", add_offset, scale_factor); delete [] packed_data; } break; @@ -2041,9 +2180,6 @@ bool get_nc_data(NcVar *var, double *data) { << ") for " << GET_NC_NAME_P(var) << "\n"; } - if(att_add_offset) delete att_add_offset; - if(att_scale_factor) delete att_scale_factor; - if(att_fill_value) delete att_fill_value; } } return(return_status); @@ -2052,14 +2188,14 @@ bool get_nc_data(NcVar *var, double *data) { //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, double *data, const long *curs) { - bool return_status = _get_nc_data(var, data, bad_data_double, curs); + bool return_status = get_nc_data_(var, data, bad_data_double, curs); return(return_status); } //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, double *data, const long dim, const long cur) { - bool return_status = _get_nc_data(var, data, bad_data_double, dim, cur);; + bool return_status = get_nc_data_(var, data, bad_data_double, dim, cur);; return(return_status); } @@ -2067,7 +2203,7 @@ bool get_nc_data(NcVar *var, double *data, const long dim, const long cur) { //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, double *data, const long *dims, const long *curs) { - bool return_status = _get_nc_data(var, data, bad_data_double, dims, curs); + bool return_status = get_nc_data_(var, data, bad_data_double, dims, curs); return(return_status); } @@ -2075,7 +2211,7 @@ bool get_nc_data(NcVar *var, double *data, const long *dims, const long *curs) { //////////////////////////////////////////////////////////////////////// bool get_nc_data(NcVar *var, char *data) { - bool return_status = _get_nc_data(var, data); + bool return_status = get_nc_data_t(var, data); return(return_status); } @@ -2086,14 +2222,11 @@ bool get_nc_data(NcVar *var, uchar *data) { bool return_status = false; int data_type = GET_NC_TYPE_ID_P(var); static const char *method_name = "get_nc_data(NcVar *, uchar *) -> "; - if (NC_UBYTE == data_type) return_status = _get_nc_data(var, data); + if (NC_UBYTE == data_type) return_status = get_nc_data_t(var, data); else if (NC_BYTE == data_type && has_unsigned_attribute(var)) { - int cell_count = 1; - for (int idx=0; idxgetDimCount(); idx++) { - cell_count *= get_dim_size(var, idx); - } + int cell_count = get_data_size(var); ncbyte *signed_data = new ncbyte[cell_count]; - return_status = _get_nc_data(var, signed_data); + return_status = get_nc_data_t(var, signed_data); for (int idx=0; idxgetDimCount(); idx++) { - NcDim dim = var->getDim(idx); - cell_count *= get_dim_size(&dim); - } + short *short_data = new short[cell_count]; - return_status = _get_nc_data(var, short_data); + return_status = get_nc_data_t(var, short_data); for (int idx=0; idx 10000000.)) value_str << unix_to_yyyymmdd_hhmmss(value); + else value_str << value; + if (offset == bad_data_int) + mlog << Debug(7) << method_name << "Not found value " << value_str + << " at " << GET_NC_NAME_P(var) + << " by dimension name \"" << dim_name << "\"\n"; + else + mlog << Debug(7) << method_name << "Found value " << value_str + << " (index=" << offset << ") at " << GET_NC_NAME_P(var) + << " by dimension name \"" << dim_name << "\"\n"; + } + else { + mlog << Debug(7) << method_name << "Not found a dimension variable for \"" + << dim_name << "\"\n"; + } + return(offset); +} + //////////////////////////////////////////////////////////////////////// bool get_nc_data_to_array(NcVar *var, StringArray *array_buf) { @@ -2301,7 +2496,7 @@ int get_nc_string_length(NcFile *nc_file, NcVar var, const char *var_name) { //////////////////////////////////////////////////////////////////////// template -bool _put_nc_data(NcVar *var, const T data, long offset0, long offset1, long offset2) { +bool put_nc_data_T(NcVar *var, const T data, long offset0, long offset1, long offset2) { vector offsets; offsets.push_back((size_t)offset0); if (0 <= offset1) { @@ -2317,31 +2512,31 @@ bool _put_nc_data(NcVar *var, const T data, long offset0, long offset1, long off //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const int data, long offset0, long offset1, long offset2) { - return _put_nc_data(var, data, offset0, offset1, offset2); + return put_nc_data_T(var, data, offset0, offset1, offset2); } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const char data, long offset0, long offset1, long offset2) { - return _put_nc_data(var, data, offset0, offset1, offset2); + return put_nc_data_T(var, data, offset0, offset1, offset2); } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const float data , long offset0, long offset1, long offset2) { - return _put_nc_data(var, data, offset0, offset1, offset2); + return put_nc_data_T(var, data, offset0, offset1, offset2); } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const double data, long offset0, long offset1, long offset2) { - return _put_nc_data(var, data, offset0, offset1, offset2); + return put_nc_data_T(var, data, offset0, offset1, offset2); } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const ncbyte data, long offset0, long offset1, long offset2) { - return _put_nc_data(var, data, offset0, offset1, offset2); + return put_nc_data_T(var, data, offset0, offset1, offset2); } //////////////////////////////////////////////////////////////////////// @@ -2382,7 +2577,7 @@ bool put_nc_data(NcVar *var, const ncbyte *data ) { //////////////////////////////////////////////////////////////////////// template -bool _put_nc_data(NcVar *var, const T *data, const long length, const long offset) { +bool put_nc_data_T(NcVar *var, const T *data, const long length, const long offset) { vector offsets, counts; int dim_count = get_dim_count(var); offsets.push_back(offset); @@ -2398,42 +2593,42 @@ bool _put_nc_data(NcVar *var, const T *data, const long length, const long of //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const int *data, const long length, const long offset) { - _put_nc_data(var, data, length, offset); + put_nc_data_T(var, data, length, offset); return true; } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const char *data, const long length, const long offset) { - _put_nc_data(var, data, length, offset); + put_nc_data_T(var, data, length, offset); return true; } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const float *data , const long length, const long offset) { - _put_nc_data(var, data, length, offset); + put_nc_data_T(var, data, length, offset); return true; } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const double *data, const long length, const long offset) { - _put_nc_data(var, data, length, offset); + put_nc_data_T(var, data, length, offset); return true; } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const ncbyte *data, const long length, const long offset) { - _put_nc_data(var, data, length, offset); + put_nc_data_T(var, data, length, offset); return true; } //////////////////////////////////////////////////////////////////////// template -bool _put_nc_data(NcVar *var, const T *data , const long *lengths, const long *offsets) { +bool put_nc_data_T(NcVar *var, const T *data , const long *lengths, const long *offsets) { int dim = get_dim_count(var); vector nc_offsets, counts; for (int idx = 0 ; idx < dim; idx++) { @@ -2449,29 +2644,29 @@ bool _put_nc_data(NcVar *var, const T *data , const long *lengths, const long *o //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const float *data , const long *lengths, const long *offsets) { - _put_nc_data(var, data , lengths, offsets); + put_nc_data_T(var, data , lengths, offsets); return true; } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const char *data , const long *lengths, const long *offsets) { - _put_nc_data(var, data , lengths, offsets); + put_nc_data_T(var, data , lengths, offsets); return true; } //////////////////////////////////////////////////////////////////////// bool put_nc_data(NcVar *var, const int *data , const long *lengths, const long *offsets) { - _put_nc_data(var, data , lengths, offsets); + put_nc_data_T(var, data , lengths, offsets); return true; } //////////////////////////////////////////////////////////////////////// template -bool _put_nc_data_with_dims(NcVar *var, const T *data, - const long len0, const long len1, const long len2) { +bool put_nc_data_T_with_dims(NcVar *var, const T *data, + const long len0, const long len1, const long len2) { vector offsets, counts; if (0 < len0) { offsets.push_back(0); @@ -2500,7 +2695,7 @@ bool put_nc_data_with_dims(NcVar *var, const int *data, bool put_nc_data_with_dims(NcVar *var, const int *data, const long len0, const long len1, const long len2) { - _put_nc_data_with_dims(var, data, len0, len1, len2); + put_nc_data_T_with_dims(var, data, len0, len1, len2); return true; } @@ -2515,7 +2710,7 @@ bool put_nc_data_with_dims(NcVar *var, const float *data, bool put_nc_data_with_dims(NcVar *var, const float *data, const long len0, const long len1, const long len2) { - _put_nc_data_with_dims(var, data, len0, len1, len2); + put_nc_data_T_with_dims(var, data, len0, len1, len2); return true; } @@ -2530,7 +2725,7 @@ bool put_nc_data_with_dims(NcVar *var, const double *data, bool put_nc_data_with_dims(NcVar *var, const double *data, const long len0, const long len1, const long len2) { - _put_nc_data_with_dims(var, data, len0, len1, len2); + put_nc_data_T_with_dims(var, data, len0, len1, len2); return true; } @@ -3501,15 +3696,16 @@ NcVar get_nc_var_lat(const NcFile *nc) { itVar != mapVar.end(); ++itVar) { ConcatString name = (*itVar).first; //if (is_nc_name_lat(name)) found = true; - if (get_nc_att_value(&(*itVar).second, "standard_name", name)) { + if (get_var_standard_name(&(*itVar).second, name)) { if (is_nc_name_lat(name)) found = true; } - if (!found && get_nc_att_value(&(*itVar).second, "units", name)) { + if (!found && get_var_units(&(*itVar).second, name)) { if (is_nc_unit_latitude(name.c_str())) { - if (get_nc_att_value(&(*itVar).second, "axis", name)) { + if (get_nc_att_value(&(*itVar).second, axis_att_name, name)) { if (is_nc_attr_lat(name)) found = true; } - else if (get_nc_att_value(&(*itVar).second, "_CoordinateAxisType", name)) { + else if (get_nc_att_value(&(*itVar).second, + coordinate_axis_type_att_name, name)) { if (is_nc_attr_lat(name)) found = true; } } @@ -3542,15 +3738,16 @@ NcVar get_nc_var_lon(const NcFile *nc) { itVar != mapVar.end(); ++itVar) { ConcatString name = (*itVar).first; //if (is_nc_name_lon(name)) found = true; - if (get_nc_att_value(&(*itVar).second, "standard_name", name)) { + if (get_var_standard_name(&(*itVar).second, name)) { if (is_nc_name_lon(name)) found = true; } - if (!found && get_nc_att_value(&(*itVar).second, "units", name)) { + if (!found && get_var_units(&(*itVar).second, name)) { if (is_nc_unit_longitude(name.c_str())) { - if (get_nc_att_value(&(*itVar).second, "axis", name)) { + if (get_nc_att_value(&(*itVar).second, axis_att_name, name)) { if (is_nc_attr_lon(name)) found = true; } - else if (get_nc_att_value(&(*itVar).second, "_CoordinateAxisType", name)) { + else if (get_nc_att_value(&(*itVar).second, + coordinate_axis_type_att_name, name)) { if (is_nc_attr_lon(name)) found = true; } } @@ -3583,17 +3780,18 @@ NcVar get_nc_var_time(const NcFile *nc) { itVar != mapVar.end(); ++itVar) { ConcatString name = (*itVar).first; //if (is_nc_name_time(name)) found = true; - if (get_nc_att_value(&(*itVar).second, "standard_name", name)) { + if (get_var_standard_name(&(*itVar).second, name)) { if (is_nc_name_time(name)) found = true; mlog << Debug(7) << method_name << "checked variable \"" << name << "\" is_time: " << found << "\n"; } - if (!found && get_nc_att_value(&(*itVar).second, "units", name)) { + if (!found && get_var_units(&(*itVar).second, name)) { if (is_nc_unit_time(name.c_str())) { - if (get_nc_att_value(&(*itVar).second, "axis", name)) { + if (get_nc_att_value(&(*itVar).second, axis_att_name, name)) { if (is_nc_attr_time(name)) found = true; } - else if (get_nc_att_value(&(*itVar).second, "_CoordinateAxisType", name)) { + else if (get_nc_att_value(&(*itVar).second, + coordinate_axis_type_att_name, name)) { if (is_nc_attr_time(name)) found = true; } } @@ -3614,7 +3812,6 @@ NcVar get_nc_var_time(const NcFile *nc) { return var; } - //////////////////////////////////////////////////////////////////////// NcFile *open_ncfile(const char * nc_name, bool write) { @@ -3658,7 +3855,7 @@ unixtime get_reference_unixtime(NcVar *time_var, int &sec_per_unit, ConcatString time_unit_str; static const char *method_name = "get_reference_unixtime() -> "; - if (get_nc_att_value(time_var, (string)"units", time_unit_str)) { + if (get_var_units(time_var, time_unit_str)) { parse_cf_time_string(time_unit_str.c_str(), ref_ut, sec_per_unit); no_leap_year = (86400 == sec_per_unit) ? get_att_no_leap_year(time_var) : false; } diff --git a/src/libcode/vx_nc_util/nc_utils.h b/src/libcode/vx_nc_util/nc_utils.h index 560ae06309..9db75b08ea 100644 --- a/src/libcode/vx_nc_util/nc_utils.h +++ b/src/libcode/vx_nc_util/nc_utils.h @@ -31,6 +31,7 @@ typedef unsigned char uchar; #include "int_array.h" #include "long_array.h" #include "num_array.h" +#include "nc_var_info.h" //////////////////////////////////////////////////////////////////////// @@ -129,15 +130,22 @@ static const string nc_att_use_var_id = "use_var_id"; static const char nc_att_obs_version[] = "MET_Obs_version"; static const char nc_att_met_point_nccf[] = "MET_point_NCCF"; +static const string add_offset_att_name = "add_offset"; +static const string axis_att_name = "axis"; +static const string bounds_att_name = "bounds"; +static const string coordinates_att_name = "coordinates"; +static const string coordinate_axis_type_att_name = "_CoordinateAxisType"; static const string description_att_name = "description"; static const string fill_value_att_name = "_FillValue"; -static const string level_att_name = "level"; +static const string grid_mapping_att_name = "grid_mapping"; +static const string grid_mapping_name_att_name = "grid_mapping_name"; static const string long_name_att_name = "long_name"; static const string missing_value_att_name = "missing_value"; -static const string name_att_name = "name"; +static const string projection_att_name = "Projection"; +static const string scale_factor_att_name = "scale_factor"; +static const string standard_name_att_name = "standard_name"; static const string units_att_name = "units"; - static const char nc_time_unit_exp[] = "^[a-z|A-Z]* since [0-9]\\{1,4\\}-[0-9]\\{1,2\\}-[0-9]\\{1,2\\}"; static const char MET_NC_Obs_ver_1_2[] = "1.02"; @@ -183,8 +191,10 @@ extern bool get_nc_att_value(const NcVarAtt *, double &, bool exit_on_erro extern bool get_nc_att_value(const NcVar *, const ConcatString &, ConcatString &, bool exit_on_error = false); extern bool get_nc_att_value(const NcVar *, const ConcatString &, int &, bool exit_on_error = false); extern bool get_nc_att_value(const NcVar *, const ConcatString &, float &, bool exit_on_error = false); +extern bool get_nc_att_value(const NcVar *, const ConcatString &, double &, bool exit_on_error = false); -extern bool has_att(NcFile *, const ConcatString name, bool exit_on_error = false); +extern bool has_att(NcFile *, const ConcatString name, bool exit_on_error=false); +extern bool has_att(NcVar *, const ConcatString name, bool do_log=false); extern bool has_unsigned_attribute(NcVar *); extern bool get_global_att(const NcGroupAtt *, ConcatString &); @@ -213,10 +223,16 @@ extern int get_var_names(NcFile *, StringArray *varNames); extern bool get_var_att_float (const NcVar *, const ConcatString &, float &); extern bool get_var_att_double(const NcVar *, const ConcatString &, double &); -extern bool get_var_units(const NcVar *, ConcatString &); -extern bool get_var_level(const NcVar *, ConcatString &); -extern double get_var_missing_value(const NcVar *); +template +extern bool get_var_fill_value(const NcVar *var, T &att_val); +extern bool get_var_axis(const NcVar *var, ConcatString &att_val); extern double get_var_fill_value(const NcVar *); +extern bool get_var_grid_mapping(const NcVar *var, ConcatString &att_val); +extern bool get_var_grid_mapping_name(const NcVar *var, ConcatString &att_val); +extern bool get_var_long_name(const NcVar *, ConcatString &); +extern double get_var_missing_value(const NcVar *); +extern bool get_var_standard_name(const NcVar *, ConcatString &); +extern bool get_var_units(const NcVar *, ConcatString &); extern bool args_ok(const LongArray &); @@ -263,12 +279,6 @@ extern bool get_nc_data(NcVar *, float *data, const long *dims, const long *cur extern bool get_nc_data(NcVar *, double *data, const long *dims, const long *curs); extern bool get_nc_data(NcVar *, ncbyte *data, const long *dims, const long *curs); -extern bool get_nc_data(NcFile *, const char *var_name, int *data, const long *dims, const long *curs); -extern bool get_nc_data(NcFile *, const char *var_name, char *data, const long *dims, const long *curs); -extern bool get_nc_data(NcFile *, const char *var_name, float *data, const long *dims, const long *curs); -extern bool get_nc_data(NcFile *, const char *var_name, double *data, const long *dims, const long *curs); -extern bool get_nc_data(NcFile *, const char *var_name, ncbyte *data, const long *dims, const long *curs); - extern bool get_nc_data_to_array(NcVar *, StringArray *); extern bool get_nc_data_to_array(NcFile *, const char *, StringArray *); extern int get_nc_string_length(NcVar *); @@ -310,6 +320,7 @@ extern bool put_nc_data_with_dims(NcVar *, const double *data, const long len0, extern NcVar get_var(NcFile *, const char * var_name); // exit if not exists extern NcVar get_nc_var(NcFile *, const char * var_name, bool log_as_error=false); // continue even though not exists + extern NcVar *copy_nc_var(NcFile *, NcVar *, const int deflate_level=DEF_DEFLATE_LEVEL, const bool all_attrs=true); extern void copy_nc_att(NcFile *, NcVar *, const ConcatString attr_name); extern void copy_nc_att( NcVar *, NcVar *, const ConcatString attr_name); @@ -344,7 +355,7 @@ extern bool get_dim_names(const NcFile *nc, StringArray *dimNames); extern NcVar get_nc_var_lat(const NcFile *nc); extern NcVar get_nc_var_lon(const NcFile *nc); extern NcVar get_nc_var_time(const NcFile *nc); - +extern int get_index_at_nc_data(NcVar *var, double value, const string dim_name, bool is_time=false); extern NcFile* open_ncfile(const char * nc_name, bool write = false); extern int get_data_size(NcVar *); diff --git a/src/libcode/vx_nc_util/nc_var_info.cc b/src/libcode/vx_nc_util/nc_var_info.cc index d41d7c8762..1d3b278103 100644 --- a/src/libcode/vx_nc_util/nc_var_info.cc +++ b/src/libcode/vx_nc_util/nc_var_info.cc @@ -1,5 +1,3 @@ - - // *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* // ** Copyright UCAR (c) 1992 - 2022 // ** University Corporation for Atmospheric Research (UCAR) @@ -9,8 +7,6 @@ // *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* - - //////////////////////////////////////////////////////////////////////// @@ -27,6 +23,8 @@ using namespace std; #include "vx_log.h" #include "vx_cal.h" +//////////////////////////////////////////////////////////////////////// + unixtime get_att_value_unixtime(const NcAtt *att) { ConcatString s; unixtime time_value = -1; @@ -53,7 +51,6 @@ unixtime get_att_value_unixtime(const NcAtt *att) { return time_value; } - //////////////////////////////////////////////////////////////////////// @@ -65,9 +62,7 @@ unixtime get_att_value_unixtime(const NcAtt *att) { //////////////////////////////////////////////////////////////////////// -NcVarInfo::NcVarInfo() - -{ +NcVarInfo::NcVarInfo() { init_from_scratch(); @@ -77,9 +72,7 @@ init_from_scratch(); //////////////////////////////////////////////////////////////////////// -NcVarInfo::~NcVarInfo() - -{ +NcVarInfo::~NcVarInfo() { clear(); @@ -89,9 +82,7 @@ clear(); //////////////////////////////////////////////////////////////////////// -NcVarInfo::NcVarInfo(const NcVarInfo & i) - -{ +NcVarInfo::NcVarInfo(const NcVarInfo & i) { init_from_scratch(); @@ -103,9 +94,7 @@ assign(i); //////////////////////////////////////////////////////////////////////// -NcVarInfo & NcVarInfo::operator=(const NcVarInfo & i) - -{ +NcVarInfo & NcVarInfo::operator=(const NcVarInfo & i) { if ( this == &i ) return ( * this ); @@ -119,9 +108,7 @@ return ( * this ); //////////////////////////////////////////////////////////////////////// -void NcVarInfo::init_from_scratch() - -{ +void NcVarInfo::init_from_scratch() { Dims = (NcDim **) 0; @@ -135,9 +122,7 @@ return; //////////////////////////////////////////////////////////////////////// -void NcVarInfo::clear() - -{ +void NcVarInfo::clear() { var = (NcVar *) 0; // don't delete @@ -175,9 +160,7 @@ return; //////////////////////////////////////////////////////////////////////// -void NcVarInfo::dump(ostream & out, int depth) const - -{ +void NcVarInfo::dump(ostream & out, int depth) const { Indent prefix(depth); @@ -245,9 +228,7 @@ return; //////////////////////////////////////////////////////////////////////// -int NcVarInfo::lead_time() const - -{ +int NcVarInfo::lead_time() const { return ( (int) (ValidTime - InitTime) ); @@ -257,9 +238,7 @@ return ( (int) (ValidTime - InitTime) ); //////////////////////////////////////////////////////////////////////// -void NcVarInfo::assign(const NcVarInfo & i) - -{ +void NcVarInfo::assign(const NcVarInfo & i) { clear(); @@ -316,9 +295,39 @@ return; //////////////////////////////////////////////////////////////////////// -bool get_att_str(const NcVarInfo &info, const ConcatString att_name, ConcatString &att_value) +NcVarInfo *find_var_info_by_dim_name(NcVarInfo *vars, const string dim_name, + const int nvars) { + // Find the variable with the same dimension name + NcVarInfo *var = (NcVarInfo *)NULL; + for (int i = 0; i < nvars; i++) { + if (vars[i].name == dim_name) { + var = &vars[i]; + break; + } + } + + if (!var) { + //StringArray dim_names; + for (int i=0; iputAtt("accum_time_sec", ncInt, accum_sec); + add_att(var, accum_time_att_name, time_str.text()); + var->putAtt(accum_time_sec_att_name, ncInt, accum_sec); } return; diff --git a/src/libcode/vx_summary/Makefile.am b/src/libcode/vx_summary/Makefile.am index 7e56dcc05f..0630de9d59 100644 --- a/src/libcode/vx_summary/Makefile.am +++ b/src/libcode/vx_summary/Makefile.am @@ -17,6 +17,7 @@ libvx_summary_a_SOURCES = \ summary_calc_mean.cc summary_calc_mean.h \ summary_calc_median.cc summary_calc_median.h \ summary_calc_min.cc summary_calc_min.h \ + summary_calc_sum.cc summary_calc_sum.h \ summary_calc_percentile.cc summary_calc_percentile.h \ summary_calc_range.cc summary_calc_range.h \ summary_calc_stdev.cc summary_calc_stdev.h \ diff --git a/src/libcode/vx_summary/Makefile.in b/src/libcode/vx_summary/Makefile.in index ddf415b649..1f3c6e2e39 100644 --- a/src/libcode/vx_summary/Makefile.in +++ b/src/libcode/vx_summary/Makefile.in @@ -112,6 +112,7 @@ am_libvx_summary_a_OBJECTS = libvx_summary_a-summary_calc.$(OBJEXT) \ libvx_summary_a-summary_calc_mean.$(OBJEXT) \ libvx_summary_a-summary_calc_median.$(OBJEXT) \ libvx_summary_a-summary_calc_min.$(OBJEXT) \ + libvx_summary_a-summary_calc_sum.$(OBJEXT) \ libvx_summary_a-summary_calc_percentile.$(OBJEXT) \ libvx_summary_a-summary_calc_range.$(OBJEXT) \ libvx_summary_a-summary_calc_stdev.$(OBJEXT) \ @@ -142,6 +143,7 @@ am__depfiles_remade = ./$(DEPDIR)/libvx_summary_a-summary_calc.Po \ ./$(DEPDIR)/libvx_summary_a-summary_calc_percentile.Po \ ./$(DEPDIR)/libvx_summary_a-summary_calc_range.Po \ ./$(DEPDIR)/libvx_summary_a-summary_calc_stdev.Po \ + ./$(DEPDIR)/libvx_summary_a-summary_calc_sum.Po \ ./$(DEPDIR)/libvx_summary_a-summary_key.Po \ ./$(DEPDIR)/libvx_summary_a-summary_obs.Po \ ./$(DEPDIR)/libvx_summary_a-time_summary_interval.Po @@ -357,6 +359,7 @@ libvx_summary_a_SOURCES = \ summary_calc_mean.cc summary_calc_mean.h \ summary_calc_median.cc summary_calc_median.h \ summary_calc_min.cc summary_calc_min.h \ + summary_calc_sum.cc summary_calc_sum.h \ summary_calc_percentile.cc summary_calc_percentile.h \ summary_calc_range.cc summary_calc_range.h \ summary_calc_stdev.cc summary_calc_stdev.h \ @@ -422,6 +425,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-summary_calc_percentile.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-summary_calc_range.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-summary_calc_stdev.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-summary_calc_sum.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-summary_key.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-summary_obs.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvx_summary_a-time_summary_interval.Po@am__quote@ # am--include-marker @@ -516,6 +520,20 @@ libvx_summary_a-summary_calc_min.obj: summary_calc_min.cc @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libvx_summary_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libvx_summary_a-summary_calc_min.obj `if test -f 'summary_calc_min.cc'; then $(CYGPATH_W) 'summary_calc_min.cc'; else $(CYGPATH_W) '$(srcdir)/summary_calc_min.cc'; fi` +libvx_summary_a-summary_calc_sum.o: summary_calc_sum.cc +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libvx_summary_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libvx_summary_a-summary_calc_sum.o -MD -MP -MF $(DEPDIR)/libvx_summary_a-summary_calc_sum.Tpo -c -o libvx_summary_a-summary_calc_sum.o `test -f 'summary_calc_sum.cc' || echo '$(srcdir)/'`summary_calc_sum.cc +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libvx_summary_a-summary_calc_sum.Tpo $(DEPDIR)/libvx_summary_a-summary_calc_sum.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='summary_calc_sum.cc' object='libvx_summary_a-summary_calc_sum.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libvx_summary_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libvx_summary_a-summary_calc_sum.o `test -f 'summary_calc_sum.cc' || echo '$(srcdir)/'`summary_calc_sum.cc + +libvx_summary_a-summary_calc_sum.obj: summary_calc_sum.cc +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libvx_summary_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libvx_summary_a-summary_calc_sum.obj -MD -MP -MF $(DEPDIR)/libvx_summary_a-summary_calc_sum.Tpo -c -o libvx_summary_a-summary_calc_sum.obj `if test -f 'summary_calc_sum.cc'; then $(CYGPATH_W) 'summary_calc_sum.cc'; else $(CYGPATH_W) '$(srcdir)/summary_calc_sum.cc'; fi` +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libvx_summary_a-summary_calc_sum.Tpo $(DEPDIR)/libvx_summary_a-summary_calc_sum.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='summary_calc_sum.cc' object='libvx_summary_a-summary_calc_sum.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libvx_summary_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libvx_summary_a-summary_calc_sum.obj `if test -f 'summary_calc_sum.cc'; then $(CYGPATH_W) 'summary_calc_sum.cc'; else $(CYGPATH_W) '$(srcdir)/summary_calc_sum.cc'; fi` + libvx_summary_a-summary_calc_percentile.o: summary_calc_percentile.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libvx_summary_a_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libvx_summary_a-summary_calc_percentile.o -MD -MP -MF $(DEPDIR)/libvx_summary_a-summary_calc_percentile.Tpo -c -o libvx_summary_a-summary_calc_percentile.o `test -f 'summary_calc_percentile.cc' || echo '$(srcdir)/'`summary_calc_percentile.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libvx_summary_a-summary_calc_percentile.Tpo $(DEPDIR)/libvx_summary_a-summary_calc_percentile.Po @@ -733,6 +751,7 @@ distclean: distclean-am -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_percentile.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_range.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_stdev.Po + -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_sum.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_key.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_obs.Po -rm -f ./$(DEPDIR)/libvx_summary_a-time_summary_interval.Po @@ -789,6 +808,7 @@ maintainer-clean: maintainer-clean-am -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_percentile.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_range.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_stdev.Po + -rm -f ./$(DEPDIR)/libvx_summary_a-summary_calc_sum.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_key.Po -rm -f ./$(DEPDIR)/libvx_summary_a-summary_obs.Po -rm -f ./$(DEPDIR)/libvx_summary_a-time_summary_interval.Po diff --git a/src/libcode/vx_summary/summary_calc_sum.cc b/src/libcode/vx_summary/summary_calc_sum.cc new file mode 100644 index 0000000000..bac30c0873 --- /dev/null +++ b/src/libcode/vx_summary/summary_calc_sum.cc @@ -0,0 +1,43 @@ +// *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* +// ** Copyright UCAR (c) 1992 - 2022 +// ** University Corporation for Atmospheric Research (UCAR) +// ** National Center for Atmospheric Research (NCAR) +// ** Research Applications Lab (RAL) +// ** P.O.Box 3000, Boulder, Colorado, 80307-3000, USA +// *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* + + +//////////////////////////////////////////////////////////////////////// + + +using namespace std; + +#include + +#include "summary_calc_sum.h" + +//////////////////////////////////////////////////////////////////////// + + + // + // Code for class SummaryCalcSum + // + + +//////////////////////////////////////////////////////////////////////// + + +SummaryCalcSum::SummaryCalcSum() : + SummaryCalc() +{ +} + +//////////////////////////////////////////////////////////////////////// + +SummaryCalcSum::~SummaryCalcSum() +{ +} + +//////////////////////////////////////////////////////////////////////// +// Protected/Private Methods +//////////////////////////////////////////////////////////////////////// diff --git a/src/libcode/vx_summary/summary_calc_sum.h b/src/libcode/vx_summary/summary_calc_sum.h new file mode 100644 index 0000000000..7cd69afc4c --- /dev/null +++ b/src/libcode/vx_summary/summary_calc_sum.h @@ -0,0 +1,56 @@ +// *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* +// ** Copyright UCAR (c) 1992 - 2022 +// ** University Corporation for Atmospheric Research (UCAR) +// ** National Center for Atmospheric Research (NCAR) +// ** Research Applications Lab (RAL) +// ** P.O.Box 3000, Boulder, Colorado, 80307-3000, USA +// *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* + + +//////////////////////////////////////////////////////////////////////// + + +#ifndef __SUMMARYCALCSUM_H__ +#define __SUMMARYCALCSUM_H__ + + +//////////////////////////////////////////////////////////////////////// + + +#include + +#include "summary_calc.h" + +//////////////////////////////////////////////////////////////////////// + + +class SummaryCalcSum : public SummaryCalc +{ + +public: + + SummaryCalcSum(); + virtual ~SummaryCalcSum(); + + virtual string getType() const + { + return "SUM"; + } + + virtual double calcSummary(const NumArray &num_array) const + { + return num_array.sum(); + } + +}; + + +//////////////////////////////////////////////////////////////////////// + + +#endif /* __SUMMARYCALCSUM_H__ */ + + +//////////////////////////////////////////////////////////////////////// + + diff --git a/src/libcode/vx_summary/summary_obs.cc b/src/libcode/vx_summary/summary_obs.cc index 799c72f6b7..f0d752a5c5 100644 --- a/src/libcode/vx_summary/summary_obs.cc +++ b/src/libcode/vx_summary/summary_obs.cc @@ -22,6 +22,7 @@ using namespace std; #include "summary_calc_mean.h" #include "summary_calc_median.h" #include "summary_calc_min.h" +#include "summary_calc_sum.h" #include "summary_calc_percentile.h" #include "summary_calc_range.h" #include "summary_calc_stdev.h" @@ -176,11 +177,11 @@ bool SummaryObs::summarizeObs(const TimeSummaryInfo &summary_info) { mlog << Debug(3) << "Computing " << unix_to_yyyymmdd_hhmmss(time_interval->getBaseTime()) - << " time summary from " + << " time summary (" << unix_to_yyyymmdd_hhmmss(time_interval->getStartTime()) - << " to " + << " <= time < " << unix_to_yyyymmdd_hhmmss(time_interval->getEndTime()) - << ".\n"; + << ").\n"; // Initialize the map used to sort observations in this time period // into their correct summary groups @@ -365,6 +366,17 @@ vector< SummaryCalc* > SummaryObs::getSummaryCalculators(const TimeSummaryInfo & else if (type == "median") { calculators.push_back(new SummaryCalcMedian); } + else if (type == "sum") { + calculators.push_back(new SummaryCalcSum); + + // Check for vld_thresh = 1.0 + if (!is_eq(info.vld_thresh, 1.0)) { + mlog << Warning << "\nIn the \"time_summary\" dictionary, " + << "consider setting \"vld_thresh\" (" << info.vld_thresh + << ") to 1.0 for the \"sum\" type to better handle " + << "missing data.\n\n"; + } + } else if (type[0] == 'p') { calculators.push_back(new SummaryCalcPercentile(type)); } @@ -403,12 +415,12 @@ vector< TimeSummaryInterval > SummaryObs::getTimeIntervals( vector< TimeSummaryInterval > time_intervals; time_t interval_time = getIntervalTime(first_data_time, info.beg, info.end, info.step, info.width_beg, info.width_end); - while (interval_time < last_data_time) { + while (interval_time <= last_data_time) { // We need to process each day separately so that we can always start // at the indicated start time on each day. time_t day_end_time = getEndOfDay(interval_time); while (interval_time < day_end_time && - interval_time < last_data_time) + interval_time <= last_data_time) { // See if the current time is within the defined time intervals if (isInTimeInterval(interval_time, info.beg, info.end)) { diff --git a/src/tools/other/madis2nc/madis2nc.cc b/src/tools/other/madis2nc/madis2nc.cc index f6ba8a6696..ecb537b8a4 100644 --- a/src/tools/other/madis2nc/madis2nc.cc +++ b/src/tools/other/madis2nc/madis2nc.cc @@ -418,19 +418,20 @@ static bool get_filtered_nc_data(NcVar var, float *data, const char *var_name, bool required) { bool status = false; - float in_fill_value; const char *method_name = "get_filtered_nc_data(float) "; if (IS_VALID_NC(var)) { if(status = get_nc_data(&var, data, dim, cur)) { - get_nc_att_value(&var, (string)in_fillValue_str, in_fill_value); - mlog << Debug(5) << " " << method_name << GET_NC_NAME(var) << " " - << in_fillValue_str << "=" << in_fill_value << "\n"; - for (int idx=0; idx init time should be an integer or a string!\n\n"; exit ( 1 ); } - if (att) delete att; - att = get_nc_att(FcstRaw, (string)"valid_time_ut"); - ValidTime = get_att_value_unixtime(att); - if (ValidTime < 0) { + if (!get_att_unixtime(FcstRaw, valid_time_ut_att_name, ValidTime) || ValidTime < 0) { mlog << Error << "ModeNcOutputFile::open(const char *) -> valid time should be an integer or a string!\n\n"; exit ( 1 ); } - if (att) delete att; // att = FcstRaw->get_att("accum_time_sec"); // @@ -1006,6 +1000,3 @@ return ( s ); //////////////////////////////////////////////////////////////////////// - - - diff --git a/src/tools/other/plot_data_plane/plot_data_plane.cc b/src/tools/other/plot_data_plane/plot_data_plane.cc index 1d266bfc40..d5eb23e571 100644 --- a/src/tools/other/plot_data_plane/plot_data_plane.cc +++ b/src/tools/other/plot_data_plane/plot_data_plane.cc @@ -94,7 +94,6 @@ int main(int argc, char * argv[]) { VarInfo * var_ptr = (VarInfo * ) 0; VarInfoFactory v_factory; DataPlane data_plane; - DataPlaneArray data_plane_array; Grid grid; GrdFileType ftype; ColorTable color_table; diff --git a/src/tools/other/plot_point_obs/plot_point_obs.cc b/src/tools/other/plot_point_obs/plot_point_obs.cc index 888b521758..5990a33769 100644 --- a/src/tools/other/plot_point_obs/plot_point_obs.cc +++ b/src/tools/other/plot_point_obs/plot_point_obs.cc @@ -250,7 +250,6 @@ void process_point_obs(const char *point_obs_filename) { obs_qty_block, (char *)0); if (!status) exit(1); - int typ_idx, sid_idx, vld_idx; for(int i_offset=0; i_offset