#!/bin/bash

####PBS -l select=<N_nos>:ncpus=<CPUs_por_no>:mpiprocs=<MPI_por_no>:ompthreads=<OMP_por_no>

#PBS -N MO.Pos1
#PBS -q oper
#PBS -l select=1:ncpus=32:mpiprocs=32:ompthreads=1
#PBS -l walltime=8:00:00
#PBS -o /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Post/logs/PostAtmos_node.1.o
#PBS -e /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Post/logs/PostAtmos_node.1.e
#PBS -l place=scatter:excl
#PBS -V


cd /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/run.2026020800
. /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/scripts/setenv.bash
chmod 755 /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/run.2026020800/*

echo "Executing posts 1 to 30 in node Node 1."

for ii in $(seq  1 30)
do
   i=$(printf "%04d" ${ii})
   echo "Preparing post files ${i}"
   cp -f /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Pre/x1.5898242.init.nc /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/run.2026020800/dir.${i} &
   cp -f /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/execs/convert_mpas /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/run.2026020800/dir.${i} &
done

wait

for ii in $(seq  1 30)
do
   i=$(printf "%04d" ${ii})
   echo "Executing post ${i}"
   cd /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/run.2026020800/dir.${i}
   chmod 755 *
   hh=00
   currentdate=$(date -d "20260208 ${hh}:00:00 $(echo "(${i}-1)*03" | bc) hours $(echo "(${i}-1)*00" | bc) minutes $(echo "(${i}-1)*00" | bc) seconds" +"%Y%m%d%H.%M.%S")
   diag_name=MONAN_DIAG_G_MOD_GFS_2026020800_${currentdate}.x5898242L55.nc
   echo ""
   echo "executando convert mpas"
   chmod 755 /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Model/*
   time  ./convert_mpas x1.5898242.init.nc /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Model/${diag_name}  > convert_mpas.output & 
   echo "./convert_mpas x1.5898242.init.nc /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Model/${diag_name} > convert_mpas.output"
done

# necessario aguardar as rodadas em background
wait

for ii in $(seq  1 30)
do
   i=$(printf "%04d" ${ii})
   hh=00
   currentdate=$(date -d "20260208 ${hh}:00:00 $(echo "(${i}-1)*03" | bc) hours $(echo "(${i}-1)*00" | bc) minutes $(echo "(${i}-1)*00" | bc) seconds" +"%Y%m%d%H.%M.%S")
   diag_name_post=MONAN_DIAG_G_POS_GFS_2026020800_${currentdate}.x5898242L55.nc

   cd /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/run.2026020800/dir.${i}
   chmod 755 *
   cp latlon.nc  /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Post/${diag_name_post} >> convert_mpas.output & 
   echo "cp latlon.nc  /p/projetos/ioper/models/MONAN-WorkFlow-OPER/MONAN_PRE_OPER/MONAN/scripts_CD-CT/dataout/2026020800/Post/${diag_name_post}"  >> convert_mpas.output
   
done
 
wait

