#!/bin/bash
################################################################################
# Script que toma un grib y obtiene el valor o los 4 valores más cercanos
# al punto que se le indique.
#
# Marcos Molina Cano <marcosmolina.tiempo@gmail.com>                  25/01/2018
################################################################################

# Debug.
# set -x

# Fichero grib con los datos.
gribFile=/home/marcos/mars/uruguay.grb

# Coordenadas del punto que queremos los datos.
lat=-34.882551
lon=-56.168289

# Cabecera para el fichero de texto.
echo "YEAR-MONTH COMPONENTE_U(m/s) COMPONENTE_V(m/s) INTENSIDAD(m/s)"

# Bucle que recorre los instantes temporales dentro del grib.
for YEAR in $(seq 2010 2017) ; do
  for MONTH in $(seq -w 1 12) ; do

    # Se extraen los datos y se guardan en variables.
    U=$(grib_get -w  shortName=10u,dataDate=${YEAR}${MONTH}01 -l${lat},${lon},1 ${gribFile})
    V=$(grib_get -w  shortName=10v,dataDate=${YEAR}${MONTH}01 -l${lat},${lon},1 ${gribFile})
    I=$(grib_get -w shortName=10si,dataDate=${YEAR}${MONTH}01 -l${lat},${lon},1 ${gribFile})

    echo ${YEAR}-${MONTH} ${U} ${V} ${I}

  done
done
