|
@@ -1,4 +1,4 @@
|
|
|
-
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
@@ -9,13 +9,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
set -ueo pipefail
|
|
|
|
|
|
LOCAL_NODES=4
|
|
|
-LOCAL_TASKS=492
|
|
|
+LOCAL_TASKS=500
|
|
|
|
|
|
stdout_file=${SLURM_SUBMIT_DIR-$PWD}/${SLURM_JOB_NAME-"local"}_${SLURM_JOB_ID-"id"}.log
|
|
|
exec > ${stdout_file}
|
|
@@ -91,7 +96,7 @@ nem_grid=ORCA1L75
|
|
|
|
|
|
|
|
|
|
|
|
-rst_freq="6 months"
|
|
|
+rst_freq="1 year"
|
|
|
|
|
|
|
|
|
run_num_legs=1
|
|
@@ -116,54 +121,16 @@ use_machinefile=%USE_MACHINEFILE%
|
|
|
|
|
|
ece_info_file="ece.info"
|
|
|
|
|
|
+forcing_files=(
|
|
|
+"* => ."
|
|
|
+)
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
. ${start_dir}/ecconf.cfg
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-export SCRATCH=/gpfs/scratch/acad/ecearth/${USER}
|
|
|
-
|
|
|
-
|
|
|
-ecearth_src_dir=${HOME}/models/ecearth_3.3.3.2/sources
|
|
|
-run_dir=/gpfs/scratch/acad/ecearth/${USER}/ecearth/run/${exp_name}
|
|
|
-ini_data_dir=/gpfs/scratch/acad/ecearth/data/bsc32/v3.3.3.2/inidata
|
|
|
-archive_dir=/gpfs/scratch/acad/ecearth/${USER}/ecearth/archive/${exp_name}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-stdout_file=${SLURM_SUBMIT_DIR-$PWD}/${SLURM_JOB_NAME-"local"}_${SLURM_JOB_ID-"id"}.log
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-resubmit_job=true
|
|
|
-resubmit_opt=""
|
|
|
-
|
|
|
-module purge
|
|
|
-module load EasyBuild/2023a
|
|
|
-MODULEPATH=$MODULEPATH:/gpfs/projects/acad/ecearth/softs/easybuild/modules/all
|
|
|
-module load netCDF-Fortran/4.6.1-iompi-2023a
|
|
|
-module load imkl/2023.1.0
|
|
|
-module load grib_api/1.24.0-iompi-2023a
|
|
|
-module load CDO/1.9.10-iompi-2023a
|
|
|
-
|
|
|
-
|
|
|
-export GRIB_DEFINITION_PATH=${HOME}/models/ecearth_3.3.3.2/sources/util/grib_table_126:${EBROOTGRIB_API}/share/grib_api/definitions
|
|
|
-export GRIB_SAMPLES_PATH=${EBROOTGRIB_API}/share/grib_api/ifs_samples/grib1
|
|
|
-export GRIB_BIN_PATH=${EBROOTGRIB_API}/bin
|
|
|
-
|
|
|
-
|
|
|
-proc_per_node=128
|
|
|
-
|
|
|
-
|
|
|
-[[ `echo "$use_machinefile" | tr '[:upper:]' '[:lower:]'` == true ]] && use_machinefile=true || use_machinefile=false
|
|
|
-
|
|
|
-ulimit -s unlimited
|
|
|
+configure
|
|
|
|
|
|
|
|
|
|
|
@@ -224,7 +191,7 @@ ifs_ddh_freq=$(( 120 * 3600 / ifs_time_step_sec ))
|
|
|
export ifs_res_hor=$(echo ${ifs_grid} | sed 's:T\([0-9]\+\)L\([0-9]\+\):\1:')
|
|
|
ifs_res_ver=$(echo ${ifs_grid} | sed 's:T\([0-9]\+\)L\([0-9]\+\):\2:')
|
|
|
|
|
|
-ifs_numproc=392
|
|
|
+ifs_numproc=400
|
|
|
|
|
|
ifs_exe_file=${ecearth_src_dir}/ifs-${ifs_version}/bin/ifsmaster-${build_arch}
|
|
|
|
|
@@ -256,7 +223,7 @@ ifs_cmip6piaer=TRUE
|
|
|
|
|
|
|
|
|
|
|
|
-ifs_cmip6_scenario=historical
|
|
|
+export ifs_cmip6_scenario=historical
|
|
|
|
|
|
|
|
|
ifs_covid19=FALSE
|
|
@@ -960,6 +927,11 @@ do
|
|
|
ln -s ${ini_data_dir}/nemo/oce_nudg/resto.nc
|
|
|
fi
|
|
|
|
|
|
+
|
|
|
+ for file in "${forcing_files[@]}"; do
|
|
|
+ [[ ! -e ${file#*> } || "$file" == \** ]] && ln -sf $(sed 's/ *=> */ /' <<< "${ini_data_dir}/nemo/forcing/wind_stress_anom/$file")
|
|
|
+ done
|
|
|
+
|
|
|
|
|
|
. ${ctrl_file_dir}/iodef.xml.sh > iodef.xml
|
|
|
ln -s ${ctrl_file_dir}/context_nemo.xml
|
|
@@ -1995,23 +1967,6 @@ done
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-if ${resubmit_job} && [ $(date -d "${leg_end_date}" +%s) -lt $(date -d "${run_end_date}" +%s) ]
|
|
|
-then
|
|
|
- info "Resubmitting job for leg $((leg_number+1))"
|
|
|
-
|
|
|
- cd ${start_dir}
|
|
|
-
|
|
|
- echo "sbatch -N ${SLURM_JOB_NUM_NODES-"1"} -o ${run_dir}/$(basename ${stdout_file}).$(printf %03d $((leg_number+1))) \
|
|
|
- -e ${run_dir}/$(basename ${stdout_file}).$(printf %03d $((leg_number+1))) -d ${SLURM_JOB_ID-"id"} \
|
|
|
- ./${SLURM_JOB_NAME-"run"}.sh"
|
|
|
-
|
|
|
- sbatch -N ${SLURM_JOB_NUM_NODES-"1"} \
|
|
|
- -o ${run_dir}/$(basename ${stdout_file}).$(printf %03d $((leg_number+1))) \
|
|
|
- -e ${run_dir}/$(basename ${stdout_file}).$(printf %03d $((leg_number+1))) \
|
|
|
- -d ${SLURM_JOB_ID-"id"} \
|
|
|
- ./${SLURM_JOB_NAME-"run"}.sh
|
|
|
-fi
|
|
|
+finalise
|
|
|
|
|
|
exit 0
|