Testing: Convert GRIB2.tmpl to spectral

This commit is contained in:
shahramn 2024-11-26 13:53:26 +00:00
parent 5dd5686bbe
commit 10567456b8
1 changed files with 36 additions and 8 deletions

View File

@ -12,21 +12,49 @@
label="grib_spectral_test" label="grib_spectral_test"
output=output.$label.grib tempFilt=temp.${label}.filt
tempGrib=temp.${label}.grib
input_complex=$ECCODES_SAMPLES_PATH/sh_ml_grib2.tmpl input_complex=$ECCODES_SAMPLES_PATH/sh_ml_grib2.tmpl
$EXEC ${test_dir}/grib_spectral $input_complex $output $EXEC ${test_dir}/grib_spectral $input_complex $tempGrib
rm -f $output rm -f $tempGrib
# Now try spectral simple # Now try spectral simple
input_simple=$label.simple.grib tempSimple=temp.$label.simple.grib
${tools_dir}/grib_set -rs packingType=spectral_simple $input_complex $input_simple ${tools_dir}/grib_set -rs packingType=spectral_simple $input_complex $tempSimple
$EXEC ${test_dir}/grib_spectral $input_simple $output $EXEC ${test_dir}/grib_spectral $tempSimple $tempGrib
# GRIB1: octet_number pack_long # GRIB1: octet_number pack_long
input_complex=$ECCODES_SAMPLES_PATH/sh_ml_grib1.tmpl input_complex=$ECCODES_SAMPLES_PATH/sh_ml_grib1.tmpl
${tools_dir}/grib_set -s Nassigned=1 $input_complex $output ${tools_dir}/grib_set -s Nassigned=1 $input_complex $tempGrib
# Encode a spectral sample starting from GRIB2.tmpl
sample2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl
cat > $tempFilt <<EOF
set numberOfDataPoints = 6;
set numberOfValues = 6;
set bitsPerValue = 16;
set values = {33, 0, 1, 0, 2, 0};
set typeOfFirstFixedSurface = 105;
set scaleFactorOfFirstFixedSurface = 0;
set scaledValueOfFirstFixedSurface = 0;
rm -f $output $input_simple set gridDefinitionTemplateNumber=50;
set J=1;
set K=1;
set M=1;
set spectralType = 1;
set spectralMode = 1;
set dataRepresentationTemplateNumber=51;
write;
EOF
${tools_dir}/grib_filter -o $tempGrib $tempFilt $sample2
${tools_dir}/grib_get_data $tempGrib
${tools_dir}/grib_dump $tempGrib
grib_check_key_equals $tempGrib packingType spectral_complex
grib_check_key_equals $tempGrib gridType sh
rm -f $tempSimple $tempFilt $tempGrib