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

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

source: branches/UKMO/dev_r5518_GO6_package/NEMOGCM/SETTE/sette.sh @ 8442

Last change on this file since 8442 was 7993, checked in by frrh, 7 years ago

Merge in missing revisions 6428:2477 inclusive and 6482 from nemo_v3_6_STABLE
branch. In ptic, this includes the fix for restartability of runoff fields in coupled
models. Evolution of coupled models will therefor be affected.

These changes donot affect evolution of the current stand-alone NEMO-CICE GO6
standard configuration.

Work and testing documented in Met Office GMED ticket 320.

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