New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
sette.sh in branches/2012/dev_r3342_MERCATOR7_SST/NEMOGCM/SETTE – NEMO

source: branches/2012/dev_r3342_MERCATOR7_SST/NEMOGCM/SETTE/sette.sh @ 3422

Last change on this file since 3422 was 3422, checked in by cbricaud, 12 years ago

modifications for SETTE

  • Property svn:executable set to *
  • Property svn:keywords set to Id
File size: 23.2 KB
RevLine 
[2539]1#!/bin/bash
[2500]2#############################################################
3# Author : Simona Flavoni for NEMO
4# Contact : sflod@locean-ipsl.upmc.fr
[2354]5#
[2500]6# sette.sh   : principal script of SET TEsts for NEMO (SETTE)
[2546]7# ----------------------------------------------------------------------
8# NEMO/SETTE , NEMO Consortium (2010)
9# Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
10# ----------------------------------------------------------------------
11#
[2500]12#############################################################
13#set -x
14set -o posix
15#set -u
16#set -e
17#+
[2354]18#
[2500]19# ================
20# sette.sh
21# ================
22#
23# ----------------------------------------------
24# Set of tests for NEMO
25# ----------------------------------------------
26#
27# SYNOPSIS
28# ========
29#
30# ::
31#
32#  $ ./sette.sh
33#
34# DESCRIPTION
35# ===========
36#
[3294]37# Variables to be checked by user:
[2500]38#
[3294]39# COMPILER : name of compiler as defined in NEMOGCM/ARCH directory
[2545]40#
[3294]41# BATCH_COMMAND :  name of the command for batch submission
[2545]42#
[3294]43# MPI_INTERACT : 
[2545]44#
[3294]45#         for MPP tests, "no" for batch execution, "yes" for interactive execution
[2545]46#
[3294]47#         NOTE: for run with 1 process tests are run always in MPI_INTERACT="yes"
[2545]48#
[3294]49# Principal script is sette.sh, that calls
[2545]50#
[3294]51#  makenemo
[2545]52#
[3294]53#   creates the exectuable in ${CONFIG_NAME}/BLD/bin/nemo.exe  (and its link opa in ${CONFIG_NAME}/EXP00)
54#
55#  param.cfg : sets and loads following directories:
56#
57#   FORCING_DIR : is the directory for forcing files (tarfile)
58#
59#   INPUT_DIR : is the directory for input files storing
60#
61#   TMPDIR : is the temporary directory (if needed)
[2665]62#
[3294]63#   NEMO_VALIDATION_DIR : is the validation directory
[2545]64#
[3294]65#   (NOTE: this file is the same for all configrations to be tested with sette)
[2545]66#
[3294]67#
[2665]68#  all_functions.sh : loads functions used by sette (note: new functions can be added here)
[2545]69#
[3294]70#   set_namelist : function declared in all_functions that set namelist parameters for tests
[2545]71#
[3294]72#   post_test_tidyup : creates validation storage directory and copy needed output files (solver.stat and ocean.output) in it after execution of test.
73#
74#   Tree of VALIDATION is:
75#
76#   NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
77#
78#
79#  prepare_exe_dir.sh : defines and creates directory where the test is executed
80#
81#       execution directory takes name of TEST_NAME defined in every test in sette.sh
82#
83#       ( each test in executed in its own directory )
84#
85#
[3336]86#  prepare_job.sh
87#
88#  to generate the script run_job.sh
89#
[2545]90#  fcm_job.sh
91#
[3294]92#   runs job in interactive or batch mode : all jobs using 1 process are run interactive, and all MPP jobs are
[2665]93#
[3294]94#   run in batch (MPI_INTERACT="no") or interactive (MPI_INTERACT="yes") see sette.sh and BATCH_TEMPLATE directory
[2665]95#
96#   (note this job needs to have an input_CONFIG.cfg in which can be found input tar file)
[2545]97#
[3294]98#  NOTE: if job is not launched for some problems you have executable ready in ${EXE_DIR} directory
[2545]99#
[3294]100#  NOTE: the changed namelists are leaved in ${EXE_DIR} directory whereas original namelist remains in ${NEW_CONF}/EXP00
[2545]101#
[3294]102#  in ${SETTE_DIR} is created output.sette with the echo of executed commands
[2545]103#
104#  if sette.sh is stopped in output.sette there is written the last command executed by sette.sh
105#
106#  if you run: ./sette.sh 2>&1 | tee out.sette
107#
108#  in ${SETTE_DIR} out.sette is redirected standard error & standard output
109#
110#
[2500]111# EXAMPLES
112# ========
113#
114# ::
115#
116#  $ ./sette.sh
117#
118#
[2354]119# TODO
120# ====
121#
122# option debug
123#
124# EVOLUTIONS
125# ==========
126#
[2500]127# $Id$
[2354]128#
129#   * creation
[2500]130#
[2354]131#-
132#
[2716]133#-
134# Compiler among those in NEMOGCM/ARCH
[3422]135COMPILER=ifort_MERCATOR_CLUSTER
136export BATCH_COMMAND_PAR="qsub"
[3294]137export BATCH_COMMAND_SEQ=$BATCH_COMMAND_PAR
[3336]138export INTERACT_FLAG="no"
139export MPIRUN_FLAG="yes"
[2675]140
[3294]141
[2716]142# Directory to run the tests
143SETTE_DIR=$(cd $(dirname "$0"); pwd)
144MAIN_DIR=${SETTE_DIR%/SETTE}
145CONFIG_DIR=${MAIN_DIR}/CONFIG
146TOOLS_DIR=${MAIN_DIR}/TOOLS
147COMPIL_DIR=${TOOLS_DIR}/COMPILE
[2494]148
[2725]149CMP_NAM=${1:-$COMPILER}
[3294]150# Copy job_batch_COMPILER file for specific compiler into job_batch_template
151cd ${SETTE_DIR}
152cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[2354]153
[3422]154for config in 1 2 3 4 5 6 7 8
[2675]155do
[2354]156
[3294]157# TESTS FOR GYRE_LOBSTER CONFIGURATION
[2675]158if [ ${config} -eq 1 ] ;  then
[3294]159    ## Restartability tests for GYRE_LOBSTER
160    export TEST_NAME="LONG"
[2675]161    cd ${SETTE_DIR}
[3294]162    . ../CONFIG/makenemo -m ${CMP_NAM} -n GYRELOB_LONG -r GYRE_LOBSTER -j 8 
[2675]163    cd ${SETTE_DIR}
164    . param.cfg
165    . all_functions.sh
[3294]166    . prepare_exe_dir.sh
167    JOB_FILE=${EXE_DIR}/run_job.sh
168    NPROC=1
[3336]169    \rm $JOB_FILE
[3294]170    cd ${EXE_DIR}
[2675]171    set_namelist namelist cn_exp \"GYRELOB_LONG\"
172    set_namelist namelist nn_it000 1
173    set_namelist namelist nn_itend 120
174    set_namelist namelist nn_stock 60
[2716]175    set_namelist namelist ln_clobber .true.
[3294]176    set_namelist namelist nn_solv 2
177    set_namelist namelist_top ln_diatrc .false.
[2675]178    cd ${SETTE_DIR}
[3336]179    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]180    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
[3336]181    cd ${SETTE_DIR}
182    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG
[3294]183
[2754]184    cd ${SETTE_DIR}
[3294]185    export TEST_NAME="SHORT"
186    . prepare_exe_dir.sh
187    cd ${EXE_DIR}
[2675]188    set_namelist namelist cn_exp \"GYRELOB_SHORT\"
189    set_namelist namelist nn_it000 61
190    set_namelist namelist nn_itend 120
191    set_namelist namelist nn_stock 60
192    set_namelist namelist ln_rstart .true.
193    set_namelist namelist nn_rstctl 2
[2716]194    set_namelist namelist ln_clobber .true.
[3294]195    set_namelist namelist nn_solv 2
196    ln -s -f ..\/LONG\/GYRELOB_LONG_00000060_restart.nc
197    ln -s -f ..\/LONG\/GYRELOB_LONG_00000060_restart_trc.nc
198    set_namelist namelist cn_ocerst_in \"GYRELOB_LONG_00000060_restart\"
199    set_namelist namelist_top ln_diatrc .false.
[2675]200    set_namelist namelist_top ln_rsttr .true.
201    set_namelist namelist_top nn_rsttr 2
202    set_namelist namelist_top cn_trcrst_in \"GYRELOB_LONG_00000060_restart_trc\"
203    cd ${SETTE_DIR}
[3336]204    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]205    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
206    cd ${SETTE_DIR}
[3336]207    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[2675]208fi
209
210if [ ${config} -eq 2 ] ;  then
[3294]211    ## Reproducibility tests for GYRE_LOBSTER
212    export TEST_NAME="REPRO_1_4"
[2675]213    cd ${SETTE_DIR}
[3294]214    . ../CONFIG/makenemo -m ${CMP_NAM} -n GYRELOB_4 -r GYRE_LOBSTER -j 8 add_key "key_mpp_rep key_mpp_mpi"
[2675]215    cd ${SETTE_DIR}
216    . param.cfg
217    . all_functions.sh
[3294]218    . prepare_exe_dir.sh
219    JOB_FILE=${EXE_DIR}/run_job.sh
220    NPROC=4
[3336]221    \rm $JOB_FILE
[3294]222    cd ${EXE_DIR}
223    set_namelist namelist cn_exp \"GYRELOB_14\"
224    set_namelist namelist nn_it000 1
225    set_namelist namelist nn_itend 60
226    set_namelist namelist nn_fwb 0
227    set_namelist namelist nn_bench 0
228    set_namelist namelist ln_ctl .false.
229    set_namelist namelist ln_clobber .true.
230    set_namelist namelist nn_solv 2
231    set_namelist namelist_top ln_diatrc .false.
232    set_namelist namelist_top ln_trcdta .false.
233    set_namelist namelist jpni 1
234    set_namelist namelist jpnj 4
235    set_namelist namelist jpnij 4
236    cd ${SETTE_DIR}
[3336]237    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]238    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
239    cd ${SETTE_DIR}
[3336]240    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[3294]241
242    cd ${SETTE_DIR}
243    export TEST_NAME="REPRO_2_2"
244    . prepare_exe_dir.sh
245    JOB_FILE=${EXE_DIR}/run_job.sh
246    NPROC=4
[3336]247    \rm $JOB_FILE
[3294]248    cd ${EXE_DIR}
249    set_namelist namelist cn_exp \"GYRELOB_22\"
250    set_namelist namelist nn_it000 1
251    set_namelist namelist nn_itend 60
252    set_namelist namelist nn_fwb 0
253    set_namelist namelist ln_ctl .false.
254    set_namelist namelist ln_clobber .true.
255    set_namelist namelist nn_solv 2
256    set_namelist namelist_top ln_diatrc .false.
257    set_namelist namelist_top ln_trcdta .false.
258    set_namelist namelist jpni 2
259    set_namelist namelist jpnj 2
260    set_namelist namelist jpnij 4
261    cd ${SETTE_DIR}
[3336]262    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]263    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
264    cd ${SETTE_DIR}
[3336]265    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[3294]266fi
267
268# TESTS FOR ORCA2_LIM_PISCES CONFIGURATION
269if [ ${config} -eq 3 ] ;  then
270    ## Restartability tests for ORCA2_LIM_PISCES
271    export TEST_NAME="LONG"
272    cd ${SETTE_DIR}
273    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2LIMPIS_LONG -r ORCA2_LIM_PISCES -j 8
274    cd ${SETTE_DIR}
275    . param.cfg
276    . all_functions.sh
277    . prepare_exe_dir.sh
278    JOB_FILE=${EXE_DIR}/run_job.sh
279    NPROC=1
[3336]280    \rm $JOB_FILE
[3294]281    cd ${EXE_DIR}
[2675]282    set_namelist namelist cn_exp \"O2LP_LONG\"
283    set_namelist namelist nn_it000 1
284    set_namelist namelist nn_itend 150
285    set_namelist namelist nn_stock 75
[2716]286    set_namelist namelist ln_clobber .true.
[3294]287    set_namelist namelist nn_solv 2
288    set_namelist namelist_top ln_trcdta .false.
289    set_namelist namelist_top ln_diatrc .false.
290    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
[2675]291    # if not you need input files, and for tests is not necessary
[3294]292    set_namelist namelist_pisces ln_ironsed .false.
[2675]293    set_namelist namelist_pisces ln_river .false.
294    set_namelist namelist_pisces ln_ndepo .false.
[3294]295    set_namelist namelist_pisces ln_dust .false.
296    set_namelist namelist_pisces ln_presatm .false.
[2675]297    cd ${SETTE_DIR}
[3336]298    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
299    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE   
[2675]300    cd ${SETTE_DIR}
[3336]301    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
302#
[3294]303    export TEST_NAME="SHORT"
[3336]304    cd ${SETTE_DIR}
[3294]305    . prepare_exe_dir.sh
306    cd ${EXE_DIR}
[2675]307    set_namelist namelist cn_exp \"O2LP_SHORT\"
308    set_namelist namelist nn_it000 76
309    set_namelist namelist nn_itend 150
310    set_namelist namelist nn_stock 75
311    set_namelist namelist ln_rstart .true.
312    set_namelist namelist nn_rstctl 2
[2716]313    set_namelist namelist ln_clobber .true.
[3294]314    set_namelist namelist nn_solv 2
315    ln -s -f ../LONG/O2LP_LONG_00000075_restart.nc
316    ln -s -f ../LONG/O2LP_LONG_00000075_restart_ice.nc
317    ln -s -f ../LONG/O2LP_LONG_00000075_restart_trc.nc
318    set_namelist namelist cn_ocerst_in \"O2LP_LONG_00000075_restart\"
319    set_namelist namelist_ice cn_icerst_in \"O2LP_LONG_00000075_restart_ice\"
320    set_namelist namelist_top ln_diatrc .false.
[2675]321    set_namelist namelist_top ln_rsttr .true.
322    set_namelist namelist_top nn_rsttr 2
323    set_namelist namelist_top cn_trcrst_in \"O2LP_LONG_00000075_restart_trc\"
[3294]324    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
[2675]325    # if not you need input files, and for tests is not necessary
[3294]326    set_namelist namelist_pisces ln_ironsed .false.
[2675]327    set_namelist namelist_pisces ln_river .false.
328    set_namelist namelist_pisces ln_ndepo .false.
[3294]329    set_namelist namelist_pisces ln_dust .false.
330    set_namelist namelist_pisces ln_presatm .false.
[2675]331    cd ${SETTE_DIR}
[3336]332    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]333    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
334    cd ${SETTE_DIR}
[3336]335    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG 
[2675]336fi
337
[3294]338if [ ${config} -eq 4 ] ;  then
339    ## Reproducibility tests for ORCA2_LIM_PISCES
340    export TEST_NAME="REPRO_4_4"
[2675]341    cd ${SETTE_DIR}
[3294]342    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2LIMPIS_16 -r ORCA2_LIM_PISCES -j 8 add_key "key_mpp_rep key_mpp_mpi"
[2675]343    cd ${SETTE_DIR}
344    . param.cfg
345    . all_functions.sh
[3294]346    . prepare_exe_dir.sh
347    JOB_FILE=${EXE_DIR}/run_job.sh
348    NPROC=16
[3336]349    \rm $JOB_FILE
[3294]350    cd ${EXE_DIR}
[2675]351    set_namelist namelist nn_it000 1
[3294]352    set_namelist namelist nn_itend 75
353    set_namelist namelist nn_fwb 0
[2716]354    set_namelist namelist ln_clobber .true.
[3294]355    set_namelist namelist jpni 4
356    set_namelist namelist jpnj 4
357    set_namelist namelist jpnij 16
358    set_namelist namelist nn_solv 2
359    set_namelist namelist_top ln_trcdta .false.
360    set_namelist namelist_top ln_diatrc .false.
361    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
362    # if not you need input files, and for tests is not necessary
363    set_namelist namelist_pisces ln_ironsed .false.
364    set_namelist namelist_pisces ln_river .false.
365    set_namelist namelist_pisces ln_ndepo .false.
366    set_namelist namelist_pisces ln_dust .false.
367    set_namelist namelist_pisces ln_presatm .false.
[2675]368    cd ${SETTE_DIR}
[3336]369    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]370    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
[2675]371    cd ${SETTE_DIR}
[3336]372    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[3294]373
374    cd ${SETTE_DIR}
375    export TEST_NAME="REPRO_2_8"
376    . prepare_exe_dir.sh
377    JOB_FILE=${EXE_DIR}/run_job.sh
378    NPROC=16
[3336]379    \rm $JOB_FILE
[3294]380    cd ${EXE_DIR}
381    set_namelist namelist nn_it000 1
382    set_namelist namelist nn_itend 75
383    set_namelist namelist nn_fwb 0
[2716]384    set_namelist namelist ln_clobber .true.
[3294]385    set_namelist namelist jpni 2
386    set_namelist namelist jpnj 8
387    set_namelist namelist jpnij 16
388    set_namelist namelist nn_solv 2
389    set_namelist namelist_top ln_trcdta .false.
390    set_namelist namelist_top ln_diatrc .false.
391    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
392    # if not you need input files, and for tests is not necessary
393    set_namelist namelist_pisces ln_ironsed .false.
394    set_namelist namelist_pisces ln_river .false.
395    set_namelist namelist_pisces ln_ndepo .false.
396    set_namelist namelist_pisces ln_dust .false.
397    set_namelist namelist_pisces ln_presatm .false.
[2675]398    cd ${SETTE_DIR}
[3336]399    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]400    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
401    cd ${SETTE_DIR}
[3336]402    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG
[2675]403fi
404
[3294]405# TESTS FOR ORCA2_OFF_PISCES CONFIGURATION
406if [ ${config} -eq 5 ] ;  then
407    ## Restartability tests for ORCA2_OFF_PISCES
408    export TEST_NAME="LONG"
[2675]409    cd ${SETTE_DIR}
[3294]410    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_LONG -r ORCA2_OFF_PISCES -j 8
[2675]411    cd ${SETTE_DIR}
412    . param.cfg
413    . all_functions.sh
[3294]414    . prepare_exe_dir.sh
415    JOB_FILE=${EXE_DIR}/run_job.sh
416    NPROC=1
[3336]417    \rm $JOB_FILE
[3294]418    cd ${EXE_DIR}
419    set_namelist namelist cn_exp \"OFFP_LONG\"
[2675]420    set_namelist namelist nn_it000 1
[3294]421    set_namelist namelist nn_itend 40
422    set_namelist namelist nn_stock 20
[2716]423    set_namelist namelist ln_clobber .true.
[3294]424    set_namelist namelist_top ln_trcdta .false.
425    set_namelist namelist_top ln_diatrc .false.
426    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
427    # if not you need input files, and for tests is not necessary
428    set_namelist namelist_pisces ln_ironsed .false.
429    set_namelist namelist_pisces ln_river .false.
430    set_namelist namelist_pisces ln_ndepo .false.
431    set_namelist namelist_pisces ln_dust .false.
432    set_namelist namelist_pisces ln_presatm .false.
[2675]433    cd ${SETTE_DIR}
[3336]434   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]435    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
[2675]436   
437    cd ${SETTE_DIR}
[3294]438    export TEST_NAME="SHORT"
439    . prepare_exe_dir.sh
440    cd ${EXE_DIR}
441    set_namelist namelist cn_exp \"OFFP_SHORT\"
442    set_namelist namelist nn_it000 21
443    set_namelist namelist nn_itend 40
444    set_namelist namelist nn_stock 20
[2716]445    set_namelist namelist ln_clobber .true.
[3294]446    ln -s ../LONG/OFFP_LONG_00000020_restart_trc.nc .
447    set_namelist namelist_top ln_diatrc .false.
448    set_namelist namelist_top ln_rsttr .true.
449    set_namelist namelist_top nn_rsttr 2
450    set_namelist namelist_top cn_trcrst_in \"OFFP_LONG_00000020_restart_trc\"
451    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
452    # if not you need input files, and for tests is not necessary
453    set_namelist namelist_pisces ln_ironsed .false.
454    set_namelist namelist_pisces ln_river .false.
455    set_namelist namelist_pisces ln_ndepo .false.
456    set_namelist namelist_pisces ln_dust .false.
457    set_namelist namelist_pisces ln_presatm .false.
[2675]458    cd ${SETTE_DIR}
[3336]459   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]460    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
461    cd ${SETTE_DIR}
[3336]462    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[2675]463fi
464
[3294]465if [ ${config} -eq 6 ] ;  then
466    ## Reproducibility tests for ORCA2_OFF_PISCES
467    export TEST_NAME="REPRO_4_4"
[2675]468    cd ${SETTE_DIR}
[3294]469    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_16 -r ORCA2_OFF_PISCES -j 8 add_key "key_mpp_rep key_mpp_mpi"
[2675]470    cd ${SETTE_DIR}
471    . param.cfg
472    . all_functions.sh
[3294]473    . prepare_exe_dir.sh
474    JOB_FILE=${EXE_DIR}/run_job.sh
475    NPROC=16
[3336]476    \rm $JOB_FILE
[3294]477    cd ${EXE_DIR}
[2675]478    set_namelist namelist nn_it000 1
[3294]479    set_namelist namelist nn_itend 40
[2716]480    set_namelist namelist ln_clobber .true.
481    set_namelist namelist jpni 4
482    set_namelist namelist jpnj 4
[3294]483    set_namelist namelist jpnij 16
484    set_namelist namelist_top ln_trcdta .false.
485    set_namelist namelist_top ln_diatrc .false.
486    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
[2675]487    # if not you need input files, and for tests is not necessary
[3294]488    set_namelist namelist_pisces ln_ironsed .false.
[2675]489    set_namelist namelist_pisces ln_river .false.
490    set_namelist namelist_pisces ln_ndepo .false.
[3294]491    set_namelist namelist_pisces ln_dust .false.
492    set_namelist namelist_pisces ln_presatm .false.
[2675]493    cd ${SETTE_DIR}
[3336]494   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]495    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
[2675]496    cd ${SETTE_DIR}
[3336]497    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[3294]498
499    cd ${SETTE_DIR}
500    export TEST_NAME="REPRO_2_8"
501    . prepare_exe_dir.sh
502    JOB_FILE=${EXE_DIR}/run_job.sh
503    NPROC=16
[3336]504    \rm $JOB_FILE
[3294]505    cd ${EXE_DIR}
[2675]506    set_namelist namelist nn_it000 1
[3294]507    set_namelist namelist nn_itend 40
[2716]508    set_namelist namelist ln_clobber .true.
509    set_namelist namelist jpni 2
510    set_namelist namelist jpnj 8
511    set_namelist namelist jpnij 16
[3294]512    set_namelist namelist_top ln_trcdta .false.
513    set_namelist namelist_top ln_diatrc .false.
514    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
[2675]515    # if not you need input files, and for tests is not necessary
[3294]516    set_namelist namelist_pisces ln_ironsed .false.
[2675]517    set_namelist namelist_pisces ln_river .false.
518    set_namelist namelist_pisces ln_ndepo .false.
[3294]519    set_namelist namelist_pisces ln_dust .false.
520    set_namelist namelist_pisces ln_presatm .false.
[2675]521    cd ${SETTE_DIR}
[3336]522   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]523    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
524    cd ${SETTE_DIR}
[3336]525    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[2675]526fi
527
[3294]528# TESTS FOR AMM12 CONFIGURATION
529if [ ${config} -eq 7 ] ;  then
530    ## Reproducibility tests for AMM12
531    export TEST_NAME="REPRO_8_4"
[2675]532    cd ${SETTE_DIR}
[3294]533    . ../CONFIG/makenemo -m ${CMP_NAM} -n AMM12_32 -r AMM12 -j 8 add_key "key_mpp_rep"
[2675]534    cd ${SETTE_DIR}
535    . param.cfg
536    . all_functions.sh
[3294]537    . prepare_exe_dir.sh
538    JOB_FILE=${EXE_DIR}/run_job.sh
539    NPROC=32
[3336]540    \rm $JOB_FILE
[3294]541    cd ${EXE_DIR}
[2675]542    set_namelist namelist nn_it000 1
[3294]543    set_namelist namelist nn_itend 576
[2675]544    set_namelist namelist nn_fwb 0
545    set_namelist namelist ln_ctl .false.
[2716]546    set_namelist namelist ln_clobber .true.
[3294]547    set_namelist namelist nn_dyn2d 2
548    set_namelist namelist nn_tra_dta 0
549    set_namelist namelist jpni 8
[2716]550    set_namelist namelist jpnj 4
[3294]551    set_namelist namelist jpnij 32
[2675]552    cd ${SETTE_DIR}
[3336]553   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]554    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
[2675]555    cd ${SETTE_DIR}
[3336]556    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG 
[3294]557
558    cd ${SETTE_DIR}
559    export TEST_NAME="REPRO_4_8"
560    . prepare_exe_dir.sh
561    JOB_FILE=${EXE_DIR}/run_job.sh
562    NPROC=32
[3336]563    \rm $JOB_FILE
[3294]564    cd ${EXE_DIR}
[2675]565    set_namelist namelist nn_it000 1
[3294]566    set_namelist namelist nn_itend 576
[2675]567    set_namelist namelist nn_fwb 0
568    set_namelist namelist ln_ctl .false.
[3294]569    set_namelist namelist nn_dyn2d 2
570    set_namelist namelist nn_tra_dta 0
[2716]571    set_namelist namelist ln_clobber .true.
[3294]572    set_namelist namelist jpni 4
573    set_namelist namelist jpnj 8
574    set_namelist namelist jpnij 32
[2675]575    cd ${SETTE_DIR}
[3336]576   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]577    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
578    cd ${SETTE_DIR}
[3336]579    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG
[2675]580fi
581
[3294]582if [ ${config} -eq 8 ] ;  then
583    ## Restartability tests for AMM12
584    export TEST_NAME="LONG"
[2732]585    cd ${SETTE_DIR}
[3294]586    . ../CONFIG/makenemo -m ${CMP_NAM} -n AMM12_LONG -r AMM12 -j 8 add_key "key_mpp_rep"
[2732]587    cd ${SETTE_DIR}
588    . param.cfg
589    . all_functions.sh
[3294]590    . prepare_exe_dir.sh
591    JOB_FILE=${EXE_DIR}/run_job.sh
592    NPROC=32
[3336]593    \rm $JOB_FILE
[3294]594    cd ${EXE_DIR}
[2732]595    set_namelist namelist nn_it000 1
[3294]596    set_namelist namelist nn_itend 12
597    set_namelist namelist nn_stock 6
598    set_namelist namelist nn_fwb 0
[2732]599    set_namelist namelist ln_ctl .false.
600    set_namelist namelist ln_clobber .true.
[3294]601    set_namelist namelist nn_dyn2d 2
602    set_namelist namelist nn_tra_dta 0
603    set_namelist namelist jpni 8
604    set_namelist namelist jpnj 4
605    set_namelist namelist jpnij 32
[2732]606    cd ${SETTE_DIR}
[3336]607   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]608    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
[3336]609    cd ${SETTE_DIR}
610    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[3294]611
612    cd ${SETTE_DIR}
613    export TEST_NAME="SHORT"
614    . prepare_exe_dir.sh
615    cd ${EXE_DIR}
616    set_namelist namelist nn_it000 7
617    set_namelist namelist nn_itend 12
618    set_namelist namelist nn_fwb 0
619    set_namelist namelist ln_ctl .false.
620    set_namelist namelist ln_clobber .true.
621    set_namelist namelist nn_dyn2d 2
622    set_namelist namelist nn_tra_dta 0
623    set_namelist namelist jpni 8
624    set_namelist namelist jpnj 4
625    set_namelist namelist jpnij 32
626    set_namelist namelist ln_rstart .true.
627    set_namelist namelist nn_rstctl 2
628    set_namelist namelist cn_ocerst_in \"../LONG/AMM12_00000006_restart\"
629    cd ${SETTE_DIR}
[3336]630   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]631    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
632    cd ${SETTE_DIR}
[3336]633    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG 
[2732]634fi
635
[3294]636# TEST FOR ORCA2_LIM_AGRIF : simple test of running AGRIF (no restartability neither reproducibility tests)
637if [ ${config} -eq 9 ] ;  then
[2732]638    ## ORCA2_LIM with Agulhas AGRIF zoom in MPI
[3294]639    export TEST_NAME="SHORT"
[2732]640    cd ${SETTE_DIR}
[3294]641    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2AGUL_1_2 -r ORCA2_LIM -j 8 add_key "key_mpp_rep key_mpp_mpi key_agrif" del_key "key_zdftmx"
[2732]642    cd ${SETTE_DIR}
643    . param.cfg
644    . all_functions.sh
[3294]645    . prepare_exe_dir.sh
646    JOB_FILE=${EXE_DIR}/run_job.sh
647    NPROC=2
[3336]648    \rm $JOB_FILE
[3294]649    cd ${EXE_DIR}
[2732]650    set_namelist namelist nn_it000 1
651    set_namelist namelist nn_itend 75
652    set_namelist namelist ln_ctl .false.
653    set_namelist namelist ln_clobber .true.
654    set_namelist namelist jpni 1
655    set_namelist namelist jpnj 2
[3294]656    set_namelist namelist jpnij 2
[2732]657    set_namelist 1_namelist nn_it000 1
658    set_namelist 1_namelist nn_itend 150
659    set_namelist 1_namelist ln_ctl .false.
660    set_namelist 1_namelist ln_clobber .true.
661    cd ${SETTE_DIR}
[3336]662   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
[3294]663    . ./prepare_job.sh input_ORCA2_LIM_AGRIF.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
664    cd ${SETTE_DIR}
[3336]665    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
[2732]666fi
667
[2675]668done
Note: See TracBrowser for help on using the repository browser.