ECC-689: GRIB decode performance: remove redundant keys from GRIB2 messages

This commit is contained in:
Shahram Najm 2018-05-11 16:05:56 +01:00
parent f5bd10fc55
commit b319f6ef43
3 changed files with 17 additions and 7 deletions

View File

@ -24,19 +24,13 @@ constant zero=0 : hidden;
constant one=1 : hidden; constant one=1 : hidden;
constant two=1 : hidden; constant two=1 : hidden;
constant three=1 : hidden; constant three=1 : hidden;
constant eight=8 : hidden;
constant hundred=100 : hidden; constant hundred=100 : hidden;
constant eleven=11 : hidden;
constant true="true" :hidden; constant true="true" :hidden;
constant false="false" : hidden; constant false="false" : hidden;
transient truncateLaplacian=0 : hidden; transient truncateLaplacian=0 : hidden;
constant marsDir="mars" : no_copy,hidden; constant marsDir="mars" : no_copy,hidden;
constant present=1 : hidden; constant present=1 : hidden;
constant epsPoint=1 : hidden; # alias epsStatistics=zero : hidden;
constant epsContinous=11 : hidden;
constant epsStatisticsPoint=2 : hidden;
constant epsStatisticsContinous=12 : hidden;
alias epsStatistics=zero : hidden;
constant defaultParameter = 0 : hidden; constant defaultParameter = 0 : hidden;
constant defaultName="unknown" :hidden; constant defaultName="unknown" :hidden;

View File

@ -9,6 +9,12 @@
constant ieeeFloats = 0 : hidden, edition_specific; constant ieeeFloats = 0 : hidden, edition_specific;
transient eps=0; transient eps=0;
constant eight=8 : hidden;
constant eleven=11 : hidden;
constant epsPoint=1 : hidden;
constant epsContinous=11 : hidden;
constant epsStatisticsPoint=2 : hidden;
constant epsStatisticsContinous=12 : hidden;
meta headersOnly headers_only(); meta headersOnly headers_only();

View File

@ -51,6 +51,7 @@ do
done done
# ECC-457 ECMWF total precipitation # ECC-457 ECMWF total precipitation
# ----------------------------------
input=${data_dir}/tp_ecmwf.grib input=${data_dir}/tp_ecmwf.grib
output=temp.grib1to2.grib output=temp.grib1to2.grib
${tools_dir}/grib_set -s edition=2 $input $output ${tools_dir}/grib_set -s edition=2 $input $output
@ -58,6 +59,15 @@ res=`${tools_dir}/grib_get -w count=1 -p edition,paramId,units $output`
[ "$res" = "2 228228 kg m**-2" ] [ "$res" = "2 228228 kg m**-2" ]
rm -f $output rm -f $output
# Local Definition 30
# --------------------
sample_g1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl
${tools_dir}/grib_set -s setLocalDefinition=1,localDefinitionNumber=30,stepType=accum,edition=2 $sample_g1 $output
grib_check_key_equals $output productDefinitionTemplateNumber 11
${tools_dir}/grib_set -s setLocalDefinition=1,localDefinitionNumber=30,type=em,stepType=accum,edition=2 $sample_g1 $output
grib_check_key_equals $output productDefinitionTemplateNumber 12
rm -f $output
#sed "s:toolsdir:${tools_dir}/:" ${tools_dir}/grib1to2.txt > ${tools_dir}/grib1to2.test #sed "s:toolsdir:${tools_dir}/:" ${tools_dir}/grib1to2.txt > ${tools_dir}/grib1to2.test
#chmod +x ${tools_dir}/grib1to2.test #chmod +x ${tools_dir}/grib1to2.test
#${tools_dir}/grib1to2.test -f ${data_dir}/test.grib1 ${data_dir}/test.grib2 #${tools_dir}/grib1to2.test -f ${data_dir}/test.grib1 ${data_dir}/test.grib2