File: ret.sh

package info (click to toggle)
eccodes 2.44.2-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 150,248 kB
  • sloc: cpp: 163,056; ansic: 26,308; sh: 21,602; f90: 6,854; perl: 6,363; python: 5,087; java: 2,226; javascript: 1,427; yacc: 854; fortran: 543; lex: 359; makefile: 285; xml: 183; awk: 66
file content (54 lines) | stat: -rwxr-xr-x 1,755 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/ksh

set -eu

set -A files            \
  reduced_latlon_surface.grib1 \
  reduced_gaussian_pressure_level.grib1 \
  regular_gaussian_pressure_level.grib1 \
  reduced_gaussian_model_level.grib1  \
  regular_gaussian_model_level.grib1  \
  reduced_gaussian_surface.grib1 \
  regular_gaussian_surface.grib1 \
  regular_latlon_surface.grib1 \
  spherical_pressure_level.grib1 \
  spherical_model_level.grib1 

set -A rets   \
  "ret,stream=wave,levtype=sfc,param=swh," \
  "ret,stream=oper,level=1000,gaussian=reduced,grid=32,param=t," \
  "ret,level=1000,gaussian=regular,grid=32,param=t," \
  "ret,levtype=ml,level=1,gaussian=reduced,grid=32,param=t," \
  "ret,levtype=ml,level=1,gaussian=regular,grid=32,param=t," \
  "ret,levtype=sfc,param=2t,gaussian=reduced,grid=32," \
  "ret,levtype=sfc,param=2t,gaussian=regular,grid=32," \
  "ret,levtype=sfc,param=2t,grid=2/2,area=60/0/0/30,"  \
  "ret,class=od,type=an,stream=da,expver=0001,levtype=pl,levelist=1000,param=130,time=1200,step=00,domain=g,resol=63,param=t," \
  "ret,class=od,type=an,stream=da,expver=0001,levtype=ml,levelist=1,param=130,time=1200,step=00,domain=g,resol=63,param=t," 

set -A precision  2 2 2 2 2 2 2 -1 -1 -1 

[[ ${#files[@]} -eq ${#rets[@]} ]] && [[ ${#rets[@]} -eq ${#precision[@]} ]]

for (( i=0; i< ${#files[@]}; i++ ))    
do

  mars << EOF
  ${rets[i]}
  tar="full_${files[i]}"
EOF

  if [[ ${precision[i]} -gt 0 ]] 
  then 
    grib_set -r -s bitsPerValue=0,decimalScaleFactor=${precision[i]} full_${files[i]} ${files[i]}
    rm -f full_${files[i]}
  else
    mv full_${files[i]} ${files[i]}
  fi

  grib_dump ${files[i]} > /dev/null
  grib2=`basename ${files[i]} .grib1`.grib2
  grib_set -s editionNumber=2 ${files[i]} $grib2
  grib_dump ${grib2} > /dev/null

done