source: trunk/NEMOGCM/SETTE/sette.sh @ 7722

Last change on this file since 7722 was 7722, checked in by flavoni, 4 years ago

update test for ORCA2_LIM3_OBS, active with pisces

  • Property svn:executable set to *
File size: 54.8 KB
Line 
1#!/bin/bash
2############################################################
3# Author : Simona Flavoni for NEMO
4# Contact: sflod@locean-ipsl.upmc.fr
5# 2013   : A.C. Coward added options for testing with XIOS in dettached mode
6#
7# sette.sh   : principal script of SET TEsts for NEMO (SETTE)
8# ----------------------------------------------------------------------
9# NEMO/SETTE , NEMO Consortium (2010)
10# Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
11# ----------------------------------------------------------------------
12#
13#############################################################
14#set -x
15set -o posix
16#set -u
17#set -e
18# ===========
19# DESCRIPTION
20# ===========
21#
22# Variables to be checked by user:
23#
24# COMPILER          : name of compiler as defined in NEMOGCM/ARCH directory
25# BATCH_COMMAND_PAR :  name of the command for submitting parallel batch jobs
26# BATCH_COMMAND_SEQ :  name of the command for submitting sequential batch jobs 
27# INTERACT_FLAG     : flag to run in interactive mode "yes"
28#                           to run in batch mode "no"
29# MPIRUN_FLAG       : flag to run in parallel (MPI) "yes"
30#                           to run in sequential mode (NB_PROC = 1) "no"
31# USING_XIOS        : flag to control the activation of key_iomput
32#                      "yes" to compile using key_iomput and link to the external XIOS library
33#                      "no"  to compile without key_iomput and link to the old IOIPSL library
34# USING_MPMD        : flag to control the use of stand-alone IO servers
35#                     requires USING_XIOS="yes"
36#                      "yes" to run in MPMD (detached) mode with stand-alone IO servers
37#                      "no"  to run in SPMD (attached) mode without separate IO servers
38# USING_OMP         : flag to control the use of OpenMP parallelization
39# NUM_XIOSERVERS    : number of stand-alone IO servers to employ
40#                     set to zero if USING_MPMD="no"
41#
42# Principal script is sette.sh, that calls
43#
44#  makenemo  : to create successive exectuables in ${CONFIG_NAME}/BLD/bin/nemo.exe
45#              and links to opa in ${CONFIG_NAME}/EXP00)
46#
47#  param.cfg : sets and loads following directories:
48#
49#   FORCING_DIR         : is the directory for forcing files (tarfile)
50#   INPUT_DIR           : is the directory for input files storing
51#   TMPDIR              : is the temporary directory (if needed)
52#   NEMO_VALIDATION_DIR : is the validation directory
53#
54#   (NOTE: this file is the same for all configrations to be tested with sette)
55#
56#   all_functions.sh : loads functions used by sette (note: new functions can be added here)
57#   set_namelist     : function declared in all_functions that sets namelist parameters
58#   post_test_tidyup : creates validation storage directory and copies required output files
59#                      (solver.stat and ocean.output) in it after execution of test.
60#
61#  VALIDATION tree is:
62#
63#   NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
64#
65#  prepare_exe_dir.sh : defines and creates directory where the test is executed
66#                       execution directory takes name of TEST_NAME defined for every test
67#                       in sette.sh. (each test in executed in its own directory)
68#
69#  prepare_job.sh     : to generate the script run_job.sh
70#
71#  fcm_job.sh         : run in batch (INTERACT_FLAG="no") or interactive (INTERACT_FLAG="yes")
72#                        see sette.sh and BATCH_TEMPLATE directory
73#
74#  NOTE: jobs requiring initial or forcing data need to have an input_CONFIG.cfg in which
75#        can be found paths to the input tar file)
76#  NOTE: if job is not launched for any reason you have the executable ready in ${EXE_DIR}
77#        directory
78#  NOTE: the changed namelists are left in ${EXE_DIR} directory whereas original namelists
79#        remain in ${NEW_CONF}/EXP00
80#
81#  NOTE: a log file, output.sette, is created in ${SETTE_DIR} with the echoes of
82#        executed commands
83#
84#  NOTE: if sette.sh is stopped in output.sette there is written the last command
85#        executed by sette.sh
86#
87# example use: ./sette.sh
88#########################################################################################
89#
90# Compiler among those in NEMOGCM/ARCH
91export USING_OMP="no"
92#
93if [ ${USING_OMP} == "yes" ]
94 then
95   COMPILER=ifort_athena_xios_omp
96 else
97   COMPILER=X64_ADA
98 fi
99export BATCH_COMMAND_PAR="llsubmit"
100export BATCH_COMMAND_SEQ=$BATCH_COMMAND_PAR
101export INTERACT_FLAG="no"
102export MPIRUN_FLAG="yes"
103export USING_XIOS="yes"
104#
105export DEL_KEYS="key_iomput"
106if [ ${USING_XIOS} == "yes" ] 
107 then
108   export DEL_KEYS=""
109fi
110#
111# Settings which control the use of stand alone servers (only relevant if using xios)
112#
113export USING_MPMD="no"
114export NUM_XIOSERVERS=4
115export JOB_PREFIX=batch-mpmd
116#
117if [ ${USING_MPMD} == "no" ] 
118 then
119   export NUM_XIOSERVERS=0
120   export JOB_PREFIX=batch
121fi
122#
123#
124if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no"]
125 then
126   echo "Incompatible choices. MPMD mode requires the XIOS server"
127   exit
128fi
129#
130# Settings which control the hybrid parallel execution
131#
132OMP_NTHR=1
133if [ ${USING_OMP} == "yes" ]
134 then
135   OMP_NTHR=8
136fi
137
138# Directory to run the tests
139SETTE_DIR=$(cd $(dirname "$0"); pwd)
140MAIN_DIR=$(dirname $SETTE_DIR)
141CONFIG_DIR0=${MAIN_DIR}/CONFIG
142TOOLS_DIR=${MAIN_DIR}/TOOLS
143COMPIL_DIR=${TOOLS_DIR}/COMPILE
144
145CMP_NAM=${1:-$COMPILER}
146# Copy job_batch_COMPILER file for specific compiler into job_batch_template
147cd ${SETTE_DIR}
148cp BATCH_TEMPLATE/${JOB_PREFIX}-${COMPILER} job_batch_template || exit
149# Description of configuration tested:
150# GYRE_PISCES       :  1 &  2
151# ORCA2_LIM3_PISCES :  3 &  4
152# ORCA2_OFF_PISCES  :  5 &  6
153# AMM12             :  7 &  8
154# SAS               :  9     fos SAS there is no solver so is useless to test REPRO
155# ISOMIP            : 10 & 11
156# ORCA2_LIM3_OBS    : 12
157# ORCA2_AGRIF_LIM3  : 13 & 14
158#                     15 & 16
159
160for config in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
161
162do
163
164# TESTS FOR GYRE_PISCES CONFIGURATION
165if [ ${config} -eq 1 ] ;  then
166    ## Restartability tests for GYRE_PISCES
167    export TEST_NAME="LONG"
168    cd ${CONFIG_DIR0}
169    . ./makenemo -m ${CMP_NAM} -n GYREPIS_LONG -r GYRE_PISCES -j 8 del_key ${DEL_KEYS}
170    cd ${SETTE_DIR}
171    . ./param.cfg
172    . ./all_functions.sh
173    . ./prepare_exe_dir.sh
174    JOB_FILE=${EXE_DIR}/run_job.sh
175    NPROC=32
176    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
177    cd ${EXE_DIR} 
178    set_namelist namelist_cfg cn_exp \"GYREPIS_LONG\"
179    set_namelist namelist_cfg nn_it000 1
180    set_namelist namelist_cfg nn_itend 120
181    set_namelist namelist_cfg nn_stock 60
182    set_namelist namelist_cfg ln_clobber .true.
183    set_namelist namelist_cfg ln_linssh .true.
184    set_namelist namelist_cfg ln_read_cfg .false.
185    set_namelist namelist_cfg nn_fwb 0
186    set_namelist namelist_cfg jpni 4
187    set_namelist namelist_cfg jpnj 8
188    set_namelist namelist_cfg jpnij 32
189    if [ ${USING_MPMD} == "yes" ] ; then
190       set_xio_using_server iodef.xml true
191    else
192       set_xio_using_server iodef.xml false
193    fi
194    cd ${SETTE_DIR}
195    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
196
197    cd ${SETTE_DIR}
198    export TEST_NAME="SHORT"
199    . ./prepare_exe_dir.sh
200    cd ${EXE_DIR}
201    set_namelist namelist_cfg cn_exp \"GYREPIS_SHORT\"
202    set_namelist namelist_cfg nn_it000 61
203    set_namelist namelist_cfg nn_itend 120
204    set_namelist namelist_cfg nn_stock 60
205    set_namelist namelist_cfg ln_rstart .true.
206    set_namelist namelist_cfg nn_rstctl 2
207    set_namelist namelist_cfg ln_clobber .true.
208    set_namelist namelist_cfg ln_linssh .true.
209    set_namelist namelist_cfg ln_read_cfg .false.
210    set_namelist namelist_cfg nn_fwb 0
211    set_namelist namelist_cfg jpni 4
212    set_namelist namelist_cfg jpnj 8
213    set_namelist namelist_cfg jpnij 32
214    set_namelist namelist_cfg cn_ocerst_in \"GYREPIS_LONG_00000060_restart\"
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    for (( i=1; i<=$NPROC; i++)) ; do
221        L_NPROC=$(( $i - 1 ))
222        L_NPROC=`printf "%04d\n" ${L_NPROC}`
223        ln -sf ../LONG/GYREPIS_LONG_00000060_restart_${L_NPROC}.nc .
224    done
225    if [ ${USING_MPMD} == "yes" ] ; then
226       set_xio_using_server iodef.xml true
227    else
228       set_xio_using_server iodef.xml false
229    fi
230    cd ${SETTE_DIR}
231    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
232    cd ${SETTE_DIR}
233    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
234fi
235
236if [ ${config} -eq 2 ] ;  then
237    ## Reproducibility tests for GYRE_PISCES
238    export TEST_NAME="REPRO_4_8"
239    cd ${CONFIG_DIR0}
240    . ./makenemo -m ${CMP_NAM} -n GYREPIS_32 -r GYRE_PISCES -j 8 del_key ${DEL_KEYS}
241    cd ${SETTE_DIR}
242    . ./param.cfg
243    . ./all_functions.sh
244    . ./prepare_exe_dir.sh
245    JOB_FILE=${EXE_DIR}/run_job.sh
246    NPROC=32
247    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
248    cd ${EXE_DIR}
249    set_namelist namelist_cfg cn_exp \"GYREPIS_48\"
250    set_namelist namelist_cfg nn_it000 1
251    set_namelist namelist_cfg nn_itend 60
252    set_namelist namelist_cfg nn_fwb 0
253    set_namelist namelist_cfg ln_ctl .false.
254    set_namelist namelist_cfg ln_clobber .true.
255    set_namelist namelist_cfg ln_linssh .true.
256    set_namelist namelist_cfg ln_read_cfg .false.
257    set_namelist namelist_cfg jpni 4
258    set_namelist namelist_cfg jpnj 8
259    set_namelist namelist_cfg jpnij 32
260    if [ ${USING_MPMD} == "yes" ] ; then
261       set_xio_using_server iodef.xml true
262    else
263       set_xio_using_server iodef.xml false
264    fi
265    cd ${SETTE_DIR}
266    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
267    cd ${SETTE_DIR}
268    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
269
270    cd ${SETTE_DIR}
271    export TEST_NAME="REPRO_8_4"
272    . ./prepare_exe_dir.sh
273    JOB_FILE=${EXE_DIR}/run_job.sh
274    NPROC=32
275    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
276    cd ${EXE_DIR}
277    set_namelist namelist_cfg cn_exp \"GYREPIS_84\"
278    set_namelist namelist_cfg nn_it000 1
279    set_namelist namelist_cfg nn_itend 60
280    set_namelist namelist_cfg nn_fwb 0
281    set_namelist namelist_cfg ln_ctl .false.
282    set_namelist namelist_cfg ln_clobber .true.
283    set_namelist namelist_cfg ln_linssh .true.
284    set_namelist namelist_cfg ln_read_cfg .false.
285    set_namelist namelist_cfg jpni 8
286    set_namelist namelist_cfg jpnj 4
287    set_namelist namelist_cfg jpnij 32
288    if [ ${USING_MPMD} == "yes" ] ; then
289       set_xio_using_server iodef.xml true
290    else
291       set_xio_using_server iodef.xml false
292    fi
293    cd ${SETTE_DIR}
294    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
295    cd ${SETTE_DIR}
296    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
297
298fi
299
300# TESTS FOR ORCA2_LIM3_PISCES CONFIGURATION
301if [ ${config} -eq 3 ] ;  then
302    ## Restartability tests for ORCA2_LIM3_PISCES
303    export TEST_NAME="LONG"
304    cd ${CONFIG_DIR0}
305    . ./makenemo -m ${CMP_NAM} -n ORCA2LIM3PIS_LONG -r ORCA2_LIM3_PISCES -j 8 del_key ${DEL_KEYS}
306    cd ${SETTE_DIR}
307    . ./param.cfg
308    . ./all_functions.sh
309    . ./prepare_exe_dir.sh
310    JOB_FILE=${EXE_DIR}/run_job.sh
311    NPROC=32
312    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
313    cd ${EXE_DIR}
314    set_namelist namelist_cfg cn_exp \"O2L3P_LONG\"
315    set_namelist namelist_cfg nn_it000 1
316    set_namelist namelist_cfg nn_itend 150
317    set_namelist namelist_cfg nn_stock 75
318    set_namelist namelist_cfg ln_clobber .true.
319    set_namelist namelist_cfg ln_read_cfg .true.
320    set_namelist namelist_cfg ln_linssh .false.
321    set_namelist namelist_cfg nn_fwb 0
322    set_namelist namelist_cfg jpni 4
323    set_namelist namelist_cfg jpnj 8
324    set_namelist namelist_cfg jpnij 32
325    set_namelist namelist_top_cfg ln_trcdta .false.
326    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
327    # if not you need input files, and for tests is not necessary
328    set_namelist namelist_pisces_cfg ln_presatm .false.
329    set_namelist namelist_pisces_cfg ln_varpar .false.
330    set_namelist namelist_pisces_cfg ln_dust .false.
331    set_namelist namelist_pisces_cfg ln_solub .false.
332    set_namelist namelist_pisces_cfg ln_river .false.
333    set_namelist namelist_pisces_cfg ln_ndepo .false.
334    set_namelist namelist_pisces_cfg ln_ironsed .false.
335    set_namelist namelist_pisces_cfg ln_ironice .false.
336    set_namelist namelist_pisces_cfg ln_hydrofe .false.
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_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
344   
345    cd ${SETTE_DIR}
346    export TEST_NAME="SHORT"
347    . ./prepare_exe_dir.sh
348    cd ${EXE_DIR}
349    set_namelist namelist_cfg cn_exp \"O2L3P_SHORT\"
350    set_namelist namelist_cfg nn_it000 76
351    set_namelist namelist_cfg nn_itend 150
352    set_namelist namelist_cfg nn_stock 75
353    set_namelist namelist_cfg ln_rstart .true.
354    set_namelist namelist_cfg nn_rstctl 2
355    set_namelist namelist_cfg ln_clobber .true.
356    set_namelist namelist_cfg ln_read_cfg .true.
357    set_namelist namelist_cfg ln_linssh .false.
358    set_namelist namelist_cfg ln_icebergs .true.
359    set_namelist namelist_cfg nn_fwb 0
360    set_namelist namelist_cfg jpni 4
361    set_namelist namelist_cfg jpnj 8
362    set_namelist namelist_cfg jpnij 32
363    set_namelist namelist_top_cfg ln_rsttr .true.
364    set_namelist namelist_top_cfg nn_rsttr 2
365    set_namelist namelist_cfg cn_ocerst_in \"O2L3P_LONG_00000075_restart\"
366    set_namelist namelist_ice_cfg cn_icerst_in \"O2L3P_LONG_00000075_restart_ice\"
367    set_namelist namelist_top_cfg cn_trcrst_in \"O2L3P_LONG_00000075_restart_trc\"
368    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
369    # if not you need input files, and for tests is not necessary
370    set_namelist namelist_pisces_cfg ln_presatm .false.
371    set_namelist namelist_pisces_cfg ln_varpar .false.
372    set_namelist namelist_pisces_cfg ln_dust .false.
373    set_namelist namelist_pisces_cfg ln_solub .false.
374    set_namelist namelist_pisces_cfg ln_river .false.
375    set_namelist namelist_pisces_cfg ln_ndepo .false.
376    set_namelist namelist_pisces_cfg ln_ironsed .false.
377    set_namelist namelist_pisces_cfg ln_ironice .false.
378    set_namelist namelist_pisces_cfg ln_hydrofe .false.
379    # put ln_pisdmp to false : no restoring to global mean value
380    set_namelist namelist_pisces_cfg ln_pisdmp .false.
381    for (( i=1; i<=$NPROC; i++)) ; do
382        L_NPROC=$(( $i - 1 ))
383        L_NPROC=`printf "%04d\n" ${L_NPROC}`
384        ln -sf ../LONG/O2L3P_LONG_00000075_restart_${L_NPROC}.nc .
385        ln -sf ../LONG/O2L3P_LONG_00000075_restart_trc_${L_NPROC}.nc .
386        ln -sf ../LONG/O2L3P_LONG_00000075_restart_ice_${L_NPROC}.nc .
387        ln -sf ../LONG/O2L3P_LONG_icebergs_00000075_restart_${L_NPROC}.nc O2L3P_LONG_00000075_restart_icebergs_${L_NPROC}.nc
388    done
389    if [ ${USING_MPMD} == "yes" ] ; then
390       set_xio_using_server iodef.xml true
391    else
392       set_xio_using_server iodef.xml false
393    fi
394    cd ${SETTE_DIR}
395    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
396    cd ${SETTE_DIR}
397    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
398fi
399
400if [ ${config} -eq 4 ] ;  then
401    ## Reproducibility tests for ORCA2_LIM3_PISCES
402    export TEST_NAME="REPRO_4_8"
403    cd ${CONFIG_DIR0}
404    . ./makenemo -m ${CMP_NAM} -n ORCA2LIM3PIS_32 -r ORCA2_LIM3_PISCES -j 8 del_key ${DEL_KEYS}
405    cd ${SETTE_DIR}
406    . ./param.cfg
407    . ./all_functions.sh
408    . ./prepare_exe_dir.sh
409    JOB_FILE=${EXE_DIR}/run_job.sh
410    NPROC=32
411    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
412    cd ${EXE_DIR}
413    set_namelist namelist_cfg nn_it000 1
414    set_namelist namelist_cfg nn_itend 75
415    set_namelist namelist_cfg nn_fwb 0
416    set_namelist namelist_cfg ln_ctl .false.
417    set_namelist namelist_cfg ln_clobber .true.
418    set_namelist namelist_cfg ln_read_cfg .true.
419    set_namelist namelist_cfg ln_linssh .false.
420    set_namelist namelist_cfg ln_icebergs .true.
421    set_namelist namelist_cfg jpni 4
422    set_namelist namelist_cfg jpnj 8
423    set_namelist namelist_cfg jpnij 32
424    set_namelist namelist_top_cfg ln_trcdta .false.
425    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
426    # if not you need input files, and for tests is not necessary
427    set_namelist namelist_pisces_cfg ln_presatm .false.
428    set_namelist namelist_pisces_cfg ln_varpar .false.
429    set_namelist namelist_pisces_cfg ln_dust .false.
430    set_namelist namelist_pisces_cfg ln_solub .false.
431    set_namelist namelist_pisces_cfg ln_river .false.
432    set_namelist namelist_pisces_cfg ln_ndepo .false.
433    set_namelist namelist_pisces_cfg ln_ironsed .false.
434    set_namelist namelist_pisces_cfg ln_ironice .false.
435    set_namelist namelist_pisces_cfg ln_hydrofe .false.
436    # put ln_pisdmp to false : no restoring to global mean value
437    set_namelist namelist_pisces_cfg ln_pisdmp .false.
438    if [ ${USING_MPMD} == "yes" ] ; then
439       set_xio_using_server iodef.xml true
440    else
441       set_xio_using_server iodef.xml false
442    fi
443    cd ${SETTE_DIR}
444    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
445    cd ${SETTE_DIR}
446    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
447
448    cd ${SETTE_DIR}
449    export TEST_NAME="REPRO_8_4"
450    . ./prepare_exe_dir.sh
451    JOB_FILE=${EXE_DIR}/run_job.sh
452    NPROC=32
453    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
454    cd ${EXE_DIR}
455    set_namelist namelist_cfg nn_it000 1
456    set_namelist namelist_cfg nn_itend 75
457    set_namelist namelist_cfg ln_clobber .true.
458    set_namelist namelist_cfg ln_read_cfg .true.
459    set_namelist namelist_cfg ln_linssh .false.
460    set_namelist namelist_cfg ln_icebergs .true.
461    set_namelist namelist_cfg nn_fwb 0
462    set_namelist namelist_cfg jpni 8
463    set_namelist namelist_cfg jpnj 4
464    set_namelist namelist_cfg jpnij 32
465    set_namelist namelist_top_cfg ln_trcdta .false.
466    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
467    # if not you need input files, and for tests is not necessary
468    set_namelist namelist_pisces_cfg ln_presatm .false.
469    set_namelist namelist_pisces_cfg ln_varpar .false.
470    set_namelist namelist_pisces_cfg ln_dust .false.
471    set_namelist namelist_pisces_cfg ln_solub .false.
472    set_namelist namelist_pisces_cfg ln_river .false.
473    set_namelist namelist_pisces_cfg ln_ndepo .false.
474    set_namelist namelist_pisces_cfg ln_ironsed .false.
475    set_namelist namelist_pisces_cfg ln_ironice .false.
476    set_namelist namelist_pisces_cfg ln_hydrofe .false.
477    # put ln_pisdmp to false : no restoring to global mean value
478    set_namelist namelist_pisces_cfg ln_pisdmp .false.
479    if [ ${USING_MPMD} == "yes" ] ; then
480       set_xio_using_server iodef.xml true
481    else
482       set_xio_using_server iodef.xml false
483    fi
484    cd ${SETTE_DIR}
485    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
486    cd ${SETTE_DIR}
487    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
488fi
489
490# TESTS FOR ORCA2_OFF_PISCES CONFIGURATION
491if [ ${config} -eq 5 ] ;  then
492    ## Restartability tests for ORCA2_OFF_PISCES
493    export TEST_NAME="LONG"
494    cd ${CONFIG_DIR0}
495    . ./makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_LONG -r ORCA2_OFF_PISCES -j 8 del_key ${DEL_KEYS}
496    cd ${SETTE_DIR}
497    . ./param.cfg
498    . ./all_functions.sh
499    . ./prepare_exe_dir.sh
500    JOB_FILE=${EXE_DIR}/run_job.sh
501    NPROC=32
502    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
503    cd ${EXE_DIR}
504    set_namelist namelist_cfg cn_exp \"OFFP_LONG\"
505    set_namelist namelist_cfg nn_it000 1
506    set_namelist namelist_cfg nn_itend 40
507    set_namelist namelist_cfg nn_stock 20
508    set_namelist namelist_cfg ln_clobber .true.
509    set_namelist namelist_cfg ln_read_cfg .true.
510    set_namelist namelist_cfg ln_linssh .true.
511    set_namelist namelist_cfg jpni 4
512    set_namelist namelist_cfg jpnj 8
513    set_namelist namelist_cfg jpnij 32
514    set_namelist namelist_top_cfg ln_trcdta .false.
515    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
516    # if not you need input files, and for tests is not necessary
517    set_namelist namelist_pisces_cfg ln_presatm .false.
518    set_namelist namelist_pisces_cfg ln_varpar .false.
519    set_namelist namelist_pisces_cfg ln_dust .false.
520    set_namelist namelist_pisces_cfg ln_solub .false.
521    set_namelist namelist_pisces_cfg ln_river .false.
522    set_namelist namelist_pisces_cfg ln_ndepo .false.
523    set_namelist namelist_pisces_cfg ln_ironsed .false.
524    set_namelist namelist_pisces_cfg ln_ironice .false.
525    set_namelist namelist_pisces_cfg ln_hydrofe .false.
526    # put ln_pisdmp to false : no restoring to global mean value
527    set_namelist namelist_pisces_cfg ln_pisdmp .false.
528    if [ ${USING_MPMD} == "yes" ] ; then
529       set_xio_using_server iodef.xml true
530    else
531       set_xio_using_server iodef.xml false
532    fi
533    cd ${SETTE_DIR}
534    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
535   
536    cd ${SETTE_DIR}
537    export TEST_NAME="SHORT"
538    . ./prepare_exe_dir.sh
539    cd ${EXE_DIR}
540    set_namelist namelist_cfg cn_exp \"OFFP_SHORT\"
541    set_namelist namelist_cfg nn_it000 21
542    set_namelist namelist_cfg nn_itend 40
543    set_namelist namelist_cfg nn_stock 20
544    set_namelist namelist_cfg ln_clobber .true.
545    set_namelist namelist_cfg ln_read_cfg .true.
546    set_namelist namelist_cfg ln_linssh .true.
547    set_namelist namelist_cfg jpni 4
548    set_namelist namelist_cfg jpnj 8
549    set_namelist namelist_cfg jpnij 32
550    set_namelist namelist_top_cfg ln_rsttr .true.
551    set_namelist namelist_top_cfg nn_rsttr 2
552    set_namelist namelist_top_cfg cn_trcrst_in \"OFFP_LONG_00000020_restart_trc\"
553    for (( i=1; i<=$NPROC; i++)) ; do
554        L_NPROC=$(( $i - 1 ))
555        L_NPROC=`printf "%04d\n" ${L_NPROC}`
556        ln -sf ../LONG/OFFP_LONG_00000020_restart_trc_${L_NPROC}.nc .
557    done
558    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
559    # if not you need input files, and for tests is not necessary
560    set_namelist namelist_pisces_cfg ln_presatm .false.
561    set_namelist namelist_pisces_cfg ln_varpar .false.
562    set_namelist namelist_pisces_cfg ln_dust .false.
563    set_namelist namelist_pisces_cfg ln_solub .false.
564    set_namelist namelist_pisces_cfg ln_river .false.
565    set_namelist namelist_pisces_cfg ln_ndepo .false.
566    set_namelist namelist_pisces_cfg ln_ironsed .false.
567    set_namelist namelist_pisces_cfg ln_ironice .false.
568    set_namelist namelist_pisces_cfg ln_hydrofe .false.
569    # put ln_pisdmp to false : no restoring to global mean value
570    set_namelist namelist_pisces_cfg ln_pisdmp .false.
571    if [ ${USING_MPMD} == "yes" ] ; then
572       set_xio_using_server iodef.xml true
573    else
574       set_xio_using_server iodef.xml false
575    fi
576    cd ${SETTE_DIR}
577    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME}  ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
578    cd ${SETTE_DIR}
579    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
580fi
581
582if [ ${config} -eq 6 ] ;  then
583    ## Reproducibility tests for ORCA2_OFF_PISCES
584    export TEST_NAME="REPRO_4_8"
585    cd ${CONFIG_DIR0}
586    . ./makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_32 -r ORCA2_OFF_PISCES -j 8 del_key ${DEL_KEYS}
587    cd ${SETTE_DIR}
588    . ./param.cfg
589    . ./all_functions.sh
590    . ./prepare_exe_dir.sh
591    JOB_FILE=${EXE_DIR}/run_job.sh
592    NPROC=32
593    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
594    cd ${EXE_DIR}
595    set_namelist namelist_cfg nn_it000 1
596    set_namelist namelist_cfg nn_itend 40
597    set_namelist namelist_cfg ln_ctl .false.
598    set_namelist namelist_cfg ln_clobber .true.
599    set_namelist namelist_cfg ln_read_cfg .true.
600    set_namelist namelist_cfg ln_linssh .true.
601    set_namelist namelist_cfg jpni 4
602    set_namelist namelist_cfg jpnj 8
603    set_namelist namelist_cfg jpnij 32
604    set_namelist namelist_top_cfg ln_trcdta .false.
605    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
606    # if not you need input files, and for tests is not necessary
607    set_namelist namelist_pisces_cfg ln_presatm .false.
608    set_namelist namelist_pisces_cfg ln_varpar .false.
609    set_namelist namelist_pisces_cfg ln_dust .false.
610    set_namelist namelist_pisces_cfg ln_solub .false.
611    set_namelist namelist_pisces_cfg ln_river .false.
612    set_namelist namelist_pisces_cfg ln_ndepo .false.
613    set_namelist namelist_pisces_cfg ln_ironsed .false.
614    set_namelist namelist_pisces_cfg ln_ironice .false.
615    set_namelist namelist_pisces_cfg ln_hydrofe .false.
616    # put ln_pisdmp to false : no restoring to global mean value
617    set_namelist namelist_pisces_cfg ln_pisdmp .false.
618    if [ ${USING_MPMD} == "yes" ] ; then
619       set_xio_using_server iodef.xml true
620    else
621       set_xio_using_server iodef.xml false
622    fi
623    cd ${SETTE_DIR}
624    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
625    cd ${SETTE_DIR}
626    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
627
628    cd ${SETTE_DIR}
629    export TEST_NAME="REPRO_8_4"
630    . ./prepare_exe_dir.sh
631    JOB_FILE=${EXE_DIR}/run_job.sh
632    NPROC=32
633    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
634    cd ${EXE_DIR}
635    set_namelist namelist_cfg nn_it000 1
636    set_namelist namelist_cfg nn_itend 40
637    set_namelist namelist_cfg ln_ctl .false.
638    set_namelist namelist_cfg ln_clobber .true.
639    set_namelist namelist_cfg ln_read_cfg .true.
640    set_namelist namelist_cfg ln_linssh .true.
641    set_namelist namelist_cfg jpni 8
642    set_namelist namelist_cfg jpnj 4
643    set_namelist namelist_cfg jpnij 32
644    set_namelist namelist_top_cfg ln_trcdta .false.
645    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
646    # if not you need input files, and for tests is not necessary
647    set_namelist namelist_pisces_cfg ln_presatm .false.
648    set_namelist namelist_pisces_cfg ln_varpar .false.
649    set_namelist namelist_pisces_cfg ln_dust .false.
650    set_namelist namelist_pisces_cfg ln_solub .false.
651    set_namelist namelist_pisces_cfg ln_river .false.
652    set_namelist namelist_pisces_cfg ln_ndepo .false.
653    set_namelist namelist_pisces_cfg ln_ironsed .false.
654    set_namelist namelist_pisces_cfg ln_ironice .false.
655    set_namelist namelist_pisces_cfg ln_hydrofe .false.
656    # put ln_pisdmp to false : no restoring to global mean value
657    set_namelist namelist_pisces_cfg ln_pisdmp .false.
658    if [ ${USING_MPMD} == "yes" ] ; then
659       set_xio_using_server iodef.xml true
660    else
661       set_xio_using_server iodef.xml false
662    fi
663    cd ${SETTE_DIR}
664    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
665    cd ${SETTE_DIR}
666    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
667fi
668
669# TESTS FOR AMM12 CONFIGURATION
670if [ ${config} -eq 7 ] ;  then
671    ## Restartability tests for AMM12
672    export TEST_NAME="LONG"
673    cd ${CONFIG_DIR0}
674    . ./makenemo -m ${CMP_NAM} -n AMM12_LONG -r AMM12 -j 8 add_key "key_tide" del_key ${DEL_KEYS}
675    cd ${SETTE_DIR}
676    . ./param.cfg
677    . ./all_functions.sh
678    . ./prepare_exe_dir.sh
679    JOB_FILE=${EXE_DIR}/run_job.sh
680    NPROC=32
681    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
682    cd ${EXE_DIR}
683    set_namelist namelist_cfg nn_it000 1
684    set_namelist namelist_cfg nn_itend 576
685    set_namelist namelist_cfg nn_stock 288
686    set_namelist namelist_cfg nn_fwb 0
687    set_namelist namelist_cfg ln_ctl .false.
688    set_namelist namelist_cfg ln_clobber .true.
689    set_namelist namelist_cfg ln_read_cfg .true.
690    set_namelist namelist_cfg ln_linssh .false.
691    set_namelist namelist_cfg jpni 4
692    set_namelist namelist_cfg jpnj 8
693    set_namelist namelist_cfg jpnij 32
694    if [ ${USING_MPMD} == "yes" ] ; then
695       set_xio_using_server iodef.xml true
696    else
697       set_xio_using_server iodef.xml false
698    fi
699    cd ${SETTE_DIR}
700    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
701
702    cd ${SETTE_DIR}
703    export TEST_NAME="SHORT"
704    . ./prepare_exe_dir.sh
705    cd ${EXE_DIR}
706    set_namelist namelist_cfg nn_it000 289
707    set_namelist namelist_cfg nn_itend 576
708    set_namelist namelist_cfg nn_fwb 0
709    set_namelist namelist_cfg ln_ctl .false.
710    set_namelist namelist_cfg ln_clobber .true.
711    set_namelist namelist_cfg ln_read_cfg .true.
712    set_namelist namelist_cfg ln_linssh .false.
713    set_namelist namelist_cfg jpni 4
714    set_namelist namelist_cfg jpnj 8
715    set_namelist namelist_cfg jpnij 32
716    set_namelist namelist_cfg ln_rstart .true.
717    set_namelist namelist_cfg nn_rstctl 2
718    set_namelist namelist_cfg cn_ocerst_in \"AMM12_00000288_restart_oce_out\"
719    set_namelist namelist_cfg nn_date0 20120102
720    for (( i=1; i<=$NPROC; i++)) ; do
721        L_NPROC=$(( $i - 1 ))
722        L_NPROC=`printf "%04d\n" ${L_NPROC}`
723        ln -sf ../LONG/AMM12_00000288_restart_oce_out_${L_NPROC}.nc .
724    done
725    if [ ${USING_MPMD} == "yes" ] ; then
726       set_xio_using_server iodef.xml true
727    else
728       set_xio_using_server iodef.xml false
729    fi
730    cd ${SETTE_DIR}
731    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
732    cd ${SETTE_DIR}
733    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
734fi
735
736if [ ${config} -eq 8 ] ;  then
737## Reproducibility tests for AMM12
738    export TEST_NAME="REPRO_8_4"
739    cd ${CONFIG_DIR0}
740    . ./makenemo -m ${CMP_NAM} -n AMM12_32 -r AMM12 -j 8 del_key ${DEL_KEYS}
741    cd ${SETTE_DIR}
742    . ./param.cfg
743    . ./all_functions.sh
744    . ./prepare_exe_dir.sh
745    JOB_FILE=${EXE_DIR}/run_job.sh
746    NPROC=32
747    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
748    cd ${EXE_DIR}
749    set_namelist namelist_cfg nn_it000 1
750    set_namelist namelist_cfg nn_itend 576
751    set_namelist namelist_cfg nn_fwb 0
752    set_namelist namelist_cfg ln_ctl .false.
753    set_namelist namelist_cfg ln_clobber .true.
754    set_namelist namelist_cfg ln_read_cfg .true.
755    set_namelist namelist_cfg ln_linssh .false.
756    set_namelist namelist_cfg jpni 8
757    set_namelist namelist_cfg jpnj 4
758    set_namelist namelist_cfg jpnij 32
759    if [ ${USING_MPMD} == "yes" ] ; then
760       set_xio_using_server iodef.xml true
761    else
762       set_xio_using_server iodef.xml false
763    fi
764    cd ${SETTE_DIR}
765    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
766    cd ${SETTE_DIR}
767    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
768
769    cd ${SETTE_DIR}
770    export TEST_NAME="REPRO_4_8"
771    . ./prepare_exe_dir.sh
772    JOB_FILE=${EXE_DIR}/run_job.sh
773    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
774    cd ${EXE_DIR}
775    set_namelist namelist_cfg nn_it000 1
776    set_namelist namelist_cfg nn_itend 576
777    set_namelist namelist_cfg nn_fwb 0
778    set_namelist namelist_cfg ln_ctl .false.
779    set_namelist namelist_cfg ln_clobber .true.
780    set_namelist namelist_cfg ln_read_cfg .true.
781    set_namelist namelist_cfg ln_linssh .false.
782    set_namelist namelist_cfg jpni 4
783    set_namelist namelist_cfg jpnj 8
784    set_namelist namelist_cfg jpnij 32
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_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
792    cd ${SETTE_DIR}
793    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
794fi
795
796
797# TESTS FOR ORCA2_SAS_LIM3 CONFIGURATION
798if [ ${config} -eq 9 ] ;  then
799    ## Restartability tests for SAS
800    export TEST_NAME="LONG"
801    cd ${CONFIG_DIR0}
802    . ./makenemo -m ${CMP_NAM} -n SAS_LONG -r ORCA2_SAS_LIM3 -j 8 del_key ${DEL_KEYS}
803    cd ${SETTE_DIR}
804    . ./param.cfg
805    . ./all_functions.sh
806    . ./prepare_exe_dir.sh
807    JOB_FILE=${EXE_DIR}/run_job.sh
808    NPROC=32
809    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
810    cd ${EXE_DIR}
811    set_namelist namelist_cfg cn_exp \"SAS\"
812    set_namelist namelist_cfg nn_it000 1
813    set_namelist namelist_cfg nn_itend 100
814    set_namelist namelist_cfg nn_stock 50
815    set_namelist namelist_cfg ln_ctl .false.
816    set_namelist namelist_cfg ln_clobber .true.
817    set_namelist namelist_cfg ln_read_cfg .true.
818    set_namelist namelist_cfg ln_linssh .true.
819    set_namelist namelist_cfg nn_fwb 0
820    set_namelist namelist_cfg jpni 4
821    set_namelist namelist_cfg jpnj 8
822    set_namelist namelist_cfg jpnij 32
823    if [ ${USING_MPMD} == "yes" ] ; then
824       set_xio_using_server iodef.xml true
825    else
826       set_xio_using_server iodef.xml false
827    fi
828    cd ${SETTE_DIR}
829    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
830
831    cd ${SETTE_DIR}
832    export TEST_NAME="SHORT"
833    . ./prepare_exe_dir.sh
834    cd ${EXE_DIR}
835    set_namelist namelist_cfg cn_exp \"SAS\"
836    set_namelist namelist_cfg nn_it000 51
837    set_namelist namelist_cfg nn_itend 100
838    set_namelist namelist_cfg ln_ctl .false.
839    set_namelist namelist_cfg ln_clobber .true.
840    set_namelist namelist_cfg ln_read_cfg .true.
841    set_namelist namelist_cfg ln_linssh .true.
842    set_namelist namelist_cfg nn_fwb 0
843    set_namelist namelist_cfg jpni 4
844    set_namelist namelist_cfg jpnj 8
845    set_namelist namelist_cfg jpnij 32
846    set_namelist namelist_cfg ln_rstart .true.
847    set_namelist namelist_cfg nn_rstctl 2
848    set_namelist namelist_ice_cfg cn_icerst_in \"SAS_00000050_restart_ice\"
849    if [ ${USING_MPMD} == "yes" ] ; then
850       set_xio_using_server iodef.xml true
851    else
852       set_xio_using_server iodef.xml false
853    fi
854    for (( i=1; i<=$NPROC; i++)) ; do
855        L_NPROC=$(( $i - 1 ))
856        L_NPROC=`printf "%04d\n" ${L_NPROC}`
857        ln -sf ../LONG/SAS_00000050_restart_ice_${L_NPROC}.nc .
858    done
859    cd ${SETTE_DIR}
860    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
861    cd ${SETTE_DIR}
862    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
863fi
864
865# TESTS FOR ISOMIP CONFIGURATION
866if [ ${config} -eq 10 ] ;  then
867    ## Restartability tests for ISOMIP
868    export TEST_NAME="LONG"
869    cd ${CONFIG_DIR0}
870    . ./makenemo -m ${CMP_NAM} -n ISOMIP_LONG -r ISOMIP -a TEST_CASES -j 8 del_key ${DEL_KEYS}
871    cd ${SETTE_DIR}
872    . ./param.cfg
873    . ./all_functions.sh
874    . ./prepare_exe_dir.sh
875    JOB_FILE=${EXE_DIR}/run_job.sh
876    NPROC=32
877    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
878    cd ${EXE_DIR}
879    set_namelist namelist_cfg cn_exp \"ISOMIP_LONG\"
880    set_namelist namelist_cfg nn_it000 1
881    set_namelist namelist_cfg nn_itend 96
882    set_namelist namelist_cfg nn_stock 48
883    set_namelist namelist_cfg ln_clobber .true.
884    set_namelist namelist_cfg ln_read_cfg .false.
885    set_namelist namelist_cfg jpni 4
886    set_namelist namelist_cfg jpnj 8
887    set_namelist namelist_cfg jpnij 32
888    if [ ${USING_MPMD} == "yes" ] ; then
889       set_xio_using_server iodef.xml true
890    else
891       set_xio_using_server iodef.xml false
892    fi
893    cd ${SETTE_DIR}
894    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
895
896    cd ${SETTE_DIR}
897    export TEST_NAME="SHORT"
898    . ./prepare_exe_dir.sh
899    cd ${EXE_DIR}
900    set_namelist namelist_cfg cn_exp \"ISOMIP_SHORT\"
901    set_namelist namelist_cfg nn_it000 49
902    set_namelist namelist_cfg nn_itend 96
903    set_namelist namelist_cfg nn_stock 48
904    set_namelist namelist_cfg ln_rstart .true.
905    set_namelist namelist_cfg nn_rstctl 2
906    set_namelist namelist_cfg ln_clobber .true.
907    set_namelist namelist_cfg ln_read_cfg .false.
908    set_namelist namelist_cfg jpni 4
909    set_namelist namelist_cfg jpnj 8
910    set_namelist namelist_cfg jpnij 32
911    set_namelist namelist_cfg cn_ocerst_in \"ISOMIP_LONG_00000048_restart\"
912    if [ ${USING_MPMD} == "yes" ] ; then
913       set_xio_using_server iodef.xml true
914    else
915       set_xio_using_server iodef.xml false
916    fi
917    for (( i=1; i<=$NPROC; i++)) ; do
918        L_NPROC=$(( $i - 1 ))
919        L_NPROC=`printf "%04d\n" ${L_NPROC}`
920        ln -sf ../LONG/ISOMIP_LONG_00000048_restart_${L_NPROC}.nc .
921    done
922    if [ ${USING_MPMD} == "yes" ] ; then
923       set_xio_using_server iodef.xml true
924    else
925       set_xio_using_server iodef.xml false
926    fi
927    cd ${SETTE_DIR}
928    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
929    cd ${SETTE_DIR}
930    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
931fi
932if [ ${config} -eq 11 ] ;  then
933    ## Reproducibility tests for ISOMIP
934    export TEST_NAME="REPRO_4_8"
935    cd ${CONFIG_DIR0}
936    . ./makenemo -m ${CMP_NAM} -n ISOMIP_32 -r ISOMIP -a TEST_CASES -j 8 del_key ${DEL_KEYS}
937    cd ${SETTE_DIR}
938    . ./param.cfg
939    . ./all_functions.sh
940    . ./prepare_exe_dir.sh
941    JOB_FILE=${EXE_DIR}/run_job.sh
942    NPROC=32
943    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
944    cd ${EXE_DIR}
945    set_namelist namelist_cfg cn_exp \"ISOMIP_14\"
946    set_namelist namelist_cfg nn_it000 1
947    set_namelist namelist_cfg nn_itend 48
948    set_namelist namelist_cfg ln_ctl .false.
949    set_namelist namelist_cfg ln_clobber .true.
950    set_namelist namelist_cfg ln_read_cfg .false.
951    set_namelist namelist_cfg jpni 4
952    set_namelist namelist_cfg jpnj 8
953    set_namelist namelist_cfg jpnij 32
954    if [ ${USING_MPMD} == "yes" ] ; then
955       set_xio_using_server iodef.xml true
956    else
957       set_xio_using_server iodef.xml false
958    fi
959    cd ${SETTE_DIR}
960    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
961    cd ${SETTE_DIR}
962    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
963
964    cd ${SETTE_DIR}
965    export TEST_NAME="REPRO_8_4"
966    . ./prepare_exe_dir.sh
967    JOB_FILE=${EXE_DIR}/run_job.sh
968    NPROC=32
969    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
970    cd ${EXE_DIR}
971    set_namelist namelist_cfg cn_exp \"ISOMIP_22\"
972    set_namelist namelist_cfg nn_it000 1
973    set_namelist namelist_cfg nn_itend 48
974    set_namelist namelist_cfg ln_ctl .false.
975    set_namelist namelist_cfg ln_clobber .true.
976    set_namelist namelist_cfg ln_read_cfg .false.
977    set_namelist namelist_cfg jpni 8
978    set_namelist namelist_cfg jpnj 4
979    set_namelist namelist_cfg jpnij 32
980    if [ ${USING_MPMD} == "yes" ] ; then
981       set_xio_using_server iodef.xml true
982    else
983       set_xio_using_server iodef.xml false
984    fi
985    cd ${SETTE_DIR}
986    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
987    cd ${SETTE_DIR}
988    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
989
990fi
991
992## Test assimilation interface code, OBS and ASM for reproducibility
993## Restartability not tested (ASM code not restartable while increments are being applied)
994if [ ${config} -eq 12 ] ; then
995   ## Reproducibility tests for ORCA2_LIM3_OBS
996    export TEST_NAME="REPRO_4_8"
997    cd ${CONFIG_DIR0}
998    . ./makenemo -m ${CMP_NAM} -n ORCA2_LIM3_OBS -r ORCA2_LIM3_PISCES -j 8 add_key "key_asminc"
999    cd ${SETTE_DIR}
1000    . ./param.cfg
1001    . ./all_functions.sh
1002    . ./prepare_exe_dir.sh
1003    JOB_FILE=${EXE_DIR}/run_job.sh
1004    NPROC=32
1005    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1006    cd ${EXE_DIR}
1007    set_namelist namelist_cfg nn_it000 1
1008    set_namelist namelist_cfg nn_itend 75
1009    set_namelist namelist_cfg nn_fwb 0
1010    set_namelist namelist_cfg ln_ctl .false.
1011    set_namelist namelist_cfg ln_clobber .true.
1012    set_namelist namelist_cfg ln_read_cfg .true.
1013    set_namelist namelist_cfg ln_linssh .false.
1014    set_namelist namelist_cfg ln_icebergs .false.
1015    set_namelist namelist_cfg jpni 4
1016    set_namelist namelist_cfg jpnj 8
1017    set_namelist namelist_cfg jpnij 32
1018    set_namelist namelist_cfg ln_diaobs .true.
1019    set_namelist namelist_cfg ln_t3d .true.
1020    set_namelist namelist_cfg ln_s3d .true.
1021    set_namelist namelist_cfg ln_sst .true.
1022    set_namelist namelist_cfg ln_sla .true.
1023    set_namelist namelist_cfg ln_sic .true.
1024    set_namelist namelist_cfg ln_vel3d .true.
1025    set_namelist namelist_cfg ln_bkgwri .true.
1026    set_namelist namelist_cfg ln_trainc .true.
1027    set_namelist namelist_cfg ln_dyninc .true.
1028    set_namelist namelist_cfg ln_sshinc .true.
1029    set_namelist namelist_cfg ln_asmiau .true.
1030    #remove all useless options for pisces (due to ORCA2_LIM3_PISCES reference configuration)
1031    set_namelist namelist_top_cfg ln_trcdta .false.
1032    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
1033    # if not you need input files, and for tests is not necessary
1034    set_namelist namelist_pisces_cfg ln_presatm .false.
1035    set_namelist namelist_pisces_cfg ln_varpar .false.
1036    set_namelist namelist_pisces_cfg ln_dust .false.
1037    set_namelist namelist_pisces_cfg ln_solub .false.
1038    set_namelist namelist_pisces_cfg ln_river .false.
1039    set_namelist namelist_pisces_cfg ln_ndepo .false.
1040    set_namelist namelist_pisces_cfg ln_ironsed .false.
1041    set_namelist namelist_pisces_cfg ln_ironice .false.
1042    set_namelist namelist_pisces_cfg ln_hydrofe .false.
1043    if [ ${USING_MPMD} == "yes" ] ; then
1044       set_xio_using_server iodef.xml true
1045    else
1046       set_xio_using_server iodef.xml false
1047    fi
1048    cd ${SETTE_DIR}
1049    . ./prepare_job.sh input_ORCA2_LIM3_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1050    cd ${SETTE_DIR}
1051    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1052
1053   cd ${SETTE_DIR}
1054    export TEST_NAME="REPRO_8_4"
1055    . ./prepare_exe_dir.sh
1056    JOB_FILE=${EXE_DIR}/run_job.sh
1057    NPROC=32
1058    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1059    cd ${EXE_DIR}
1060    set_namelist namelist_cfg nn_it000 1
1061    set_namelist namelist_cfg nn_itend 75
1062    set_namelist namelist_cfg nn_fwb 0
1063    set_namelist namelist_cfg ln_ctl .false.
1064    set_namelist namelist_cfg ln_clobber .true.
1065    set_namelist namelist_cfg ln_read_cfg .true.
1066    set_namelist namelist_cfg ln_linssh .false.
1067    set_namelist namelist_cfg ln_icebergs .false.
1068    set_namelist namelist_cfg jpni 8
1069    set_namelist namelist_cfg jpnj 4
1070    set_namelist namelist_cfg jpnij 32
1071    set_namelist namelist_cfg ln_diaobs .true.
1072    set_namelist namelist_cfg ln_t3d .true.
1073    set_namelist namelist_cfg ln_s3d .true.
1074    set_namelist namelist_cfg ln_sst .true.
1075    set_namelist namelist_cfg ln_sla .true.
1076    set_namelist namelist_cfg ln_sic .true.
1077    set_namelist namelist_cfg ln_vel3d .true.
1078    set_namelist namelist_cfg ln_bkgwri .true.
1079    set_namelist namelist_cfg ln_trainc .true.
1080    set_namelist namelist_cfg ln_dyninc .true.
1081    set_namelist namelist_cfg ln_sshinc .true.
1082    set_namelist namelist_cfg ln_asmiau .true.
1083    #remove all useless options for pisces (due to ORCA2_LIM3_PISCES reference configuration)
1084    set_namelist namelist_top_cfg ln_trcdta .false.
1085    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
1086    # if not you need input files, and for tests is not necessary
1087    set_namelist namelist_pisces_cfg ln_presatm .false.
1088    set_namelist namelist_pisces_cfg ln_varpar .false.
1089    set_namelist namelist_pisces_cfg ln_dust .false.
1090    set_namelist namelist_pisces_cfg ln_solub .false.
1091    set_namelist namelist_pisces_cfg ln_river .false.
1092    set_namelist namelist_pisces_cfg ln_ndepo .false.
1093    set_namelist namelist_pisces_cfg ln_ironsed .false.
1094    set_namelist namelist_pisces_cfg ln_ironice .false.
1095    set_namelist namelist_pisces_cfg ln_hydrofe .false.
1096    if [ ${USING_MPMD} == "yes" ] ; then
1097       set_xio_using_server iodef.xml true
1098    else
1099       set_xio_using_server iodef.xml false
1100    fi
1101    cd ${SETTE_DIR}
1102    . ./prepare_job.sh input_ORCA2_LIM3_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1103    cd ${SETTE_DIR}
1104    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1105fi
1106# TEST FOR ORCA2_LIM3_AGRIF : simple test of running AGRIF (no restartability neither reproducibility tests)
1107if [ ${config} -eq 13 ] ;  then
1108    ## ORCA2_LIM3 with Agulhas AGRIF zoom in MPI
1109    export TEST_NAME="SHORT"
1110    cd ${CONFIG_DIR0}
1111    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_1_2 -r ORCA2_LIM3_PISCES -j 8 add_key "key_agrif" del_key "key_zdftmx"
1112    cd ${SETTE_DIR}
1113    . ./param.cfg
1114    . ./all_functions.sh
1115    . ./prepare_exe_dir.sh
1116    JOB_FILE=${EXE_DIR}/run_job.sh
1117    NPROC=2
1118    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1119    cd ${EXE_DIR}
1120    set_namelist namelist_cfg nn_it000 1
1121    set_namelist namelist_cfg nn_itend 75
1122    set_namelist namelist_cfg ln_ctl .false.
1123    set_namelist namelist_cfg ln_clobber .true.
1124    set_namelist namelist_cfg ln_read_cfg .true.
1125    set_namelist namelist_cfg ln_linssh .true.
1126    set_namelist namelist_cfg ln_hpg_sco .false.
1127    set_namelist namelist_cfg ln_hpg_zps .true.
1128    set_namelist namelist_cfg nn_fwb 0
1129    set_namelist namelist_cfg jpni 1
1130    set_namelist namelist_cfg jpnj 2
1131    set_namelist namelist_cfg jpnij 2
1132    set_namelist 1_namelist_cfg nn_it000 1
1133    set_namelist 1_namelist_cfg nn_itend 150
1134    set_namelist 1_namelist_cfg ln_ctl .false.
1135    set_namelist 1_namelist_cfg ln_clobber .true.
1136    set_namelist 1_namelist_cfg ln_read_cfg .true.
1137    set_namelist 1_namelist_cfg ln_linssh .true.
1138    set_namelist 1_namelist_cfg ln_hpg_sco .false.
1139    set_namelist 1_namelist_cfg ln_hpg_zps .true.
1140    if [ ${USING_MPMD} == "yes" ] ; then
1141       set_xio_using_server iodef.xml true
1142    else
1143       set_xio_using_server iodef.xml false
1144    fi
1145    cd ${SETTE_DIR}
1146    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1147    cd ${SETTE_DIR}
1148    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1149fi
1150
1151# test code corruption with AGRIF
1152# Compile and run with or without AGRIF ORCA2_LIM3
1153if [ ${config} -eq 14 ] ;  then
1154    # First run same as 15 but without zoom
1155    export TEST_NAME="SHORT_NOZOOM"
1156    cd ${CONFIG_DIR0}
1157    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_2_2 -r ORCA2_LIM3_PISCES -j 8 add_key "key_agrif" del_key "key_zdftmx"
1158    cd ${SETTE_DIR}
1159    . ./param.cfg
1160    . ./all_functions.sh
1161    . ./prepare_exe_dir.sh
1162    JOB_FILE=${EXE_DIR}/run_job.sh
1163    NPROC=4
1164    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1165    cd ${EXE_DIR}
1166    set_namelist namelist_cfg nn_it000 1
1167    set_namelist namelist_cfg nn_itend 75
1168    set_namelist namelist_cfg ln_ctl .false.
1169    set_namelist namelist_cfg ln_clobber .true.
1170    set_namelist namelist_cfg ln_read_cfg .true.
1171    set_namelist namelist_cfg ln_linssh .true.
1172    set_namelist namelist_cfg ln_hpg_sco .false.
1173    set_namelist namelist_cfg ln_hpg_zps .true.
1174    set_namelist namelist_cfg nn_fwb 0
1175    set_namelist namelist_cfg jpni 2
1176    set_namelist namelist_cfg jpnj 2
1177    set_namelist namelist_cfg jpnij 4
1178#
1179#   Set the number of fine grids to zero:   
1180    sed -i "1s/.*/0/" ${EXE_DIR}/AGRIF_FixedGrids.in
1181
1182    if [ ${USING_MPMD} == "yes" ] ; then
1183       set_xio_using_server iodef.xml true
1184    else
1185       set_xio_using_server iodef.xml false
1186    fi
1187    cd ${SETTE_DIR}
1188    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1189    cd ${SETTE_DIR}
1190    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1191
1192    export TEST_NAME="SHORT_NOAGRIF"
1193    cd ${CONFIG_DIR0}
1194    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_2_2_NAG -r ORCA2_LIM3_PISCES -j 8 del_key "key_zdftmx"
1195    cd ${SETTE_DIR}
1196    . ./param.cfg
1197    . ./all_functions.sh
1198    . ./prepare_exe_dir.sh
1199    JOB_FILE=${EXE_DIR}/run_job.sh
1200    NPROC=4
1201    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1202    cd ${EXE_DIR}
1203    set_namelist namelist_cfg nn_it000 1
1204    set_namelist namelist_cfg nn_itend 75
1205    set_namelist namelist_cfg ln_ctl .false.
1206    set_namelist namelist_cfg ln_clobber .true.
1207    set_namelist namelist_cfg ln_read_cfg .true.
1208    set_namelist namelist_cfg ln_linssh .true.
1209    set_namelist namelist_cfg ln_hpg_sco .false.
1210    set_namelist namelist_cfg ln_hpg_zps .true.
1211    set_namelist namelist_cfg nn_fwb 0
1212    set_namelist namelist_cfg jpni 2
1213    set_namelist namelist_cfg jpnj 2
1214    set_namelist namelist_cfg jpnij 4
1215#
1216    if [ ${USING_MPMD} == "yes" ] ; then
1217       set_xio_using_server iodef.xml true
1218    else
1219       set_xio_using_server iodef.xml false
1220    fi
1221    cd ${SETTE_DIR}
1222    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1223    cd ${SETTE_DIR}
1224    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1225
1226fi
1227
1228## Restartability tests for ORCA2_LIM3_AGRIF
1229if [ ${config} -eq 15 ] ;  then
1230    export TEST_NAME="LONG"
1231    cd ${CONFIG_DIR0}
1232    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_LONG -r ORCA2_LIM3_PISCES -j 8 add_key "key_agrif" del_key "key_zdftmx"
1233    cd ${SETTE_DIR}
1234    . ./param.cfg
1235    . ./all_functions.sh
1236    . ./prepare_exe_dir.sh
1237    JOB_FILE=${EXE_DIR}/run_job.sh
1238    NPROC=4
1239    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1240    cd ${EXE_DIR}
1241    set_namelist namelist_cfg cn_exp \"O2LP_LONG\"
1242    set_namelist namelist_cfg nn_it000 1
1243    set_namelist namelist_cfg nn_itend 150
1244    set_namelist namelist_cfg nn_stock 75
1245    set_namelist namelist_cfg ln_clobber .true.
1246    set_namelist namelist_cfg ln_read_cfg .true.
1247    set_namelist namelist_cfg ln_linssh .true.
1248    set_namelist namelist_cfg ln_hpg_sco .false.
1249    set_namelist namelist_cfg ln_hpg_zps .true.
1250    set_namelist namelist_cfg nn_fwb 0
1251    set_namelist namelist_cfg jpni 2
1252    set_namelist namelist_cfg jpnj 2
1253    set_namelist namelist_cfg jpnij 4
1254    set_namelist 1_namelist_cfg cn_exp \"O2LP_LONG\"
1255    set_namelist 1_namelist_cfg nn_it000 1
1256    set_namelist 1_namelist_cfg nn_itend 300
1257    set_namelist 1_namelist_cfg nn_stock 150
1258    set_namelist 1_namelist_cfg ln_ctl .false.
1259    set_namelist 1_namelist_cfg ln_clobber .true.
1260    set_namelist 1_namelist_cfg ln_read_cfg .true.
1261    set_namelist 1_namelist_cfg ln_linssh .true.
1262    set_namelist 1_namelist_cfg ln_hpg_sco .false.
1263    set_namelist 1_namelist_cfg ln_hpg_zps .true.
1264#
1265    if [ ${USING_MPMD} == "yes" ] ; then
1266       set_xio_using_server iodef.xml true
1267    else
1268       set_xio_using_server iodef.xml false
1269    fi
1270    cd ${SETTE_DIR}
1271    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1272   
1273    cd ${SETTE_DIR}
1274    export TEST_NAME="SHORT"
1275    . ./prepare_exe_dir.sh
1276    cd ${EXE_DIR}
1277    set_namelist namelist_cfg cn_exp \"O2LP_SHORT\"
1278    set_namelist namelist_cfg nn_it000 76
1279    set_namelist namelist_cfg nn_itend 150
1280    set_namelist namelist_cfg nn_stock 75
1281    set_namelist namelist_cfg ln_rstart .true.
1282    set_namelist namelist_cfg nn_rstctl 2
1283    set_namelist namelist_cfg ln_clobber .true.
1284    set_namelist namelist_cfg ln_read_cfg .true.
1285    set_namelist namelist_cfg ln_linssh .true.
1286    set_namelist namelist_cfg ln_hpg_sco .false.
1287    set_namelist namelist_cfg ln_hpg_zps .true.
1288    set_namelist namelist_cfg nn_fwb 0
1289    set_namelist namelist_cfg jpni 2
1290    set_namelist namelist_cfg jpnj 2
1291    set_namelist namelist_cfg jpnij 4
1292    set_namelist 1_namelist_cfg cn_exp \"O2LP_SHORT\"
1293    set_namelist 1_namelist_cfg nn_it000 151
1294    set_namelist 1_namelist_cfg nn_itend 300
1295    set_namelist 1_namelist_cfg nn_stock 150
1296    set_namelist 1_namelist_cfg ln_rstart .true.
1297    set_namelist 1_namelist_cfg nn_rstctl 2
1298    set_namelist 1_namelist_cfg ln_clobber .true.
1299    set_namelist 1_namelist_cfg ln_read_cfg .true.
1300    set_namelist 1_namelist_cfg ln_linssh .true.
1301    set_namelist 1_namelist_cfg ln_hpg_sco .false.
1302    set_namelist 1_namelist_cfg ln_hpg_zps .true.
1303    set_namelist namelist_cfg cn_ocerst_in \"O2LP_LONG_00000075_restart\"
1304    set_namelist namelist_ice_cfg cn_icerst_in \"O2LP_LONG_00000075_restart_ice\"
1305    set_namelist 1_namelist_cfg cn_ocerst_in \"O2LP_LONG_00000150_restart\"
1306
1307    for (( i=1; i<=$NPROC; i++)) ; do
1308        L_NPROC=$(( $i - 1 ))
1309        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1310        ln -sf ../LONG/O2LP_LONG_00000075_restart_${L_NPROC}.nc .
1311        ln -sf ../LONG/O2LP_LONG_00000075_restart_ice_${L_NPROC}.nc .
1312        ln -sf ../LONG/1_O2LP_LONG_00000150_restart_${L_NPROC}.nc .
1313    done
1314    if [ ${USING_MPMD} == "yes" ] ; then
1315       set_xio_using_server iodef.xml true
1316    else
1317       set_xio_using_server iodef.xml false
1318    fi
1319    cd ${SETTE_DIR}
1320    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1321    cd ${SETTE_DIR}
1322    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1323fi
1324
1325## Reproducibility tests for ORCA2_LIM3_AGRIF
1326if [ ${config} -eq 16 ] ;  then
1327    export TEST_NAME="REPRO_4_4"
1328    cd ${CONFIG_DIR0}
1329    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_16 -r ORCA2_LIM3_PISCES -j 8 add_key "key_agrif" del_key "key_zdftmx"
1330    cd ${SETTE_DIR}
1331    . ./param.cfg
1332    . ./all_functions.sh
1333    . ./prepare_exe_dir.sh
1334    JOB_FILE=${EXE_DIR}/run_job.sh
1335    NPROC=16
1336    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1337    cd ${EXE_DIR}
1338    set_namelist namelist_cfg nn_it000 1
1339    set_namelist namelist_cfg nn_itend 75
1340    set_namelist namelist_cfg ln_ctl .false.
1341    set_namelist namelist_cfg ln_clobber .true.
1342    set_namelist namelist_cfg ln_read_cfg .true.
1343    set_namelist namelist_cfg ln_linssh .true.
1344    set_namelist namelist_cfg ln_hpg_sco .false.
1345    set_namelist namelist_cfg ln_hpg_zps .true.
1346    set_namelist namelist_cfg nn_fwb 0
1347    set_namelist namelist_cfg jpni 4
1348    set_namelist namelist_cfg jpnj 4
1349    set_namelist namelist_cfg jpnij 16
1350    set_namelist 1_namelist_cfg nn_it000 1
1351    set_namelist 1_namelist_cfg nn_itend 150
1352    set_namelist 1_namelist_cfg ln_ctl .false.
1353    set_namelist 1_namelist_cfg ln_clobber .true.
1354    set_namelist 1_namelist_cfg ln_read_cfg .true.
1355    set_namelist 1_namelist_cfg ln_linssh .true.
1356    set_namelist 1_namelist_cfg ln_hpg_sco .false.
1357    set_namelist 1_namelist_cfg ln_hpg_zps .true.
1358
1359    if [ ${USING_MPMD} == "yes" ] ; then
1360       set_xio_using_server iodef.xml true
1361    else
1362       set_xio_using_server iodef.xml false
1363    fi
1364    cd ${SETTE_DIR}
1365    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1366    cd ${SETTE_DIR}
1367    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1368
1369    cd ${SETTE_DIR}
1370    export TEST_NAME="REPRO_2_8"
1371    . ./prepare_exe_dir.sh
1372    JOB_FILE=${EXE_DIR}/run_job.sh
1373    NPROC=16
1374    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1375    cd ${EXE_DIR}
1376    set_namelist namelist_cfg nn_it000 1
1377    set_namelist namelist_cfg nn_itend 75
1378    set_namelist namelist_cfg ln_ctl .false.
1379    set_namelist namelist_cfg ln_clobber .true.
1380    set_namelist namelist_cfg ln_read_cfg .true.
1381    set_namelist namelist_cfg ln_linssh .true.
1382    set_namelist namelist_cfg ln_hpg_sco .false.
1383    set_namelist namelist_cfg ln_hpg_zps .true.
1384    set_namelist namelist_cfg nn_fwb 0
1385    set_namelist namelist_cfg jpni 2
1386    set_namelist namelist_cfg jpnj 8
1387    set_namelist namelist_cfg jpnij 16
1388    set_namelist 1_namelist_cfg nn_it000 1
1389    set_namelist 1_namelist_cfg nn_itend 150
1390    set_namelist 1_namelist_cfg ln_ctl .false.
1391    set_namelist 1_namelist_cfg ln_clobber .true.
1392    set_namelist 1_namelist_cfg ln_read_cfg .true.
1393    set_namelist 1_namelist_cfg ln_linssh .true.
1394    set_namelist 1_namelist_cfg ln_hpg_sco .false.
1395    set_namelist 1_namelist_cfg ln_hpg_zps .true.
1396
1397    if [ ${USING_MPMD} == "yes" ] ; then
1398       set_xio_using_server iodef.xml true
1399    else
1400       set_xio_using_server iodef.xml false
1401    fi
1402    cd ${SETTE_DIR}
1403    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS} ${OMP_NTHR}
1404    cd ${SETTE_DIR}
1405    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1406fi
1407
1408done
Note: See TracBrowser for help on using the repository browser.