mirror of https://github.com/ecmwf/eccodes.git
88 lines
2.0 KiB
Bash
Executable File
88 lines
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
# (C) Copyright 2005- ECMWF.
|
|
#
|
|
# This software is licensed under the terms of the Apache Licence Version 2.0
|
|
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
|
#
|
|
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
|
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
|
#
|
|
|
|
. ./include.ctest.sh
|
|
set -u
|
|
|
|
label="grib_ecc-1319-test"
|
|
|
|
temp=temp.$label.grib
|
|
temp1=temp1.$label.grib
|
|
temp2=temp2.$label.grib
|
|
sample_grib2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl
|
|
|
|
typeOfLevels="
|
|
surface
|
|
tropopause
|
|
nominalTop
|
|
mostUnstableParcel
|
|
mixedLayerParcel
|
|
isobaricInPa
|
|
isobaricInhPa
|
|
isobaricLayer
|
|
meanSea
|
|
heightAboveGround
|
|
heightAboveGroundLayer
|
|
hybrid
|
|
hybridHeight
|
|
hybridLayer
|
|
depthBelowLand
|
|
depthBelowLandLayer
|
|
theta
|
|
thetaLayer
|
|
potentialVorticity
|
|
soil
|
|
soilLayer
|
|
entireAtmosphere
|
|
entireOcean
|
|
snow
|
|
snowLayer
|
|
seaIce
|
|
seaIceLayer"
|
|
|
|
ok_levtypes="hhl ml o2d pl pt pv sfc sol"
|
|
check_levtype()
|
|
{
|
|
_arg=$1
|
|
result=1
|
|
for n in $ok_levtypes; do
|
|
if [ "$_arg" = "$n" ]; then result=0; break; fi
|
|
done
|
|
return $result
|
|
}
|
|
|
|
|
|
for a_typeOfLevel in $typeOfLevels; do
|
|
${tools_dir}/grib_set -s tablesVersion=27,typeOfLevel=$a_typeOfLevel $sample_grib2 $temp
|
|
levtype=`${tools_dir}/grib_get -p mars.levtype $temp`
|
|
check_levtype $levtype
|
|
done
|
|
|
|
# Also check specific cases
|
|
# --------------------------
|
|
# 260649 = Sea ice surface temperature (UERRA)
|
|
${tools_dir}/grib_set -s productionStatusOfProcessedData=8 $sample_grib2 $temp1
|
|
${tools_dir}/grib_set -s paramId=260649 $temp1 $temp2
|
|
grib_check_key_equals $temp2 levtype sfc
|
|
# 260650 = Snow on ice total depth (UERRA)
|
|
${tools_dir}/grib_set -s paramId=260650 $temp1 $temp2
|
|
grib_check_key_equals $temp2 levtype sfc
|
|
|
|
# Lake ice surface temperature
|
|
${tools_dir}/grib_set -s paramId=228013 $sample_grib2 $temp
|
|
grib_check_key_equals $temp levtype sfc
|
|
# Lake ice total depth
|
|
${tools_dir}/grib_set -s paramId=228014 $sample_grib2 $temp
|
|
grib_check_key_equals $temp levtype sfc
|
|
|
|
|
|
|
|
rm -f $temp $temp1 $temp2
|