diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..8172ba2e775f00c59101d0c13f428095f09d61f7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +# +# gitignore lists all directories and files which should not be versionized!!! +# + +# these dirs and files shouldn't be versionized at any time in this project!!! +*.pyc +*.o +*.mod +*.tar* +*.ksh +/work* +/src/CONVERT2 +/python/ECMWF_ENV diff --git a/docs/Fp_extract_strukt-pngnew.png b/docs/Fp_extract_strukt.png similarity index 100% rename from docs/Fp_extract_strukt-pngnew.png rename to docs/Fp_extract_strukt.png diff --git a/python/compilejob.temp b/python/compilejob.temp new file mode 100644 index 0000000000000000000000000000000000000000..52a2cd5fab8627e5eae43ea5da3777bd1ee4b042 --- /dev/null +++ b/python/compilejob.temp @@ -0,0 +1,77 @@ +#!/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/ms/spatlh00/lh0 +#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 --time=12:00:00 + +## CRAY specific batch requests +##PBS -N flex_ecmwf +##PBS -q ns +##PBS -S /usr/bin/ksh +# -o /scratch/ms/no/sbc/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=7.0.3 +case $HOST in + *ecg*) + module load python + module unload grib_api + module unload emos + module load grib_api/1.14.5 + module load emos/437-r64 + export FLEXPART_ROOT_SCRIPTS= + export MAKEFILE=Makefile.gfortran + ;; + *cca*) + module switch PrgEnv-cray PrgEnv-intel + module load grib_api + module load emos + module load python + 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= + export MAKEFILE=Makefile.CRAY + ;; +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 src +\rm *.o *.mod CONVERT2 +make -f $MAKEFILE >flexcompile 2>flexcompile + +ls -l CONVERT2 >>flexcompile +if [ $? -eq 0 ]; then + echo 'SUCCESS!' >>flexcompile + mail -s flexcompile.$HOST.$$ $USER <flexcompile +else + echo Environment: >>flexcompile + env >> flexcompile + mail -s "ERROR! flexcompile.$HOST.$$" $USER <flexcompile +fi + + + + + + + + + diff --git a/python/job.temp b/python/job.temp new file mode 100644 index 0000000000000000000000000000000000000000..598184a09d9e3e53ae8897521ff4c7e734909e1b --- /dev/null +++ b/python/job.temp @@ -0,0 +1,80 @@ +#!/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/ms/at/km4a +#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 --time=12:00:00 + +## CRAY specific batch requests +##PBS -N flex_ecmwf +##PBS -q np +##PBS -S /usr/bin/ksh +## -o /scratch/ms/spatlh00/lh0/flex_ecmwf.$PBS_JOBID.out +## job output is in .ecaccess_DO_NOT_REMOVE +##PBS -j oe +##PBS -V +##PBS -l EC_threads_per_task=24 +##PBS -l EC_memory_per_task=32000MB + +set -x +export VERSION=7.0.3 +case $HOST in + *ecg*) + module load python + module unload grib_api + module unload emos + module load grib_api/1.14.5 + module load emos/437-r64 + export PATH=${PATH}:${HOME}/flex_extract_v7.0.3/python + ;; + *cca*) + module switch PrgEnv-cray PrgEnv-intel + module load grib_api + module load emos + module load python + export SCRATCH=$TMPDIR + export PATH=${PATH}:${HOME}/flex_extract_v7.0.3/python + ;; +esac + +cd $SCRATCH +mkdir -p python$$ +cd python$$ + +export CONTROL=CONTROL + +cat >$CONTROL<<EOF +GATEWAY srvx8.img.univie.ac.at +DESTINATION annep@genericSftp +EOF +cat >>$CONTROL<<EOF +EOF + + +submit.py --controlfile=$CONTROL --inputdir=./work --outputdir=./work 1> prot 2>&1 + +if [ $? -eq 0 ] ; then + l=0 + for muser in `grep -i MAILOPS $CONTROL`; do + if [ $l -gt 0 ] ; then + mail -s flex.${HOST}.$$ $muser <prot + fi + l=$(($l+1)) + done +else + l=0 + for muser in `grep -i MAILFAIL $CONTROL`; do + if [ $l -gt 0 ] ; then + mail -s "ERROR! flex.${HOST}.$$" $muser <prot + fi + l=$(($l+1)) + done +fi + diff --git a/python/job.temp.o b/python/job.temp.o new file mode 100644 index 0000000000000000000000000000000000000000..ada8673b15f00d9a798d88d06ec6bb9c8a242a0e --- /dev/null +++ b/python/job.temp.o @@ -0,0 +1,75 @@ +#!/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/ms/spatlh00/lh0 +#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 --time=12:00:00 + +## CRAY specific batch requests +##PBS -N flex_ecmwf +##PBS -q np +##PBS -S /usr/bin/ksh +## -o /scratch/ms/spatlh00/lh0/flex_ecmwf.$PBS_JOBID.out +## job output is in .ecaccess_DO_NOT_REMOVE +##PBS -j oe +##PBS -V +##PBS -l EC_threads_per_task=24 +##PBS -l EC_memory_per_task=32000MB + +set -x +export VERSION=7.0.3 +case $HOST in + *ecg*) + module load python + module unload grib_api + module unload emos + module load grib_api/1.14.5 + module load emos/437-r64 + export PATH=${PATH}: + ;; + *cca*) + module switch PrgEnv-cray PrgEnv-intel + module load grib_api + module load emos + module load python + export SCRATCH=$TMPDIR + export PATH=${PATH}: + ;; +esac + +cd $SCRATCH +mkdir -p python$$ +cd python$$ + +export CONTROL=CONTROL + +cat >>$CONTROL<<EOF +EOF + + +submit.py --controlfile=$CONTROL --inputdir=./work --outputdir=./work 1> prot 2>&1 + +if [ $? -eq 0 ] ; then + l=0 + for muser in `grep -i MAILOPS $CONTROL`; do + if [ $l -gt 0 ] ; then + mail -s flex.${HOST}.$$ $muser <prot + fi + l=$(($l+1)) + done +else + l=0 + for muser in `grep -i MAILFAIL $CONTROL`; do + if [ $l -gt 0 ] ; then + mail -s "ERROR! flex.${HOST}.$$" $muser <prot + fi + l=$(($l+1)) + done +fi