#!/bin/bash ################################################################################# # Script escrito para hacer pruebas con teselas meteorologicas del modelo WRF. # # Marcos Molina Cano - 21/11/2016 ################################################################################# # Comprobación de los parámetros de entrada. if test ${#} -eq 1 ; then if test ${1} -ge 0 -a ${1} -le 6 ; then minZoom=0; maxZoom=${1} else echo "Introduce como parámetro de entrada un zoom tal que 0 <= zoom <= 6." exit fi else echo "Introduce como parámetro de entrada el zoom." exit fi # Tipo de mapa a usar. mapa="temp2m" #mapa="prcnub" #mapa="prsvie" # Definición de la fecha, pasada y proyección del mapa. UTC siempre. fecha=`date -u +%Y%m%d` pasada="00" proyeccion="003" # Directorio donde están los ficheros mtf y glb necesarios. Se comprueba también que existe. MTFDIR="/home/gfs/marcos/share" if test ! -d ${MTFDIR} ; then echo "El directorio ${MTFDIR} no existe. Saliendo..." exit fi # Dominio de cálculo del modelo WRF. dominio="mag016 azo010 rus015 amn013 ams013 eur010" for DOM in ${dominio}; do # Definición de los directorios base y comprobación de que existe. BASEDIR="/home/gfs/marcos/WRF/${mapa}/${DOM}" # Directorio donde se guardan las teselas meteorológicas. if test ! -d ${BASEDIR} ; then echo "El directorio ${BASEDIR} no existe. Creándolo..." mkdir -p ${BASEDIR} fi xmax=0 tilesmax=0 for ((z=${minZoom}; z<=${maxZoom}; z++)) ; do contador=1 let tilesmax=4**${z} let xmax=2**${z}-1 ymax=${xmax} for ((x=0; x<=${xmax}; x++)) ; do mkdir -p ${BASEDIR}/${z}/${x} cd ${BASEDIR}/${z}/${x} for ((y=0; y<=${ymax}; y++)) ; do imagen=${y}.png if test -s ${imagen} ; then echo "Ya existen los ficheros de la tesela ${z}/${x}/${y} (${contador} de ${tilesmax})" let contador=${contador}+1 continue else echo "Generando tesela meteorológica ${z}/${x}/${y} (${contador} de ${tilesmax})" if test ! -s ${MTFDIR}/${z}/${x}/${y}.mtf ; then echo "No existe el fichero mtf para la tesela ${z}/${x}/${y}. Saliendo..." exit fi mrwrf_lyr_${mapa} \ -i /home/gbv/WRF_PRD/${DOM}.${fecha}${pasada}/${DOM}_${fecha}${pasada}.f${proyeccion} \ -g ${MTFDIR}/${z}/${x}/${y} \ -c /home/gfs/meteored/share/${mapa} \ -r /home/gbv/WRF_PRD/${DOM}.${fecha}${pasada}/copygb_hwrf.txt \ -o ${y} \ -d ${fecha}${pasada} \ -p ${proyeccion} \ -I "WRF_${z}_${x}_${y}" let contador=${contador}+1 fi done done echo " ***" done done