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_test-cases.sh in utils/CI/sette_MPI3_LoopFusion – NEMO

source: utils/CI/sette_MPI3_LoopFusion/sette_test-cases.sh @ 13943

Last change on this file since 13943 was 13943, checked in by francesca, 4 years ago

Added key_mpi3 and key_loop_fusion in sette to activate/deactivate the use of MPI3 and loop fusion

  • Property svn:executable set to *
File size: 34.4 KB
Line 
1#!/bin/bash
2############################################################
3# Author : Simona Flavoni for NEMO
4# Contact: sflod@locean-ipsl.upmc.fr
5#
6# sette_test-cases.sh   : principal script of SET TEsts for NEMO (SETTE)
7#                       : this script : compiles, run and tests TEST_CASES
8#
9#                       : TO DO: test if nitend is equal to end of run.stat
10# ----------------------------------------------------------------------
11# NEMO/SETTE , NEMO Consortium (2018)
12# Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
13# ----------------------------------------------------------------------
14#
15#############################################################
16#set -vx
17set -o posix
18#set -u
19#set -e
20# ===========
21# DESCRIPTION
22# ===========
23#
24# Variables to be checked by user:
25#
26# COMPILER          : name of compiler as defined in NEMOGCM/ARCH directory
27# BATCH_COMMAND_PAR :  name of the command for submitting parallel batch jobs
28# BATCH_COMMAND_SEQ :  name of the command for submitting sequential batch jobs 
29# INTERACT_FLAG     : flag to run in interactive mode "yes"
30#                           to run in batch mode "no"
31# MPIRUN_FLAG       : flag to run in parallel (MPI) "yes"
32#                           to run in sequential mode (NB_PROC = 1) "no"
33# USING_XIOS        : flag to control the activation of key_iomput
34#                      "yes" to compile using key_iomput and link to the external XIOS library
35#                      "no"  to compile without key_iomput and link to the old IOIPSL library
36# USING_MPMD        : flag to control the use of stand-alone IO servers
37#                     requires USING_XIOS="yes"
38#                      "yes" to run in MPMD (detached) mode with stand-alone IO servers
39#                      "no"  to run in SPMD (attached) mode without separate IO servers
40# NUM_XIOSERVERS    : number of stand-alone IO servers to employ
41#                     set to zero if USING_MPMD="no"
42# USING_MPI3        : flag to control the activation of key_mpi3
43#                     "yes" to use the MPI3 neighbourhood collectives for halo exchange
44#                     "no" to use standard point-to-point communications for halo exchange
45# USING_LOOP_FUSION : flag to control the activation of key_loop_fusion
46#                     "yes" to use the loop fusion adv routines when halo = 2
47#                     "no" to use standard adv routines
48#
49# Principal script is sette_test-cases.sh, that calls
50#
51#  makenemo  : to create successive exectuables in ${CONFIG_NAME}/BLD/bin/nemo.exe
52#              and links to nemo in ${CONFIG_NAME}/EXP00)
53#
54#  param.cfg : sets and loads following directories:
55#              This will have been run by the parent sette.sh and values exported here
56#
57#   FORCING_DIR         : is the directory for forcing files (tarfile)
58#   INPUT_DIR           : is the directory for input files storing
59#   TMPDIR              : is the temporary directory (if needed)
60#   NEMO_VALIDATION_DIR : is the validation directory
61#
62#   (NOTE: this file is the same for all configrations to be tested with sette_test-cases.sh)
63#
64#   all_functions.sh : loads functions used by sette (note: new functions can be added here)
65#   set_namelist     : function declared in all_functions that sets namelist parameters
66#   post_test_tidyup : creates validation storage directory and copies required output files
67#                      (run.stat and ocean.output) in it after execution of test.
68#
69#  VALIDATION tree is:
70#
71#   NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
72#
73#  prepare_exe_dir.sh : defines and creates directory where the test is executed
74#                       execution directory takes name of TEST_NAME defined for every test
75#                       in sette_test-cases.sh. (each test in executed in its own directory)
76#
77#  set_valid_dir       : rename ocean.output/run.stat and tracer.stat to avoid checking them in the report
78#
79#  clean_valid_dir    : rename ocean.output/run.stat and tracer.stat to avoid checking them in the report
80#                       ( not doing it could lead to false positive )
81#
82#  prepare_job.sh     : to generate the script run_job.sh
83#
84#  fcm_job.sh         : run in batch (INTERACT_FLAG="no") or interactive (INTERACT_FLAG="yes")
85#                        see sette_test-cases.sh and BATCH_TEMPLATE directory
86#
87#  NOTE: jobs requiring initial or forcing data need to have an input_CONFIG.cfg in which
88#        can be found paths to the input tar file)
89#  NOTE: if job is not launched for any reason you have the executable ready in ${EXE_DIR}
90#        directory
91#  NOTE: the changed namelists are left in ${EXE_DIR} directory whereas original namelists
92#        remain in ${NEW_CONF}/EXP00
93#
94#  NOTE: a log file, output.sette, is created in ${SETTE_DIR} with the echoes of
95#        executed commands
96#
97#  NOTE: if sette_test-cases.sh is stopped in output.sette there is written the last command
98#        executed by sette_test-cases.sh
99#
100# example use: ./sette_test-cases.sh
101#########################################################################################
102#
103# LOAD param value
104SETTE_DIR=$(cd $(dirname "$0"); pwd)
105MAIN_DIR=$(dirname $SETTE_DIR)
106
107export BATCH_COMMAND_PAR=${BATCH_CMD}
108export BATCH_COMMAND_SEQ=${BATCH_CMD}
109export INTERACT_FLAG="no"
110export MPIRUN_FLAG="yes"
111#
112export ADD_KEYS=""
113export DEL_KEYS=""
114if [ ${USING_XIOS} == "yes" ] 
115 then
116   export ADD_KEYS="${ADD_KEYS} key_iomput"
117 else
118   export DEL_KEYS="${DEL_KEYS} key_iomput"
119fi
120#
121if [ ${ADD_NOSIGNEDZERO} == "yes" ]
122 then
123   export ADD_KEYS="${ADD_KEYS} key_nosignedzero"
124 else
125   export DEL_KEYS="${DEL_KEYS} key_nosignedzero" 
126fi
127#
128if [ ${USING_MPI3} == "yes" ]
129 then
130   export ADD_KEYS="${ADD_KEYS} key_mpi3"
131fi
132#
133if [ ${USING_LOOP_FUSION} == "yes" ]
134 then
135   export ADD_KEYS="${ADD_KEYS} key_loop_fusion"
136fi
137# Settings which control the use of stand alone servers (only relevant if using xios)
138#
139export NUM_XIOSERVERS=4
140export JOB_PREFIX=${JOB_PREFIX_MPMD}
141#
142if [ ${USING_MPMD} == "no" ] 
143 then
144   export NUM_XIOSERVERS=0
145   export JOB_PREFIX=${JOB_PREFIX_NOMPMD}
146fi
147#
148#
149if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no" ]
150 then
151   echo "Incompatible choices. MPMD mode requires the XIOS server"
152   exit
153fi
154
155# Directory to run the tests
156CONFIG_DIR0=${MAIN_DIR}/cfgs
157TOOLS_DIR=${MAIN_DIR}/tools
158
159CMP_NAM=${1:-$COMPILER}
160# Copy job_batch_COMPILER file for specific compiler into job_batch_template
161cd ${SETTE_DIR}
162cp BATCH_TEMPLATE/${JOB_PREFIX}-${COMPILER} job_batch_template || exit
163# Description of configuration tested:
164# OVERFLOW       : TEST s-coordinates : (tracers) Advection schemes: FCT2, FCT4, ubs
165#                                     & (dynamics) advection schemes: flux form (ubs, centered), vector form (een)
166#                       zps-coordinates : (tracers) Advection schemes: FCT2, FCT4, ubs
167#                                     & (dynamics) advection schemes: flux form (ubs, centered), vector form (een, and een + Hollingsworth correction)
168# LOCK_EXCHANGE  :
169# VORTEX         :
170# ICE_AGRIF      :
171# ISOMIP+         :
172# WAD
173
174for config in ${TEST_CONFIGS[@]}
175do
176
177# ---------
178#  OVERFLOW
179# ---------
180if [ ${config} == "OVERFLOW" ] && [ ${DO_RESTART} == "1" ] ;  then
181    ## Restartability tests for OVERFLOW
182    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
183    then
184   ITEND=12
185    else
186   ITEND=120
187    fi
188    ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) )
189    export TEST_NAME="LONG"
190    cd ${MAIN_DIR}
191    #
192    . ${SETTE_DIR}/all_functions.sh
193    #
194    clean_config OVERFLOW OVERFLOW_ST 'tests'
195    #
196    sync_config  OVERFLOW OVERFLOW_ST 'tests'
197    #
198    . ./makenemo -m ${CMP_NAM} -n OVERFLOW_ST -a OVERFLOW -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}"
199    cd ${SETTE_DIR}
200    . ./param.cfg
201    . ./all_functions.sh
202    . ./prepare_exe_dir.sh
203    set_valid_dir
204    clean_valid_dir
205    JOB_FILE=${EXE_DIR}/run_job.sh
206    NPROC=1
207    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
208    cd ${EXE_DIR} 
209    set_namelist namelist_cfg cn_exp \"OVF_LONG\"
210    set_namelist namelist_cfg nn_it000 1
211    set_namelist namelist_cfg nn_itend ${ITEND}
212    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
213    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
214    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
215    if [ ${USING_MPMD} == "yes" ] ; then
216       set_xio_using_server iodef.xml true
217    else
218       set_xio_using_server iodef.xml false
219    fi
220    cd ${SETTE_DIR}
221    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
222
223    cd ${SETTE_DIR}
224    export TEST_NAME="SHORT"
225    . ./prepare_exe_dir.sh
226    set_valid_dir
227    clean_valid_dir
228    cd ${EXE_DIR}
229    set_namelist namelist_cfg cn_exp \"OVF_SHORT\"
230    set_namelist namelist_cfg nn_it000 $(( ${ITEND} / 2 + 1 ))
231    set_namelist namelist_cfg nn_itend ${ITEND}
232    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
233    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
234    set_namelist namelist_cfg ln_rstart .true.
235    set_namelist namelist_cfg nn_rstctl 2
236    set_namelist namelist_cfg cn_ocerst_in \"OVF_LONG_${ITRST}_restart\"
237    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
238    if [ ${USING_MPMD} == "yes" ] ; then
239       set_xio_using_server iodef.xml true
240    else
241       set_xio_using_server iodef.xml false
242    fi
243    ln -sf ../LONG/OVF_LONG_${ITRST}_restart.nc .
244
245    cd ${SETTE_DIR}
246    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
247    cd ${SETTE_DIR}
248    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
249
250
251fi
252
253if [ ${config} == "OVERFLOW" ] && [ ${DO_PHYOPTS} == "1" ] ;  then
254    ## Test for all advection, vert. coordinates, vector form, flux form: test runability and complete all time steps
255    ## Needed namelist-xxxx for every type of run tested
256    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
257    then
258   ITEND=12
259    else
260   ITEND=6120
261    fi
262    cd ${CONFIG_DIR}/${NEW_CONF}/EXP00
263
264    for file in $(echo `ls namelist_*_cfg `) ; do
265        TEST_NAME=`echo $file | sed -e "s/namelist_//" | sed -e "s/_cfg//"`
266        TEST_NAME="EXP-${TEST_NAME}"
267        if [ ! -d ${CONFIG_DIR}/${NEW_CONF}/${TEST_NAME} ] ; then mkdir ${CONFIG_DIR}/${NEW_CONF}/${TEST_NAME} ; fi
268        export TEST_NAME="${TEST_NAME}"
269         ##
270        cd ${SETTE_DIR}
271        . ./param.cfg
272        . ./all_functions.sh
273        . ./prepare_exe_dir.sh
274        set_valid_dir
275        clean_valid_dir
276        JOB_FILE=${EXE_DIR}/run_job.sh
277        NPROC=1
278        if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
279        cd ${EXE_DIR}
280        rm namelist_*_*_*_*
281        cp -pL ${CONFIG_DIR}/${NEW_CONF}/EXP00/$file namelist_cfg
282   set_namelist namelist_cfg nn_it000 1
283   set_namelist namelist_cfg nn_itend ${ITEND}
284        if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
285        if [ ${USING_MPMD} == "yes" ] ; then
286           set_xio_using_server iodef.xml true
287        else
288           set_xio_using_server iodef.xml false
289        fi
290        cd ${SETTE_DIR}
291        . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
292        cd ${SETTE_DIR}
293        . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
294       ##
295     done
296fi
297
298# --------------
299#  LOCK_EXCHANGE
300# --------------
301if [ ${config} == "LOCK_EXCHANGE" ] && [ ${DO_RESTART} == "1" ] ;  then
302    ## Restartability tests for LOCK_EXCHANGE
303    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
304    then
305   ITEND=12
306    else
307   ITEND=120
308    fi
309    ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) )
310    export TEST_NAME="LONG"
311    cd ${MAIN_DIR}
312    #
313    # syncronisation if target directory/file exist (not done by makenemo)
314    . ${SETTE_DIR}/all_functions.sh
315    #
316    clean_config LOCK_EXCHANGE LOCK_EXCHANGE_ST 'tests'
317    #
318    sync_config  LOCK_EXCHANGE LOCK_EXCHANGE_ST 'tests'
319    #
320    . ./makenemo -m ${CMP_NAM} -n LOCK_EXCHANGE_ST -a LOCK_EXCHANGE -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}"
321    cd ${SETTE_DIR}
322    . ./param.cfg
323    . ./all_functions.sh
324    . ./prepare_exe_dir.sh
325    set_valid_dir
326    clean_valid_dir
327    JOB_FILE=${EXE_DIR}/run_job.sh
328    NPROC=1
329    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
330    cd ${EXE_DIR}
331    set_namelist namelist_cfg cn_exp \"LOCK_LONG\"
332    set_namelist namelist_cfg nn_it000 1
333    set_namelist namelist_cfg nn_itend ${ITEND}
334    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
335    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
336    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
337    if [ ${USING_MPMD} == "yes" ] ; then
338       set_xio_using_server iodef.xml true
339    else
340       set_xio_using_server iodef.xml false
341    fi
342    cd ${SETTE_DIR}
343    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
344
345    cd ${SETTE_DIR}
346    export TEST_NAME="SHORT"
347    . ./prepare_exe_dir.sh
348    set_valid_dir
349    clean_valid_dir
350    cd ${EXE_DIR}
351    set_namelist namelist_cfg cn_exp \"LOCK_SHORT\"
352    set_namelist namelist_cfg nn_it000 $(( ${ITEND} / 2 + 1 ))
353    set_namelist namelist_cfg nn_itend ${ITEND}
354    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
355    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
356    set_namelist namelist_cfg ln_rstart .true.
357    set_namelist namelist_cfg nn_rstctl 2
358    set_namelist namelist_cfg cn_ocerst_in \"LOCK_LONG_${ITRST}_restart\"
359    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
360    if [ ${USING_MPMD} == "yes" ] ; then
361       set_xio_using_server iodef.xml true
362    else
363       set_xio_using_server iodef.xml false
364    fi
365    ln -sf ../LONG/LOCK_LONG_${ITRST}_restart.nc .
366
367    cd ${SETTE_DIR}
368    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
369    cd ${SETTE_DIR}
370    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
371
372fi
373
374if [ ${config} == "LOCK_EXCHANGE" ] && [ ${DO_PHYOPTS} == "1" ] ;  then
375    ## Test for all advection, vector form, flux form: test runability and complete all time steps
376    ## Needed namelist-xxxx for every type of run tested
377    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
378    then
379   ITEND=12
380    else
381   ITEND=61200
382    fi
383    cd ${CONFIG_DIR}/${NEW_CONF}/EXP00
384
385    for file in $(echo `ls namelist_*_cfg `) ; do
386        echo ''
387        TEST_NAME=`echo $file | sed -e "s/namelist_//" | sed -e "s/_cfg//"`
388        TEST_NAME="EXP-${TEST_NAME}"
389        `mkdir ${CONFIG_DIR}/${NEW_CONF}/${TEST_NAME}`
390        export TEST_NAME="${TEST_NAME}"
391        ## 
392        cd ${SETTE_DIR}
393        . ./param.cfg
394        . ./all_functions.sh
395        . ./prepare_exe_dir.sh
396        set_valid_dir
397        clean_valid_dir
398        JOB_FILE=${EXE_DIR}/run_job.sh
399        NPROC=1
400        if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
401        cd ${EXE_DIR}
402        rm namelist_*_*_*_*
403        cp -pL ${CONFIG_DIR}/${NEW_CONF}/EXP00/$file namelist_cfg
404        if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
405   set_namelist namelist_cfg nn_it000 1
406        set_namelist namelist_cfg nn_itend ${ITEND}
407        if [ ${USING_MPMD} == "yes" ] ; then
408           set_xio_using_server iodef.xml true
409        else
410           set_xio_using_server iodef.xml false
411        fi
412        cd ${SETTE_DIR}
413        . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
414        cd ${SETTE_DIR}
415        . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
416        ##
417        echo ''
418   done
419fi
420
421# ---------
422# VORTEX
423# ---------
424if [ ${config} == "VORTEX" ] && [ ${DO_RESTART} == "1" ] ;  then
425## Restartability tests for VORTEX
426    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
427    then
428   ITEND=12
429    else
430   ITEND=240
431    fi
432    ITRST=$(   printf "%08d" $(( ${ITEND} / 2 )) )
433    ITRST_1=$( printf "%08d" $(( ${ITEND} * 3 / 2 )) )
434    export TEST_NAME="LONG"
435    cd ${MAIN_DIR}
436    #
437    # syncronisation if target directory/file exist (not done by makenemo)
438    . ${SETTE_DIR}/all_functions.sh
439    #
440    clean_config VORTEX VORTEX_ST 'tests'
441    #
442    sync_config  VORTEX VORTEX_ST 'tests'
443    #
444    . ./makenemo -m ${CMP_NAM} -n VORTEX_ST -a VORTEX -j 8  add_key "${ADD_KEYS}" del_key "${DEL_KEYS}"
445    cd ${SETTE_DIR}
446    . ./param.cfg
447    . ./all_functions.sh
448    . ./prepare_exe_dir.sh
449    set_valid_dir
450    clean_valid_dir
451    JOB_FILE=${EXE_DIR}/run_job.sh
452    NPROC=6
453    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
454    cd ${EXE_DIR}
455    set_namelist namelist_cfg cn_exp \"VORTEX_LONG\"
456    set_namelist namelist_cfg nn_it000 1
457    set_namelist namelist_cfg nn_itend ${ITEND}
458    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
459    set_namelist namelist_cfg sn_cfctl%l_runstat .true. 
460
461    set_namelist 1_namelist_cfg cn_exp \"VORTEX_LONG\"
462    set_namelist 1_namelist_cfg nn_it000 1
463    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
464    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 ))
465    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
466   
467    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
468    if [ ${USING_MPMD} == "yes" ] ; then
469        set_xio_using_server iodef.xml true
470    else
471        set_xio_using_server iodef.xml false
472    fi
473    cd ${SETTE_DIR}
474    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
475   
476    cd ${SETTE_DIR}
477    export TEST_NAME="SHORT"
478    . ./prepare_exe_dir.sh
479    set_valid_dir
480    clean_valid_dir
481    cd ${EXE_DIR}
482    set_namelist namelist_cfg cn_exp \"VORTEX_SHORT\"
483    set_namelist namelist_cfg nn_it000 $(( ${ITEND} / 2 + 1 ))
484    set_namelist namelist_cfg nn_itend ${ITEND}
485    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
486    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
487    set_namelist namelist_cfg ln_rstart .true.
488    set_namelist namelist_cfg nn_rstctl 2
489    set_namelist namelist_cfg cn_ocerst_in \"VORTEX_LONG_${ITRST}_restart\"
490   
491    set_namelist 1_namelist_cfg cn_exp \"VORTEX_SHORT\"
492    set_namelist 1_namelist_cfg nn_it000 $(( ${ITEND} * 3 / 2 + 1 ))
493    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
494    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 ))
495    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
496    set_namelist 1_namelist_cfg ln_rstart .true.
497    set_namelist 1_namelist_cfg nn_rstctl 2
498    set_namelist 1_namelist_cfg cn_ocerst_in \"VORTEX_LONG_${ITRST_1}_restart\"
499     
500    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
501    if [ ${USING_MPMD} == "yes" ] ; then
502        set_xio_using_server iodef.xml true
503    else
504        set_xio_using_server iodef.xml false
505    fi
506    if [ $NPROC -eq 1 ] ;  then
507        ln -sf ../LONG/VORTEX_LONG_${ITRST}_restart.nc .
508        ln -sf ../LONG/1_VORTEX_LONG_${ITRST_1}_restart.nc .
509    else
510        for (( i=1; i<=$NPROC; i++)) ; do
511            L_NPROC=$(( $i - 1 ))
512            L_NPROC=`printf "%04d\n" ${L_NPROC}`
513            ln -sf ../LONG/VORTEX_LONG_${ITRST}_restart_${L_NPROC}.nc .
514            ln -sf ../LONG/1_VORTEX_LONG_${ITRST_1}_restart_${L_NPROC}.nc .
515        done
516    fi
517    cd ${SETTE_DIR}
518    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
519    cd ${SETTE_DIR}
520    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
521fi
522
523if [ ${config} == "VORTEX" ] && [ ${DO_REPRO} == "1" ] ;  then
524
525## Reproducibility tests for VORTEX
526    export TEST_NAME="REPRO_2_3"
527    cd ${MAIN_DIR}
528    cd ${SETTE_DIR}
529    . ./param.cfg
530    . ./all_functions.sh
531    . ./prepare_exe_dir.sh
532    set_valid_dir
533    clean_valid_dir
534    JOB_FILE=${EXE_DIR}/run_job.sh
535    NPROC=6
536    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
537    cd ${EXE_DIR}
538    set_namelist namelist_cfg cn_exp \"VORTEX_23\"
539    set_namelist namelist_cfg nn_it000 1
540    set_namelist namelist_cfg nn_itend ${ITEND}
541    set_namelist namelist_cfg nn_stock ${ITEND}
542    set_namelist namelist_cfg jpni 2
543    set_namelist namelist_cfg jpnj 3
544    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
545   
546    set_namelist 1_namelist_cfg cn_exp \"VORTEX_23\"
547    set_namelist 1_namelist_cfg nn_it000 1
548    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
549    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 ))
550    set_namelist 1_namelist_cfg jpni 2
551    set_namelist 1_namelist_cfg jpnj 3
552    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
553
554    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
555    if [ ${USING_MPMD} == "yes" ] ; then
556       set_xio_using_server iodef.xml true
557    else
558       set_xio_using_server iodef.xml false
559    fi
560    cd ${SETTE_DIR}
561    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
562    cd ${SETTE_DIR}
563    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
564
565    cd ${SETTE_DIR}
566    export TEST_NAME="REPRO_3_2"
567    . ./prepare_exe_dir.sh
568    set_valid_dir
569    clean_valid_dir
570    JOB_FILE=${EXE_DIR}/run_job.sh
571    NPROC=6
572    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
573    cd ${EXE_DIR}
574
575    set_namelist namelist_cfg cn_exp \"VORTEX_32\"
576    set_namelist namelist_cfg nn_it000 1
577    set_namelist namelist_cfg nn_itend ${ITEND}
578    set_namelist namelist_cfg nn_stock ${ITEND}
579    set_namelist namelist_cfg jpni 3
580    set_namelist namelist_cfg jpnj 2
581    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
582
583    set_namelist 1_namelist_cfg cn_exp \"VORTEX_32\"
584    set_namelist 1_namelist_cfg nn_it000 1
585    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
586    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 ))
587    set_namelist 1_namelist_cfg jpni 3
588    set_namelist 1_namelist_cfg jpnj 2
589    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
590
591    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
592    if [ ${USING_MPMD} == "yes" ] ; then
593       set_xio_using_server iodef.xml true
594    else
595       set_xio_using_server iodef.xml false
596    fi
597    cd ${SETTE_DIR}
598    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
599    cd ${SETTE_DIR}
600    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
601
602fi
603
604
605# ---------
606# ICE_AGRIF
607# ---------
608if [ ${config} == "ICE_AGRIF" ] && [ ${DO_RESTART} == "1" ] ;  then
609## Restartability tests for ICE_AGRIF
610    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
611    then
612   ITEND=10
613    else
614   ITEND=200
615    fi
616    ITRST=$(   printf "%08d" $(( ${ITEND} / 2 )) )
617    ITRST_1=$( printf "%08d" $(( ${ITEND} * 3 / 2 )) )
618    export TEST_NAME="LONG"
619    cd ${MAIN_DIR}
620    #
621    # syncronisation if target directory/file exist (not done by makenemo)
622    . ${SETTE_DIR}/all_functions.sh
623    #
624    clean_config ICE_AGRIF ICE_AGRIF_ST 'tests'
625    #
626    sync_config  ICE_AGRIF ICE_AGRIF_ST 'tests'
627    #
628    . ./makenemo -m ${CMP_NAM} -n ICE_AGRIF_ST -a ICE_AGRIF -j 8  add_key "${ADD_KEYS}" del_key "${DEL_KEYS}"
629    cd ${SETTE_DIR}
630    . ./param.cfg
631    . ./all_functions.sh
632    . ./prepare_exe_dir.sh
633    set_valid_dir
634    clean_valid_dir
635    JOB_FILE=${EXE_DIR}/run_job.sh
636    NPROC=6
637    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
638    cd ${EXE_DIR}
639    set_namelist namelist_cfg cn_exp \"ICE_AGRIF_LONG\"
640    set_namelist namelist_cfg nn_it000 1
641    set_namelist namelist_cfg nn_itend ${ITEND}
642    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
643    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
644   
645    set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_LONG\"
646    set_namelist 1_namelist_cfg nn_it000 1
647    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
648    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 ))
649    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
650   
651    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
652    if [ ${USING_MPMD} == "yes" ] ; then
653        set_xio_using_server iodef.xml true
654    else
655        set_xio_using_server iodef.xml false
656    fi
657    cd ${SETTE_DIR}
658    . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
659   
660    cd ${SETTE_DIR}
661    export TEST_NAME="SHORT"
662    . ./prepare_exe_dir.sh
663    set_valid_dir
664    clean_valid_dir
665    cd ${EXE_DIR}
666    set_namelist namelist_cfg cn_exp \"ICE_AGRIF_SHORT\"
667    set_namelist namelist_cfg nn_it000 $(( ${ITEND} / 2 + 1 ))
668    set_namelist namelist_cfg nn_itend ${ITEND}
669    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
670    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
671    set_namelist namelist_cfg ln_rstart .true.
672    set_namelist namelist_cfg nn_rstctl 2
673    set_namelist namelist_cfg cn_ocerst_in \"ICE_AGRIF_LONG_${ITRST}_restart\"
674    set_namelist namelist_ice_cfg cn_icerst_in \"ICE_AGRIF_LONG_${ITRST}_restart_ice\"
675   
676    set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_SHORT\"
677    set_namelist 1_namelist_cfg nn_it000 $(( ${ITEND} * 3 / 2 + 1 ))
678    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
679    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 ))
680    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
681    set_namelist 1_namelist_cfg ln_rstart .true.
682    set_namelist 1_namelist_cfg nn_rstctl 2
683    set_namelist 1_namelist_cfg cn_ocerst_in \"ICE_AGRIF_LONG_${ITRST_1}_restart\"
684    set_namelist 1_namelist_ice_cfg cn_icerst_in \"ICE_AGRIF_LONG_${ITRST_1}_restart_ice\"
685   
686   
687    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
688    if [ ${USING_MPMD} == "yes" ] ; then
689        set_xio_using_server iodef.xml true
690    else
691        set_xio_using_server iodef.xml false
692    fi
693    if [ $NPROC -eq 1 ] ;  then
694        ln -sf ../LONG/ICE_AGRIF_LONG_${ITRST}_restart.nc .
695        ln -sf ../LONG/ICE_AGRIF_LONG_${ITRST}_restart_ice.nc .
696        ln -sf ../LONG/1_ICE_AGRIF_LONG_${ITRST_1}_restart.nc .
697        ln -sf ../LONG/1_ICE_AGRIF_LONG_${ITRST_1}_restart_ice.nc .
698    else
699        for (( i=1; i<=$NPROC; i++)) ; do
700            L_NPROC=$(( $i - 1 ))
701            L_NPROC=`printf "%04d\n" ${L_NPROC}`
702            ln -sf ../LONG/ICE_AGRIF_LONG_${ITRST}_restart_${L_NPROC}.nc .
703            ln -sf ../LONG/ICE_AGRIF_LONG_${ITRST}_restart_ice_${L_NPROC}.nc .
704            ln -sf ../LONG/1_ICE_AGRIF_LONG_${ITRST_1}_restart_${L_NPROC}.nc .
705            ln -sf ../LONG/1_ICE_AGRIF_LONG_${ITRST_1}_restart_ice_${L_NPROC}.nc .
706        done
707    fi
708
709    cd ${SETTE_DIR}
710    . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
711    cd ${SETTE_DIR}
712    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
713
714fi
715
716if [ ${config} == "ICE_AGRIF" ] && [ ${DO_REPRO} == "1" ] ;  then
717
718## Reproducibility tests for ICE_AGRIF
719    export TEST_NAME="REPRO_2_3"
720    cd ${MAIN_DIR}
721    cd ${SETTE_DIR}
722    . ./param.cfg
723    . ./all_functions.sh
724    . ./prepare_exe_dir.sh
725    set_valid_dir
726    clean_valid_dir
727    JOB_FILE=${EXE_DIR}/run_job.sh
728    NPROC=6
729    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
730    cd ${EXE_DIR}
731    set_namelist namelist_cfg cn_exp \"ICE_AGRIF_23\"
732    set_namelist namelist_cfg nn_it000 1
733    set_namelist namelist_cfg nn_itend ${ITEND}
734    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
735    set_namelist namelist_cfg jpni 2
736    set_namelist namelist_cfg jpnj 3
737    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
738   
739    set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_23\"
740    set_namelist 1_namelist_cfg nn_it000 1
741    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
742    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 ))
743    set_namelist 1_namelist_cfg jpni 2
744    set_namelist 1_namelist_cfg jpnj 3
745    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
746
747    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
748    if [ ${USING_MPMD} == "yes" ] ; then
749       set_xio_using_server iodef.xml true
750    else
751       set_xio_using_server iodef.xml false
752    fi
753    cd ${SETTE_DIR}
754    . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
755    cd ${SETTE_DIR}
756    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
757
758    cd ${SETTE_DIR}
759    export TEST_NAME="REPRO_3_2"
760    . ./prepare_exe_dir.sh
761    set_valid_dir
762    clean_valid_dir
763    JOB_FILE=${EXE_DIR}/run_job.sh
764    NPROC=6
765    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
766    cd ${EXE_DIR}
767
768    set_namelist namelist_cfg cn_exp \"ICE_AGRIF_32\"
769    set_namelist namelist_cfg nn_it000 1
770    set_namelist namelist_cfg nn_itend ${ITEND}
771    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
772    set_namelist namelist_cfg jpni 3
773    set_namelist namelist_cfg jpnj 2
774    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
775   
776    set_namelist 1_namelist_cfg cn_exp \"ICE_AGRIF_32\"
777    set_namelist 1_namelist_cfg nn_it000 1
778    set_namelist 1_namelist_cfg nn_itend $(( ${ITEND} * 3 ))
779    set_namelist 1_namelist_cfg nn_stock $(( ${ITEND} * 3 / 2 ))
780    set_namelist 1_namelist_cfg jpni 3
781    set_namelist 1_namelist_cfg jpnj 2
782    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
783   
784    #if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
785    if [ ${USING_MPMD} == "yes" ] ; then
786       set_xio_using_server iodef.xml true
787    else
788       set_xio_using_server iodef.xml false
789    fi
790    cd ${SETTE_DIR}
791    . ./prepare_job.sh input_ICE_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
792    cd ${SETTE_DIR}
793    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
794
795fi
796
797# ------
798# ISOMIP+
799# ------
800if [ ${config} == "ISOMIP+" ] && [ ${DO_RESTART} == "1" ] ;  then
801## Restartability tests
802    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
803    then
804   ITEND=12
805    else
806   ITEND=1200
807    fi
808    ITRST=$( printf "%08d" $(( ${ITEND} / 2 )) )
809    export TEST_NAME="LONG"
810    cd ${MAIN_DIR}
811    #
812    # syncronisation if target directory/file exist (not done by makenemo)
813    . ${SETTE_DIR}/all_functions.sh
814    #
815    clean_config ISOMIP+ ISOMIP+_ST 'tests'
816    #
817    sync_config  ISOMIP+ ISOMIP+_ST 'tests'
818    #
819    . ./makenemo -m ${CMP_NAM} -n ISOMIP+_ST -a ISOMIP+ -j 8 add_key "${ADD_KEYS}" del_key "${DEL_KEYS}"
820    cd ${SETTE_DIR}
821    . ./param.cfg
822    . ./all_functions.sh
823    . ./prepare_exe_dir.sh
824    set_valid_dir
825    clean_valid_dir
826    JOB_FILE=${EXE_DIR}/run_job.sh
827    NPROC=27
828    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
829    cd ${EXE_DIR}
830    set_namelist namelist_cfg cn_exp \"ISOMIP+_LONG\"
831    set_namelist namelist_cfg nn_it000 1
832    set_namelist namelist_cfg nn_itend ${ITEND}
833    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
834    set_namelist namelist_cfg jpni 9
835    set_namelist namelist_cfg jpnj 3
836    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
837    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
838    if [ ${USING_MPMD} == "yes" ] ; then
839       set_xio_using_server iodef.xml true
840    else
841       set_xio_using_server iodef.xml false
842    fi
843    cd ${SETTE_DIR}
844    . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
845
846    cd ${SETTE_DIR}
847    export TEST_NAME="SHORT"
848    . ./prepare_exe_dir.sh
849    set_valid_dir
850    clean_valid_dir
851    cd ${EXE_DIR}
852    set_namelist namelist_cfg cn_exp \"ISOMIP+_SHORT\"
853    set_namelist namelist_cfg nn_it000 $(( ${ITEND} / 2 + 1 ))
854    set_namelist namelist_cfg nn_itend ${ITEND}
855    set_namelist namelist_cfg nn_stock $(( ${ITEND} / 2 ))
856    set_namelist namelist_cfg ln_rstart .true.
857    set_namelist namelist_cfg nn_rstctl 2
858    set_namelist namelist_cfg jpni 9
859    set_namelist namelist_cfg jpnj 3
860    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
861    set_namelist namelist_cfg cn_ocerst_in \"ISOMIP+_LONG_${ITRST}_restart\"
862    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
863    if [ ${USING_MPMD} == "yes" ] ; then
864       set_xio_using_server iodef.xml true
865    else
866       set_xio_using_server iodef.xml false
867    fi
868    for (( i=1; i<=$NPROC; i++)) ; do
869        L_NPROC=$(( $i - 1 ))
870        L_NPROC=`printf "%04d\n" ${L_NPROC}`
871        ln -sf ../LONG/ISOMIP+_LONG_${ITRST}_restart_${L_NPROC}.nc .
872    done
873
874    cd ${SETTE_DIR}
875    . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
876    cd ${SETTE_DIR}
877    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
878
879fi
880
881if [ ${config} == "ISOMIP+" ] && [ ${DO_REPRO} == "1" ] ;  then
882## Reproducibility tests
883    if [ $( echo ${CMP_NAM} | grep -ic debug ) -eq 1 ]
884    then
885   ITEND=12
886    else
887   ITEND=600
888    fi
889    export TEST_NAME="REPRO_9_3"
890    cd ${MAIN_DIR}
891    cd ${SETTE_DIR}
892    . ./param.cfg
893    . ./all_functions.sh
894    . ./prepare_exe_dir.sh
895    set_valid_dir
896    clean_valid_dir
897    JOB_FILE=${EXE_DIR}/run_job.sh
898    NPROC=27
899    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
900    cd ${EXE_DIR}
901    set_namelist namelist_cfg cn_exp \"ISOMIP+_93\"
902    set_namelist namelist_cfg nn_it000 1
903    set_namelist namelist_cfg nn_itend ${ITEND}
904    set_namelist namelist_cfg jpni 9
905    set_namelist namelist_cfg jpnj 3
906    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
907    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
908    if [ ${USING_MPMD} == "yes" ] ; then
909       set_xio_using_server iodef.xml true
910    else
911       set_xio_using_server iodef.xml false
912    fi
913    cd ${SETTE_DIR}
914    . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
915    cd ${SETTE_DIR}
916    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
917
918    cd ${SETTE_DIR}
919    export TEST_NAME="REPRO_8_4"
920    . ./prepare_exe_dir.sh
921    set_valid_dir
922    clean_valid_dir
923    JOB_FILE=${EXE_DIR}/run_job.sh
924    NPROC=32
925    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
926    cd ${EXE_DIR}
927    set_namelist namelist_cfg cn_exp \"ISOMIP+_84\"
928    set_namelist namelist_cfg nn_it000 1
929    set_namelist namelist_cfg nn_itend ${ITEND}
930    set_namelist namelist_cfg jpni 8
931    set_namelist namelist_cfg jpnj 4
932    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
933    if [ ${SETTE_TIMING} == "yes" ]  ; then set_namelist namelist_cfg ln_timing .true. ; fi
934    if [ ${USING_MPMD} == "yes" ] ; then
935       set_xio_using_server iodef.xml true
936    else
937       set_xio_using_server iodef.xml false
938    fi
939    cd ${SETTE_DIR}
940    . ./prepare_job.sh input_ISOMIP+.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${NEMO_VALID}
941    cd ${SETTE_DIR}
942    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
943
944fi
945
946#----
947done
948#
949# Return to SETTE_DIR (last fcm_job.sh will have moved to EXE_DIR)
950cd ${SETTE_DIR}
Note: See TracBrowser for help on using the repository browser.