#!/bin/ksh # ON ECGB: # start with ecaccess-job-submit -queueName ecgb NAME_OF_THIS_FILE on gateway server # start with sbatch NAME_OF_THIS_FILE directly on machine #SBATCH --workdir=$${SCRATCH} #SBATCH --qos=normal #SBATCH --job-name=flex_ecmwf #SBATCH --output=flex_ecmwf.%j.out #SBATCH --error=flex_ecmwf.%j.out #SBATCH --mail-type=FAIL #SBATCH --mail-user=$username #SBATCH --time=12:00:00 ## CRAY specific batch requests ##PBS -N flex_ecmwf ##PBS -q ns ##PBS -S /usr/bin/ksh ##PBS -o $${SCRATCH}/flex_ecmwf.$${Jobname}.$${Job_ID}.out # job output is in .ecaccess_DO_NOT_REMOVE ##PBS -j oe ##PBS -V ##PBS -l EC_threads_per_task=1 ##PBS -l EC_memory_per_task=3200MB set -x export VERSION=$version_number case $${HOST} in *ecg*) module unload grib_api module unload emos module load python3 module load eccodes module load emos/455-r64 export FLEXPART_ROOT_SCRIPTS=$fp_root_scripts export MAKEFILE=$makefile ;; *cca*) module switch PrgEnv-cray PrgEnv-intel module load python3 module load eccodes module load emos/455-r64 echo $${GROUP} echo $${HOME} echo $${HOME} | awk -F / '{print $1, $2, $3, $4}' export GROUP=`echo $${HOME} | awk -F / '{print $4}'` export SCRATCH=/scratch/ms/$${GROUP}/$${USER} export FLEXPART_ROOT_SCRIPTS=$fp_root_scripts export MAKEFILE=$makefile ;; esac mkdir -p $${FLEXPART_ROOT_SCRIPTS}/flex_extract_v$${VERSION} cd $${FLEXPART_ROOT_SCRIPTS}/flex_extract_v$${VERSION} # if FLEXPART_ROOT is not set this means cd to the home directory tar -xvf $${HOME}/flex_extract_v$${VERSION}.tar cd Source/Fortran \rm *.o *.mod $fortran_program make -f $${MAKEFILE} >flexcompile 2>flexcompile ls -l $fortran_program >>flexcompile if [ $$? -eq 0 ]; then echo 'SUCCESS!' >>flexcompile mail -s flexcompile.$${HOST}.$$$$ $${USER} >flexcompile env >> flexcompile mail -s "ERROR! flexcompile.$${HOST}.$$$$" $${USER}