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_cfg-ref.sh in NEMO/branches/2019/fix_sette_ticket2239 – NEMO

source: NEMO/branches/2019/fix_sette_ticket2239/sette_cfg-ref.sh @ 10698

Last change on this file since 10698 was 10698, checked in by mathiot, 5 years ago

check exit code from NEMO (do not copy anything if it failed on exit code other than 0/123456/999) + rename run.stat/tracer.stat/ocean.output to *_old in the current validation dir (ticket #2239)

  • Property svn:executable set to *
File size: 59.5 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 -vx
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 nemo 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#                      (run.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#  clean_valid_dir    : rename ocean.output/run.stat and tracer.stat to avoid checking them in the report
69#                       ( not doing it could lead to false positive )
70#
71#  prepare_job.sh     : to generate the script run_job.sh
72#
73#  fcm_job.sh         : run in batch (INTERACT_FLAG="no") or interactive (INTERACT_FLAG="yes")
74#                        see sette.sh and BATCH_TEMPLATE directory
75#
76#  NOTE: jobs requiring initial or forcing data need to have an input_CONFIG.cfg in which
77#        can be found paths to the input tar file)
78#  NOTE: if job is not launched for any reason you have the executable ready in ${EXE_DIR}
79#        directory
80#  NOTE: the changed namelists are left in ${EXE_DIR} directory whereas original namelists
81#        remain in ${NEW_CONF}/EXP00
82#
83#  NOTE: a log file, output.sette, is created in ${SETTE_DIR} with the echoes of
84#        executed commands
85#
86#  NOTE: if sette.sh is stopped in output.sette there is written the last command
87#        executed by sette.sh
88#
89# example use: ./sette.sh
90#########################################################################################
91#
92# LOAD param value
93. ./param.cfg
94
95export BATCH_COMMAND_PAR=${BATCH_CMD}
96export BATCH_COMMAND_SEQ=${BATCH_CMD}
97export INTERACT_FLAG="no"
98export MPIRUN_FLAG="yes"
99export USING_XIOS="yes"
100export USING_ICEBERGS="yes"
101#
102export DEL_KEYS="key_iomput"
103if [ ${USING_XIOS} == "yes" ] 
104 then
105   export DEL_KEYS=""
106fi
107#
108export ADD_KEYS=""
109if [ ${ADD_NOSIGNEDZERO} == "yes" ]
110 then
111   export ADD_KEYS="key_nosignedzero"
112fi
113#
114# Settings which control the use of stand alone servers (only relevant if using xios)
115#
116export USING_MPMD="no"
117export NUM_XIOSERVERS=4
118export JOB_PREFIX=batch-mpmd
119#
120if [ ${USING_MPMD} == "no" ] 
121 then
122   export NUM_XIOSERVERS=0
123   export JOB_PREFIX=batch
124fi
125#
126#
127if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no" ]
128 then
129   echo "Incompatible choices. MPMD mode requires the XIOS server"
130   exit
131fi
132
133# Directory to run the tests
134SETTE_DIR=$(cd $(dirname "$0"); pwd)
135MAIN_DIR=$(dirname $SETTE_DIR)
136CONFIG_DIR0=${MAIN_DIR}/cfgs
137TOOLS_DIR=${MAIN_DIR}/tools
138
139CMP_NAM=${1:-$COMPILER}
140# Copy job_batch_COMPILER file for specific compiler into job_batch_template
141cd ${SETTE_DIR}
142cp BATCH_TEMPLATE/${JOB_PREFIX}-${COMPILER} job_batch_template || exit
143# Description of configuration tested:
144# GYRE_PISCES       :  1
145# ORCA2_ICE_PISCES  :  2
146# ORCA2_OFF_PISCES  :  3
147# AMM12             :  4
148# SAS               :  5
149# ORCA2_ICE_OBS     :  6
150# AGRIF             :  7 & 8  test AGRIF in a double zoom configuration in the nordic seas + 1 zoom in the eq. Pacific (AGRIF_DEMO)
151#                               and check that key_agrif without zoom = no key_agrif
152# SPITZ12           :  9      regional configuration including sea-ice and tides (Spitzbergen)
153
154for config in 1 2 3 4 5 6 7 8 9
155do
156
157# -----------
158# GYRE_PISCES
159# -----------
160if [ ${config} -eq 1 ] ;  then
161## Restartability tests for GYRE_PISCES
162    export TEST_NAME="LONG"
163    cd ${MAIN_DIR}
164    . ./makenemo -m ${CMP_NAM} -n GYRE_PISCES_ST -r GYRE_PISCES -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
165    cd ${SETTE_DIR}
166    . ./param.cfg
167    . ./all_functions.sh
168    . ./prepare_exe_dir.sh
169    clean_valid_dir
170    JOB_FILE=${EXE_DIR}/run_job.sh
171    NPROC=8
172    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
173    cd ${EXE_DIR} 
174    set_namelist namelist_cfg cn_exp \"GYREPIS_LONG\"
175    set_namelist namelist_cfg nn_it000 1
176    set_namelist namelist_cfg nn_itend 1080
177    set_namelist namelist_cfg nn_stock  540
178    set_namelist namelist_cfg ln_linssh .true.
179    set_namelist namelist_cfg jpni 2
180    set_namelist namelist_cfg jpnj 4
181    set_namelist namelist_cfg ln_ctl .false.
182    set_namelist namelist_cfg sn_cfctl%l_config .true.
183    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
184    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
185    if [ ${USING_MPMD} == "yes" ] ; then
186       set_xio_using_server iodef.xml true
187    else
188       set_xio_using_server iodef.xml false
189    fi
190    cd ${SETTE_DIR}
191    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
192
193    cd ${SETTE_DIR}
194    export TEST_NAME="SHORT"
195    . ./prepare_exe_dir.sh
196    clean_valid_dir
197    cd ${EXE_DIR}
198    set_namelist namelist_cfg cn_exp \"GYREPIS_SHORT\"
199    set_namelist namelist_cfg nn_it000 541
200    set_namelist namelist_cfg nn_itend 1080
201    set_namelist namelist_cfg nn_stock 540
202    set_namelist namelist_cfg ln_rstart .true.
203    set_namelist namelist_cfg nn_rstctl 2
204    set_namelist namelist_cfg ln_linssh .true.
205    set_namelist namelist_cfg jpni 2
206    set_namelist namelist_cfg jpnj 4
207    set_namelist namelist_cfg ln_ctl .false.
208    set_namelist namelist_cfg sn_cfctl%l_config .true.
209    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
210    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
211    set_namelist namelist_top_cfg ln_rsttr .true.
212    set_namelist namelist_top_cfg nn_rsttr 2
213    set_namelist namelist_cfg cn_ocerst_in \"GYREPIS_LONG_00000540_restart\"
214    set_namelist namelist_top_cfg cn_trcrst_in \"GYREPIS_LONG_00000540_restart_trc\"
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_00000540_restart_${L_NPROC}.nc .
224        ln -sf ../LONG/GYREPIS_LONG_00000540_restart_trc_${L_NPROC}.nc .
225    done
226    cd ${SETTE_DIR}
227    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
228    cd ${SETTE_DIR}
229    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
230
231## Reproducibility tests for GYRE_PISCES
232    export TEST_NAME="REPRO_2_4"
233    cd ${MAIN_DIR}
234    cd ${SETTE_DIR}
235    . ./param.cfg
236    . ./all_functions.sh
237    . ./prepare_exe_dir.sh
238    clean_valid_dir
239    JOB_FILE=${EXE_DIR}/run_job.sh
240    NPROC=8
241    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
242    cd ${EXE_DIR}
243    set_namelist namelist_cfg cn_exp \"GYREPIS_48\"
244    set_namelist namelist_cfg nn_it000 1
245    set_namelist namelist_cfg nn_itend 1080
246    set_namelist namelist_cfg ln_linssh .true.
247    set_namelist namelist_cfg jpni 2
248    set_namelist namelist_cfg jpnj 4
249    set_namelist namelist_cfg ln_ctl .false.
250    set_namelist namelist_cfg sn_cfctl%l_config .true.
251    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
252    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
253    if [ ${USING_MPMD} == "yes" ] ; then
254       set_xio_using_server iodef.xml true
255    else
256       set_xio_using_server iodef.xml false
257    fi
258    cd ${SETTE_DIR}
259    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
260    cd ${SETTE_DIR}
261    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
262
263    cd ${SETTE_DIR}
264    export TEST_NAME="REPRO_4_2"
265    . ./prepare_exe_dir.sh
266    clean_valid_dir
267    JOB_FILE=${EXE_DIR}/run_job.sh
268    NPROC=8
269    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
270    cd ${EXE_DIR}
271    set_namelist namelist_cfg cn_exp \"GYREPIS_84\"
272    set_namelist namelist_cfg nn_it000 1
273    set_namelist namelist_cfg nn_itend 1080
274    set_namelist namelist_cfg ln_linssh .true.
275    set_namelist namelist_cfg jpni 4
276    set_namelist namelist_cfg jpnj 2
277    set_namelist namelist_cfg ln_ctl .false.
278    set_namelist namelist_cfg sn_cfctl%l_config .true.
279    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
280    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
281    if [ ${USING_MPMD} == "yes" ] ; then
282       set_xio_using_server iodef.xml true
283    else
284       set_xio_using_server iodef.xml false
285    fi
286    cd ${SETTE_DIR}
287    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
288    cd ${SETTE_DIR}
289    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
290
291fi
292
293# -----------------
294# ORCA2_ICE_PISCES
295# -----------------
296if [ ${config} -eq 2 ] ;  then
297## Restartability tests for ORCA2_ICE_PISCES
298    export TEST_NAME="LONG"
299    cd ${MAIN_DIR}
300    . ./makenemo -m ${CMP_NAM} -n ORCA2_ICE_PISCES_ST -r ORCA2_ICE_PISCES -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
301    cd ${SETTE_DIR}
302    . ./param.cfg
303    . ./all_functions.sh
304    . ./prepare_exe_dir.sh
305    clean_valid_dir
306    JOB_FILE=${EXE_DIR}/run_job.sh
307    NPROC=32
308    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
309    cd ${EXE_DIR}
310    set_namelist namelist_cfg cn_exp \"O2L3P_LONG\"
311    set_namelist namelist_cfg nn_it000 1
312    set_namelist namelist_cfg nn_itend 990
313    set_namelist namelist_cfg nn_stock 495
314    set_namelist namelist_cfg jpni 4
315    set_namelist namelist_cfg jpnj 8
316    set_namelist namelist_cfg ln_ctl .false.
317    set_namelist namelist_cfg sn_cfctl%l_config .true.
318    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
319    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
320    set_namelist namelist_cfg ln_use_calving .true.
321    set_namelist namelist_cfg ln_wave .true.
322    set_namelist namelist_cfg ln_cdgw .true.
323    set_namelist namelist_cfg ln_sdw  .true.
324    set_namelist namelist_cfg nn_sdrift 1
325    set_namelist namelist_cfg ln_stcor .true.
326    set_namelist namelist_cfg ln_tauwoc .true.
327    set_namelist namelist_cfg nn_fsbc 5
328    #
329    if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi
330    # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0
331    #
332    set_namelist namelist_ice_cfg ln_icediachk .true.
333    set_namelist namelist_top_cfg ln_trcdta .false.
334    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
335    # if not you need input files, and for tests is not necessary
336    set_namelist namelist_pisces_cfg ln_presatm .false.
337    set_namelist namelist_pisces_cfg ln_varpar .false.
338    set_namelist namelist_pisces_cfg ln_dust .false.
339    set_namelist namelist_pisces_cfg ln_solub .false.
340    set_namelist namelist_pisces_cfg ln_river .false.
341    set_namelist namelist_pisces_cfg ln_ndepo .false.
342    set_namelist namelist_pisces_cfg ln_ironsed .false.
343    set_namelist namelist_pisces_cfg ln_ironice .false.
344    set_namelist namelist_pisces_cfg ln_hydrofe .false.
345    # put ln_pisdmp to false : no restoring to global mean value
346    set_namelist namelist_pisces_cfg ln_pisdmp .false.
347    if [ ${USING_MPMD} == "yes" ] ; then
348       set_xio_using_server iodef.xml true
349    else
350       set_xio_using_server iodef.xml false
351    fi
352    cd ${SETTE_DIR}
353    . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
354   
355    cd ${SETTE_DIR}
356    export TEST_NAME="SHORT"
357    . ./prepare_exe_dir.sh
358    clean_valid_dir
359    cd ${EXE_DIR}
360    set_namelist namelist_cfg cn_exp \"O2L3P_SHORT\"
361    set_namelist namelist_cfg nn_it000 496
362    set_namelist namelist_cfg nn_itend 990
363    set_namelist namelist_cfg nn_stock 495
364    set_namelist namelist_cfg ln_rstart .true.
365    set_namelist namelist_cfg nn_rstctl 2
366    set_namelist namelist_cfg jpni 4
367    set_namelist namelist_cfg jpnj 8
368    set_namelist namelist_cfg ln_ctl .false.
369    set_namelist namelist_cfg sn_cfctl%l_config .true.
370    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
371    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
372    set_namelist namelist_cfg nn_test_icebergs -1
373    set_namelist namelist_cfg ln_wave .true.
374    set_namelist namelist_cfg ln_cdgw .true.
375    set_namelist namelist_cfg ln_sdw  .true.
376    set_namelist namelist_cfg nn_sdrift 1
377    set_namelist namelist_cfg ln_stcor .true.
378    set_namelist namelist_cfg ln_tauwoc .true.
379    set_namelist namelist_cfg nn_fsbc 5
380    #
381    if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi
382    set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0
383    #
384    set_namelist namelist_ice_cfg ln_icediachk .true.
385    set_namelist namelist_top_cfg ln_rsttr .true.
386    set_namelist namelist_top_cfg nn_rsttr 2
387    set_namelist namelist_cfg cn_ocerst_in \"O2L3P_LONG_00000495_restart\"
388    set_namelist namelist_top_cfg cn_trcrst_in \"O2L3P_LONG_00000495_restart_trc\"
389    set_namelist namelist_ice_cfg cn_icerst_in \"O2L3P_LONG_00000495_restart_ice\"
390    set_namelist namelist_top_cfg ln_trcdta .false.
391    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
392    # if not you need input files, and for tests is not necessary
393    set_namelist namelist_pisces_cfg ln_presatm .false.
394    set_namelist namelist_pisces_cfg ln_varpar .false.
395    set_namelist namelist_pisces_cfg ln_dust .false.
396    set_namelist namelist_pisces_cfg ln_solub .false.
397    set_namelist namelist_pisces_cfg ln_river .false.
398    set_namelist namelist_pisces_cfg ln_ndepo .false.
399    set_namelist namelist_pisces_cfg ln_ironsed .false.
400    set_namelist namelist_pisces_cfg ln_ironice .false.
401    set_namelist namelist_pisces_cfg ln_hydrofe .false.
402    # put ln_pisdmp to false : no restoring to global mean value
403    set_namelist namelist_pisces_cfg ln_pisdmp .false.
404    for (( i=1; i<=$NPROC; i++)) ; do
405        L_NPROC=$(( $i - 1 ))
406        L_NPROC=`printf "%04d\n" ${L_NPROC}`
407        ln -sf ../LONG/O2L3P_LONG_00000495_restart_${L_NPROC}.nc .
408        ln -sf ../LONG/O2L3P_LONG_00000495_restart_trc_${L_NPROC}.nc .
409        ln -sf ../LONG/O2L3P_LONG_00000495_restart_ice_${L_NPROC}.nc .
410        if [ ${USING_ICEBERGS} == "yes" ]
411            then
412             ln -sf ../LONG/O2L3P_LONG_icebergs_00000495_restart_${L_NPROC}.nc O2L3P_LONG_00000495_restart_icebergs_${L_NPROC}.nc
413        fi
414    done
415    if [ ${USING_MPMD} == "yes" ] ; then
416       set_xio_using_server iodef.xml true
417    else
418       set_xio_using_server iodef.xml false
419    fi
420    cd ${SETTE_DIR}
421    . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
422    cd ${SETTE_DIR}
423    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
424
425## Reproducibility tests for ORCA2_ICE_PISCES
426    export TEST_NAME="REPRO_4_8"
427    cd ${MAIN_DIR}
428    cd ${SETTE_DIR}
429    . ./param.cfg
430    . ./all_functions.sh
431    . ./prepare_exe_dir.sh
432    clean_valid_dir
433    JOB_FILE=${EXE_DIR}/run_job.sh
434    NPROC=32
435    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
436    cd ${EXE_DIR}
437    set_namelist namelist_cfg cn_exp \"O2L3P_48\"
438    set_namelist namelist_cfg nn_it000 1
439    set_namelist namelist_cfg nn_itend 990
440    set_namelist namelist_cfg jpni 4
441    set_namelist namelist_cfg jpnj 8
442    set_namelist namelist_cfg ln_ctl .false.
443    set_namelist namelist_cfg sn_cfctl%l_config .true.
444    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
445    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
446    set_namelist namelist_cfg ln_wave .true.
447    set_namelist namelist_cfg ln_cdgw .true.
448    set_namelist namelist_cfg ln_sdw  .true.
449    set_namelist namelist_cfg nn_sdrift 1
450    set_namelist namelist_cfg ln_stcor .true.
451    set_namelist namelist_cfg ln_tauwoc .true.
452    set_namelist namelist_cfg nn_fsbc 5
453
454    if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi
455    # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0
456
457    set_namelist namelist_top_cfg ln_trcdta .false.
458    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
459    # if not you need input files, and for tests is not necessary
460    set_namelist namelist_pisces_cfg ln_presatm .false.
461    set_namelist namelist_pisces_cfg ln_varpar .false.
462    set_namelist namelist_pisces_cfg ln_dust .false.
463    set_namelist namelist_pisces_cfg ln_solub .false.
464    set_namelist namelist_pisces_cfg ln_river .false.
465    set_namelist namelist_pisces_cfg ln_ndepo .false.
466    set_namelist namelist_pisces_cfg ln_ironsed .false.
467    set_namelist namelist_pisces_cfg ln_ironice .false.
468    set_namelist namelist_pisces_cfg ln_hydrofe .false.
469    # put ln_pisdmp to false : no restoring to global mean value
470    set_namelist namelist_pisces_cfg ln_pisdmp .false.
471    if [ ${USING_MPMD} == "yes" ] ; then
472       set_xio_using_server iodef.xml true
473    else
474       set_xio_using_server iodef.xml false
475    fi
476    cd ${SETTE_DIR}
477    . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
478    cd ${SETTE_DIR}
479    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
480
481    cd ${SETTE_DIR}
482    export TEST_NAME="REPRO_8_4"
483    . ./prepare_exe_dir.sh
484    clean_valid_dir
485    JOB_FILE=${EXE_DIR}/run_job.sh
486    NPROC=32
487    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
488    cd ${EXE_DIR}
489    set_namelist namelist_cfg cn_exp \"O2L3P_84\"
490    set_namelist namelist_cfg nn_it000 1
491    set_namelist namelist_cfg nn_itend 990
492    set_namelist namelist_cfg jpni 8
493    set_namelist namelist_cfg jpnj 4
494    set_namelist namelist_cfg ln_ctl .false.
495    set_namelist namelist_cfg sn_cfctl%l_config .true.
496    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
497    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
498    set_namelist namelist_cfg ln_wave .true.
499    set_namelist namelist_cfg ln_cdgw .true.
500    set_namelist namelist_cfg ln_sdw  .true.
501    set_namelist namelist_cfg nn_sdrift 1
502    set_namelist namelist_cfg ln_stcor .true.
503    set_namelist namelist_cfg ln_tauwoc .true.
504    set_namelist namelist_cfg nn_fsbc 5
505
506    if [ ${USING_ICEBERGS} == "no" ] ; then set_namelist namelist_cfg ln_icebergs .false. ; fi
507    # for debugging purposes set_namelist namelist_cfg rn_test_box -180.0, 180.0, -90.0, -55.0
508
509    set_namelist namelist_top_cfg ln_trcdta .false.
510    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
511    # if not you need input files, and for tests is not necessary
512    set_namelist namelist_pisces_cfg ln_presatm .false.
513    set_namelist namelist_pisces_cfg ln_varpar .false.
514    set_namelist namelist_pisces_cfg ln_dust .false.
515    set_namelist namelist_pisces_cfg ln_solub .false.
516    set_namelist namelist_pisces_cfg ln_river .false.
517    set_namelist namelist_pisces_cfg ln_ndepo .false.
518    set_namelist namelist_pisces_cfg ln_ironsed .false.
519    set_namelist namelist_pisces_cfg ln_ironice .false.
520    set_namelist namelist_pisces_cfg ln_hydrofe .false.
521    # put ln_pisdmp to false : no restoring to global mean value
522    set_namelist namelist_pisces_cfg ln_pisdmp .false.
523    if [ ${USING_MPMD} == "yes" ] ; then
524       set_xio_using_server iodef.xml true
525    else
526       set_xio_using_server iodef.xml false
527    fi
528    cd ${SETTE_DIR}
529    . ./prepare_job.sh input_ORCA2_ICE_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
530    cd ${SETTE_DIR}
531    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
532fi
533
534# ----------------
535# ORCA2_OFF_PISCES
536# ----------------
537if [ ${config} -eq 3 ] ;  then
538## Restartability tests for ORCA2_OFF_PISCES
539    export TEST_NAME="LONG"
540    cd ${MAIN_DIR}
541    . ./makenemo -m ${CMP_NAM} -n ORCA2_OFF_PISCES_ST -r ORCA2_OFF_PISCES -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
542    cd ${SETTE_DIR}
543    . ./param.cfg
544    . ./all_functions.sh
545    . ./prepare_exe_dir.sh
546    clean_valid_dir
547    JOB_FILE=${EXE_DIR}/run_job.sh
548    NPROC=32
549    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
550    cd ${EXE_DIR}
551    set_namelist namelist_cfg cn_exp \"OFFP_LONG\"
552    set_namelist namelist_cfg nn_it000 1
553    set_namelist namelist_cfg nn_itend 380
554    set_namelist namelist_cfg nn_stock 190
555    set_namelist namelist_cfg jpni 4
556    set_namelist namelist_cfg jpnj 8
557    set_namelist namelist_cfg ln_ctl .false.
558    set_namelist namelist_cfg sn_cfctl%l_config .true.
559    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
560    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
561    set_namelist namelist_cfg ln_qsr_rgb .true.
562    set_namelist namelist_top_cfg ln_trcdta .false.
563    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
564    # if not you need input files, and for tests is not necessary
565    set_namelist namelist_pisces_cfg ln_presatm .false.
566    set_namelist namelist_pisces_cfg ln_varpar .false.
567    set_namelist namelist_pisces_cfg ln_dust .false.
568    set_namelist namelist_pisces_cfg ln_solub .false.
569    set_namelist namelist_pisces_cfg ln_river .false.
570    set_namelist namelist_pisces_cfg ln_ndepo .false.
571    set_namelist namelist_pisces_cfg ln_ironsed .false.
572    set_namelist namelist_pisces_cfg ln_ironice .false.
573    set_namelist namelist_pisces_cfg ln_hydrofe .false.
574    # put ln_pisdmp to false : no restoring to global mean value
575    set_namelist namelist_pisces_cfg ln_pisdmp .false.
576    if [ ${USING_MPMD} == "yes" ] ; then
577       set_xio_using_server iodef.xml true
578    else
579       set_xio_using_server iodef.xml false
580    fi
581    cd ${SETTE_DIR}
582    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
583   
584    cd ${SETTE_DIR}
585    export TEST_NAME="SHORT"
586    . ./prepare_exe_dir.sh
587    clean_valid_dir
588    cd ${EXE_DIR}
589    set_namelist namelist_cfg cn_exp \"OFFP_SHORT\"
590    set_namelist namelist_cfg nn_it000 191
591    set_namelist namelist_cfg nn_itend 380
592    set_namelist namelist_cfg nn_stock 190
593    set_namelist namelist_cfg jpni 4
594    set_namelist namelist_cfg jpnj 8
595    set_namelist namelist_cfg ln_ctl .false.
596    set_namelist namelist_cfg sn_cfctl%l_config .true.
597    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
598    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
599    set_namelist namelist_cfg ln_qsr_rgb .true.
600    set_namelist namelist_top_cfg ln_rsttr .true.
601    set_namelist namelist_top_cfg nn_rsttr 2
602    set_namelist namelist_top_cfg cn_trcrst_in \"OFFP_LONG_00000190_restart_trc\"
603    for (( i=1; i<=$NPROC; i++)) ; do
604        L_NPROC=$(( $i - 1 ))
605        L_NPROC=`printf "%04d\n" ${L_NPROC}`
606        ln -sf ../LONG/OFFP_LONG_00000190_restart_trc_${L_NPROC}.nc .
607    done
608    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
609    # if not you need input files, and for tests is not necessary
610    set_namelist namelist_pisces_cfg ln_presatm .false.
611    set_namelist namelist_pisces_cfg ln_varpar .false.
612    set_namelist namelist_pisces_cfg ln_dust .false.
613    set_namelist namelist_pisces_cfg ln_solub .false.
614    set_namelist namelist_pisces_cfg ln_river .false.
615    set_namelist namelist_pisces_cfg ln_ndepo .false.
616    set_namelist namelist_pisces_cfg ln_ironsed .false.
617    set_namelist namelist_pisces_cfg ln_ironice .false.
618    set_namelist namelist_pisces_cfg ln_hydrofe .false.
619    # put ln_pisdmp to false : no restoring to global mean value
620    set_namelist namelist_pisces_cfg ln_pisdmp .false.
621    if [ ${USING_MPMD} == "yes" ] ; then
622       set_xio_using_server iodef.xml true
623    else
624       set_xio_using_server iodef.xml false
625    fi
626    cd ${SETTE_DIR}
627    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME}  ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
628    cd ${SETTE_DIR}
629    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
630
631## Reproducibility tests for ORCA2_OFF_PISCES
632    export TEST_NAME="REPRO_4_8"
633    cd ${MAIN_DIR}
634    cd ${SETTE_DIR}
635    . ./param.cfg
636    . ./all_functions.sh
637    . ./prepare_exe_dir.sh
638    clean_valid_dir
639    JOB_FILE=${EXE_DIR}/run_job.sh
640    NPROC=32
641    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
642    cd ${EXE_DIR}
643    set_namelist namelist_cfg cn_exp \"OFFP_48\"
644    set_namelist namelist_cfg nn_it000 1
645    set_namelist namelist_cfg nn_itend 380
646    set_namelist namelist_cfg jpni 4
647    set_namelist namelist_cfg jpnj 8
648    set_namelist namelist_cfg ln_ctl .false.
649    set_namelist namelist_cfg sn_cfctl%l_config .true.
650    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
651    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
652    set_namelist namelist_cfg ln_qsr_rgb .true.
653    set_namelist namelist_top_cfg ln_trcdta .false.
654    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
655    # if not you need input files, and for tests is not necessary
656    set_namelist namelist_pisces_cfg ln_presatm .false.
657    set_namelist namelist_pisces_cfg ln_varpar .false.
658    set_namelist namelist_pisces_cfg ln_dust .false.
659    set_namelist namelist_pisces_cfg ln_solub .false.
660    set_namelist namelist_pisces_cfg ln_river .false.
661    set_namelist namelist_pisces_cfg ln_ndepo .false.
662    set_namelist namelist_pisces_cfg ln_ironsed .false.
663    set_namelist namelist_pisces_cfg ln_ironice .false.
664    set_namelist namelist_pisces_cfg ln_hydrofe .false.
665    # put ln_pisdmp to false : no restoring to global mean value
666    set_namelist namelist_pisces_cfg ln_pisdmp .false.
667    if [ ${USING_MPMD} == "yes" ] ; then
668       set_xio_using_server iodef.xml true
669    else
670       set_xio_using_server iodef.xml false
671    fi
672    cd ${SETTE_DIR}
673    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
674    cd ${SETTE_DIR}
675    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
676
677    cd ${SETTE_DIR}
678    export TEST_NAME="REPRO_8_4"
679    . ./prepare_exe_dir.sh
680    clean_valid_dir
681    JOB_FILE=${EXE_DIR}/run_job.sh
682    NPROC=32
683    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
684    cd ${EXE_DIR}
685    set_namelist namelist_cfg cn_exp \"OFFP_84\"
686    set_namelist namelist_cfg nn_it000 1
687    set_namelist namelist_cfg nn_itend 380
688    set_namelist namelist_cfg jpni 8
689    set_namelist namelist_cfg jpnj 4
690    set_namelist namelist_cfg ln_ctl .false.
691    set_namelist namelist_cfg sn_cfctl%l_config .true.
692    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
693    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
694    set_namelist namelist_cfg ln_qsr_rgb .true.
695    set_namelist namelist_top_cfg ln_trcdta .false.
696    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
697    # if not you need input files, and for tests is not necessary
698    set_namelist namelist_pisces_cfg ln_presatm .false.
699    set_namelist namelist_pisces_cfg ln_varpar .false.
700    set_namelist namelist_pisces_cfg ln_dust .false.
701    set_namelist namelist_pisces_cfg ln_solub .false.
702    set_namelist namelist_pisces_cfg ln_river .false.
703    set_namelist namelist_pisces_cfg ln_ndepo .false.
704    set_namelist namelist_pisces_cfg ln_ironsed .false.
705    set_namelist namelist_pisces_cfg ln_ironice .false.
706    set_namelist namelist_pisces_cfg ln_hydrofe .false.
707    # put ln_pisdmp to false : no restoring to global mean value
708    set_namelist namelist_pisces_cfg ln_pisdmp .false.
709    if [ ${USING_MPMD} == "yes" ] ; then
710       set_xio_using_server iodef.xml true
711    else
712       set_xio_using_server iodef.xml false
713    fi
714    cd ${SETTE_DIR}
715    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
716    cd ${SETTE_DIR}
717    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
718fi
719
720# -----
721# AMM12
722# -----
723if [ ${config} -eq 4 ] ;  then
724    ## Restartability tests for AMM12
725    export TEST_NAME="LONG"
726    cd ${MAIN_DIR}
727    . ./makenemo -m ${CMP_NAM} -n AMM12_ST -r AMM12 -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
728    cd ${SETTE_DIR}
729    . ./param.cfg
730    . ./all_functions.sh
731    . ./prepare_exe_dir.sh
732    clean_valid_dir
733    JOB_FILE=${EXE_DIR}/run_job.sh
734    NPROC=32
735    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
736    cd ${EXE_DIR}
737    set_namelist namelist_cfg cn_exp \"AMM12_LONG\"
738    set_namelist namelist_cfg nn_it000 1
739    set_namelist namelist_cfg nn_itend 576
740    set_namelist namelist_cfg nn_stock 288
741    set_namelist namelist_cfg jpni 4
742    set_namelist namelist_cfg jpnj 8
743    set_namelist namelist_cfg ln_ctl .false.
744    set_namelist namelist_cfg sn_cfctl%l_config .true.
745    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
746    if [ ${USING_MPMD} == "yes" ] ; then
747       set_xio_using_server iodef.xml true
748    else
749       set_xio_using_server iodef.xml false
750    fi
751    cd ${SETTE_DIR}
752    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
753
754    cd ${SETTE_DIR}
755    export TEST_NAME="SHORT"
756    . ./prepare_exe_dir.sh
757    clean_valid_dir
758    cd ${EXE_DIR}
759    set_namelist namelist_cfg cn_exp \"AMM12_SHORT\"
760    set_namelist namelist_cfg nn_it000 289
761    set_namelist namelist_cfg nn_itend 576
762    set_namelist namelist_cfg jpni 4
763    set_namelist namelist_cfg jpnj 8
764    set_namelist namelist_cfg ln_ctl .false.
765    set_namelist namelist_cfg sn_cfctl%l_config .true.
766    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
767    set_namelist namelist_cfg ln_rstart .true.
768    set_namelist namelist_cfg nn_rstctl 2
769    set_namelist namelist_cfg cn_ocerst_in \"AMM12_LONG_00000288_restart\"
770    set_namelist namelist_cfg nn_date0 20120102
771    for (( i=1; i<=$NPROC; i++)) ; do
772        L_NPROC=$(( $i - 1 ))
773        L_NPROC=`printf "%04d\n" ${L_NPROC}`
774        ln -sf ../LONG/AMM12_LONG_00000288_restart_${L_NPROC}.nc .
775    done
776    if [ ${USING_MPMD} == "yes" ] ; then
777       set_xio_using_server iodef.xml true
778    else
779       set_xio_using_server iodef.xml false
780    fi
781    cd ${SETTE_DIR}
782    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
783    cd ${SETTE_DIR}
784    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
785
786## Reproducibility tests for AMM12
787    export TEST_NAME="REPRO_8_4"
788    cd ${MAIN_DIR}
789    cd ${SETTE_DIR}
790    . ./param.cfg
791    . ./all_functions.sh
792    . ./prepare_exe_dir.sh
793    clean_valid_dir
794    JOB_FILE=${EXE_DIR}/run_job.sh
795    NPROC=32
796    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
797    cd ${EXE_DIR}
798    set_namelist namelist_cfg cn_exp \"AMM12_84\"
799    set_namelist namelist_cfg nn_it000 1
800    set_namelist namelist_cfg nn_itend 576
801    set_namelist namelist_cfg jpni 8
802    set_namelist namelist_cfg jpnj 4
803    set_namelist namelist_cfg ln_ctl .false.
804    set_namelist namelist_cfg sn_cfctl%l_config .true.
805    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
806    if [ ${USING_MPMD} == "yes" ] ; then
807       set_xio_using_server iodef.xml true
808    else
809       set_xio_using_server iodef.xml false
810    fi
811    cd ${SETTE_DIR}
812    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
813    cd ${SETTE_DIR}
814    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
815
816    cd ${SETTE_DIR}
817    export TEST_NAME="REPRO_4_8"
818    . ./prepare_exe_dir.sh
819    clean_valid_dir
820    JOB_FILE=${EXE_DIR}/run_job.sh
821    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
822    cd ${EXE_DIR}
823    set_namelist namelist_cfg cn_exp \"AMM12_48\"
824    set_namelist namelist_cfg nn_it000 1
825    set_namelist namelist_cfg nn_itend 576
826    set_namelist namelist_cfg jpni 4
827    set_namelist namelist_cfg jpnj 8
828    set_namelist namelist_cfg ln_ctl .false.
829    set_namelist namelist_cfg sn_cfctl%l_config .true.
830    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
831    if [ ${USING_MPMD} == "yes" ] ; then
832       set_xio_using_server iodef.xml true
833    else
834       set_xio_using_server iodef.xml false
835    fi
836    cd ${SETTE_DIR}
837    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
838    cd ${SETTE_DIR}
839    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
840fi
841
842
843# ---------
844# ORCA2_SAS
845# ---------
846if [ ${config} -eq 5 ] ;  then
847## Restartability tests
848    export TEST_NAME="LONG"
849    cd ${MAIN_DIR}
850    . ./makenemo -m ${CMP_NAM} -n ORCA2_SAS_ICE_ST -r ORCA2_SAS_ICE -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
851    cd ${SETTE_DIR}
852    . ./param.cfg
853    . ./all_functions.sh
854    . ./prepare_exe_dir.sh
855    clean_valid_dir
856    JOB_FILE=${EXE_DIR}/run_job.sh
857    NPROC=32
858    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
859    cd ${EXE_DIR}
860    set_namelist namelist_cfg cn_exp \"SAS\"
861    set_namelist namelist_cfg nn_it000 1
862    set_namelist namelist_cfg nn_itend 240
863    set_namelist namelist_cfg nn_stock 120
864    set_namelist namelist_cfg jpni 4
865    set_namelist namelist_cfg jpnj 8
866    set_namelist namelist_cfg ln_ctl .false.
867    set_namelist namelist_cfg sn_cfctl%l_config .true.
868    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
869    set_namelist namelist_ice_cfg ln_icediachk .true.
870    if [ ${USING_MPMD} == "yes" ] ; then
871       set_xio_using_server iodef.xml true
872    else
873       set_xio_using_server iodef.xml false
874    fi
875    cd ${SETTE_DIR}
876    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
877
878    cd ${SETTE_DIR}
879    export TEST_NAME="SHORT"
880    . ./prepare_exe_dir.sh
881    clean_valid_dir
882    cd ${EXE_DIR}
883    set_namelist namelist_cfg cn_exp \"SAS\"
884    set_namelist namelist_cfg nn_it000 121
885    set_namelist namelist_cfg nn_itend 240
886    set_namelist namelist_cfg jpni 4
887    set_namelist namelist_cfg jpnj 8
888    set_namelist namelist_cfg ln_ctl .false.
889    set_namelist namelist_cfg sn_cfctl%l_config .true.
890    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
891    set_namelist namelist_cfg ln_rstart .true.
892    set_namelist namelist_cfg nn_rstctl 2
893    set_namelist namelist_cfg nn_date0 010109
894    set_namelist namelist_cfg cn_ocerst_in \"SAS_00000120_restart\"
895    set_namelist namelist_ice_cfg cn_icerst_in \"SAS_00000120_restart_ice\"
896    if [ ${USING_MPMD} == "yes" ] ; then
897       set_xio_using_server iodef.xml true
898    else
899       set_xio_using_server iodef.xml false
900    fi
901    for (( i=1; i<=$NPROC; i++)) ; do
902        L_NPROC=$(( $i - 1 ))
903        L_NPROC=`printf "%04d\n" ${L_NPROC}`
904        ln -sf ../LONG/SAS_00000120_restart_${L_NPROC}.nc .
905        ln -sf ../LONG/SAS_00000120_restart_ice_${L_NPROC}.nc .
906    done
907    cd ${SETTE_DIR}
908    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
909    cd ${SETTE_DIR}
910    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
911
912## Reproducibility tests
913    export TEST_NAME="REPRO_4_8"
914    cd ${MAIN_DIR}
915    cd ${SETTE_DIR}
916    . ./param.cfg
917    . ./all_functions.sh
918    . ./prepare_exe_dir.sh
919    clean_valid_dir
920    JOB_FILE=${EXE_DIR}/run_job.sh
921    NPROC=32
922    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
923    cd ${EXE_DIR}
924    set_namelist namelist_cfg cn_exp \"SAS_48\"
925    set_namelist namelist_cfg nn_it000 1
926    set_namelist namelist_cfg nn_itend 75
927    set_namelist namelist_cfg jpni 4
928    set_namelist namelist_cfg jpnj 8
929    set_namelist namelist_cfg ln_ctl .false.
930    set_namelist namelist_cfg sn_cfctl%l_config .true.
931    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
932    if [ ${USING_MPMD} == "yes" ] ; then
933       set_xio_using_server iodef.xml true
934    else
935       set_xio_using_server iodef.xml false
936    fi
937    cd ${SETTE_DIR}
938    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
939    cd ${SETTE_DIR}
940    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
941
942    cd ${SETTE_DIR}
943    export TEST_NAME="REPRO_8_4"
944    . ./prepare_exe_dir.sh
945    clean_valid_dir
946    JOB_FILE=${EXE_DIR}/run_job.sh
947    NPROC=32
948    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
949    cd ${EXE_DIR}
950    set_namelist namelist_cfg cn_exp \"SAS_84\"
951    set_namelist namelist_cfg nn_it000 1
952    set_namelist namelist_cfg nn_itend 75
953    set_namelist namelist_cfg jpni 8
954    set_namelist namelist_cfg jpnj 4
955    set_namelist namelist_cfg ln_ctl .false.
956    set_namelist namelist_cfg sn_cfctl%l_config .true.
957    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
958    if [ ${USING_MPMD} == "yes" ] ; then
959       set_xio_using_server iodef.xml true
960    else
961       set_xio_using_server iodef.xml false
962    fi
963    cd ${SETTE_DIR}
964    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
965    cd ${SETTE_DIR}
966    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
967
968fi
969
970
971# --------------
972# ORCA2_ICE_OBS
973# --------------
974## Test assimilation interface code, OBS and ASM for reproducibility
975## Restartability not tested (ASM code not restartable while increments are being applied)
976if [ ${config} -eq 6 ] ; then
977## Reproducibility tests
978    export TEST_NAME="REPRO_4_8"
979    cd ${MAIN_DIR}
980    . ./makenemo -m ${CMP_NAM} -n ORCA2_ICE_OBS_ST -r ORCA2_ICE_PISCES -d "OCE ICE"  -j 8 add_key "key_asminc ${ADD_KEYS}" del_key "key_top"
981    cd ${SETTE_DIR}
982    . ./param.cfg
983    . ./all_functions.sh
984    . ./prepare_exe_dir.sh
985    clean_valid_dir
986    JOB_FILE=${EXE_DIR}/run_job.sh
987    NPROC=32
988    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
989    cd ${EXE_DIR}
990    set_namelist namelist_cfg cn_exp \"O2L3OBS_48\"
991    set_namelist namelist_cfg nn_it000 1
992    set_namelist namelist_cfg nn_itend 75
993    set_namelist namelist_cfg ln_read_cfg .true.
994    set_namelist namelist_cfg jpni 4
995    set_namelist namelist_cfg jpnj 8
996    set_namelist namelist_cfg ln_ctl .false.
997    set_namelist namelist_cfg sn_cfctl%l_config .true.
998    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
999    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
1000    set_namelist namelist_cfg ln_diaobs .true.
1001    set_namelist namelist_cfg ln_t3d .true.
1002    set_namelist namelist_cfg ln_s3d .true.
1003    set_namelist namelist_cfg ln_sst .true.
1004    set_namelist namelist_cfg ln_sla .true.
1005    set_namelist namelist_cfg ln_sic .true.
1006    set_namelist namelist_cfg ln_vel3d .true.
1007    set_namelist namelist_cfg ln_bkgwri .true.
1008    set_namelist namelist_cfg ln_trainc .true.
1009    set_namelist namelist_cfg ln_dyninc .true.
1010    set_namelist namelist_cfg ln_sshinc .true.
1011    set_namelist namelist_cfg ln_asmiau .true.
1012    #remove all useless options for pisces (due to ORCA2_ICE_PISCES reference configuration)
1013    set_namelist namelist_top_cfg ln_trcdta .false.
1014    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
1015    # if not you need input files, and for tests is not necessary
1016    set_namelist namelist_pisces_cfg ln_presatm .false.
1017    set_namelist namelist_pisces_cfg ln_varpar .false.
1018    set_namelist namelist_pisces_cfg ln_dust .false.
1019    set_namelist namelist_pisces_cfg ln_solub .false.
1020    set_namelist namelist_pisces_cfg ln_river .false.
1021    set_namelist namelist_pisces_cfg ln_ndepo .false.
1022    set_namelist namelist_pisces_cfg ln_ironsed .false.
1023    set_namelist namelist_pisces_cfg ln_ironice .false.
1024    set_namelist namelist_pisces_cfg ln_hydrofe .false.
1025    if [ ${USING_MPMD} == "yes" ] ; then
1026       set_xio_using_server iodef.xml true
1027    else
1028       set_xio_using_server iodef.xml false
1029    fi
1030    cd ${SETTE_DIR}
1031    . ./prepare_job.sh input_ORCA2_ICE_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1032    cd ${SETTE_DIR}
1033    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1034
1035   cd ${SETTE_DIR}
1036    export TEST_NAME="REPRO_8_4"
1037    . ./prepare_exe_dir.sh
1038    clean_valid_dir
1039    JOB_FILE=${EXE_DIR}/run_job.sh
1040    NPROC=32
1041    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1042    cd ${EXE_DIR}
1043    set_namelist namelist_cfg cn_exp \"O2L3OBS_84\"
1044    set_namelist namelist_cfg nn_it000 1
1045    set_namelist namelist_cfg nn_itend 75
1046    set_namelist namelist_cfg ln_read_cfg .true.
1047    set_namelist namelist_cfg jpni 8
1048    set_namelist namelist_cfg jpnj 4
1049    set_namelist namelist_cfg ln_ctl .false.
1050    set_namelist namelist_cfg sn_cfctl%l_config .true.
1051    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1052    set_namelist namelist_cfg sn_cfctl%l_trcstat .true.
1053    set_namelist namelist_cfg ln_diaobs .true.
1054    set_namelist namelist_cfg ln_t3d .true.
1055    set_namelist namelist_cfg ln_s3d .true.
1056    set_namelist namelist_cfg ln_sst .true.
1057    set_namelist namelist_cfg ln_sla .true.
1058    set_namelist namelist_cfg ln_sic .true.
1059    set_namelist namelist_cfg ln_vel3d .true.
1060    set_namelist namelist_cfg ln_bkgwri .true.
1061    set_namelist namelist_cfg ln_trainc .true.
1062    set_namelist namelist_cfg ln_dyninc .true.
1063    set_namelist namelist_cfg ln_sshinc .true.
1064    set_namelist namelist_cfg ln_asmiau .true.
1065    #remove all useless options for pisces (due to ORCA2_ICE_PISCES reference configuration)
1066    set_namelist namelist_top_cfg ln_trcdta .false.
1067    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
1068    # if not you need input files, and for tests is not necessary
1069    set_namelist namelist_pisces_cfg ln_presatm .false.
1070    set_namelist namelist_pisces_cfg ln_varpar .false.
1071    set_namelist namelist_pisces_cfg ln_dust .false.
1072    set_namelist namelist_pisces_cfg ln_solub .false.
1073    set_namelist namelist_pisces_cfg ln_river .false.
1074    set_namelist namelist_pisces_cfg ln_ndepo .false.
1075    set_namelist namelist_pisces_cfg ln_ironsed .false.
1076    set_namelist namelist_pisces_cfg ln_ironice .false.
1077    set_namelist namelist_pisces_cfg ln_hydrofe .false.
1078    if [ ${USING_MPMD} == "yes" ] ; then
1079       set_xio_using_server iodef.xml true
1080    else
1081       set_xio_using_server iodef.xml false
1082    fi
1083    cd ${SETTE_DIR}
1084    . ./prepare_job.sh input_ORCA2_ICE_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1085    cd ${SETTE_DIR}
1086    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1087fi
1088
1089# ------------
1090# AGRIF ICE
1091# -----------
1092if [ ${config} -eq 7 ] ;  then
1093## Restartability tests
1094    export TEST_NAME="LONG"
1095    cd ${MAIN_DIR}
1096    . ./makenemo -m ${CMP_NAM} -n AGRIF_DEMO_ST -r AGRIF_DEMO -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
1097    cd ${SETTE_DIR}
1098    . ./param.cfg
1099    . ./all_functions.sh
1100    . ./prepare_exe_dir.sh
1101    clean_valid_dir
1102    JOB_FILE=${EXE_DIR}/run_job.sh
1103    NPROC=16
1104    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1105    cd ${EXE_DIR}
1106    set_namelist namelist_cfg cn_exp \"AGRIF_LONG\"
1107    set_namelist namelist_cfg nn_it000 1
1108    set_namelist namelist_cfg nn_itend 20
1109    set_namelist namelist_cfg nn_stock 10
1110    set_namelist namelist_cfg ln_ctl .false.
1111    set_namelist namelist_cfg sn_cfctl%l_config .true.
1112    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1113    set_namelist 1_namelist_cfg cn_exp \"AGRIF_LONG\"
1114    set_namelist 1_namelist_cfg nn_it000 1
1115    set_namelist 1_namelist_cfg nn_itend 20
1116    set_namelist 1_namelist_cfg nn_stock 10
1117    set_namelist 1_namelist_cfg ln_ctl .false.
1118    set_namelist 1_namelist_cfg sn_cfctl%l_config .true.
1119    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
1120    set_namelist 2_namelist_cfg cn_exp \"AGRIF_LONG\"
1121    set_namelist 2_namelist_cfg nn_it000 1
1122    set_namelist 2_namelist_cfg nn_itend 80
1123    set_namelist 2_namelist_cfg nn_stock 40
1124    set_namelist 2_namelist_cfg ln_ctl .false.
1125    set_namelist 2_namelist_cfg sn_cfctl%l_config .true.
1126    set_namelist 2_namelist_cfg sn_cfctl%l_runstat .true.
1127    set_namelist 3_namelist_cfg cn_exp \"AGRIF_LONG\"
1128    set_namelist 3_namelist_cfg nn_it000 1
1129    set_namelist 3_namelist_cfg nn_itend 240
1130    set_namelist 3_namelist_cfg nn_stock 120
1131    set_namelist 3_namelist_cfg ln_ctl .false.
1132    set_namelist 3_namelist_cfg sn_cfctl%l_config .true.
1133    set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true.
1134
1135    if [ ${USING_MPMD} == "yes" ] ; then
1136       set_xio_using_server iodef.xml true
1137    else
1138       set_xio_using_server iodef.xml false
1139    fi
1140    cd ${SETTE_DIR}
1141    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1142   
1143    cd ${SETTE_DIR}
1144    export TEST_NAME="SHORT"
1145    . ./prepare_exe_dir.sh
1146    clean_valid_dir
1147    cd ${EXE_DIR}
1148    set_namelist namelist_cfg cn_exp \"AGRIF_SHORT\"
1149    set_namelist namelist_cfg nn_it000 11
1150    set_namelist namelist_cfg nn_itend 20
1151    set_namelist namelist_cfg nn_stock 10
1152    set_namelist namelist_cfg ln_ctl .false.
1153    set_namelist namelist_cfg sn_cfctl%l_config .true.
1154    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1155    set_namelist namelist_cfg ln_rstart .true.
1156    set_namelist namelist_cfg nn_rstctl 2
1157    set_namelist 1_namelist_cfg cn_exp \"AGRIF_SHORT\"
1158    set_namelist 1_namelist_cfg nn_it000 11
1159    set_namelist 1_namelist_cfg nn_itend 20
1160    set_namelist 1_namelist_cfg nn_stock 10
1161    set_namelist 1_namelist_cfg ln_ctl .false.
1162    set_namelist 1_namelist_cfg sn_cfctl%l_config .true.
1163    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
1164    set_namelist 1_namelist_cfg ln_rstart .true.
1165    set_namelist 1_namelist_cfg nn_rstctl 2
1166    set_namelist 2_namelist_cfg cn_exp \"AGRIF_SHORT\"
1167    set_namelist 2_namelist_cfg nn_it000 41
1168    set_namelist 2_namelist_cfg nn_itend 80
1169    set_namelist 2_namelist_cfg nn_stock 40
1170    set_namelist 2_namelist_cfg ln_ctl .false.
1171    set_namelist 2_namelist_cfg sn_cfctl%l_config .true.
1172    set_namelist 2_namelist_cfg sn_cfctl%l_runstat .true.
1173    set_namelist 2_namelist_cfg ln_rstart .true.
1174    set_namelist 2_namelist_cfg nn_rstctl 2
1175    set_namelist 3_namelist_cfg cn_exp \"AGRIF_SHORT\"
1176    set_namelist 3_namelist_cfg nn_it000 121
1177    set_namelist 3_namelist_cfg nn_itend 240
1178    set_namelist 3_namelist_cfg nn_stock 120
1179    set_namelist 3_namelist_cfg ln_ctl .false.
1180    set_namelist 3_namelist_cfg sn_cfctl%l_config .true.
1181    set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true.
1182    set_namelist 3_namelist_cfg ln_rstart .true.
1183    set_namelist 3_namelist_cfg nn_rstctl 2
1184    set_namelist namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000010_restart\"
1185    set_namelist namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000010_restart_ice\"
1186    set_namelist 1_namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000010_restart\"
1187    set_namelist 1_namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000010_restart_ice\"
1188    set_namelist 2_namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000040_restart\"
1189    set_namelist 2_namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000040_restart_ice\"
1190    set_namelist 3_namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000120_restart\"
1191    set_namelist 3_namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000120_restart_ice\"
1192
1193    for (( i=1; i<=$NPROC; i++)) ; do
1194        L_NPROC=$(( $i - 1 ))
1195        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1196        ln -sf ../LONG/AGRIF_LONG_00000010_restart_${L_NPROC}.nc .
1197        ln -sf ../LONG/AGRIF_LONG_00000010_restart_ice_${L_NPROC}.nc .
1198        ln -sf ../LONG/1_AGRIF_LONG_00000010_restart_${L_NPROC}.nc .
1199        ln -sf ../LONG/1_AGRIF_LONG_00000010_restart_ice_${L_NPROC}.nc .
1200        ln -sf ../LONG/2_AGRIF_LONG_00000040_restart_${L_NPROC}.nc .
1201        ln -sf ../LONG/2_AGRIF_LONG_00000040_restart_ice_${L_NPROC}.nc .
1202        ln -sf ../LONG/3_AGRIF_LONG_00000120_restart_${L_NPROC}.nc .
1203        ln -sf ../LONG/3_AGRIF_LONG_00000120_restart_ice_${L_NPROC}.nc .
1204    done
1205    if [ ${USING_MPMD} == "yes" ] ; then
1206       set_xio_using_server iodef.xml true
1207    else
1208       set_xio_using_server iodef.xml false
1209    fi
1210    cd ${SETTE_DIR}
1211    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1212    cd ${SETTE_DIR}
1213    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1214
1215## Reproducibility tests
1216    export TEST_NAME="REPRO_4_8"
1217    cd ${MAIN_DIR}
1218    cd ${SETTE_DIR}
1219    . ./param.cfg
1220    . ./all_functions.sh
1221    . ./prepare_exe_dir.sh
1222    clean_valid_dir
1223    JOB_FILE=${EXE_DIR}/run_job.sh
1224    NPROC=32
1225    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1226    cd ${EXE_DIR}
1227    set_namelist namelist_cfg cn_exp \"AGRIF_48\"
1228    set_namelist namelist_cfg nn_it000 1
1229    set_namelist namelist_cfg nn_itend 20
1230    set_namelist namelist_cfg jpni 4
1231    set_namelist namelist_cfg jpnj 8
1232    set_namelist namelist_cfg ln_ctl .false.
1233    set_namelist namelist_cfg sn_cfctl%l_config .true.
1234    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1235    set_namelist 1_namelist_cfg cn_exp \"AGRIF_48\"
1236    set_namelist 1_namelist_cfg nn_it000 1
1237    set_namelist 1_namelist_cfg nn_itend 20
1238    set_namelist 1_namelist_cfg jpni 4
1239    set_namelist 1_namelist_cfg jpnj 8
1240    set_namelist 1_namelist_cfg ln_ctl .false.
1241    set_namelist 1_namelist_cfg sn_cfctl%l_config .true.
1242    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
1243    set_namelist 2_namelist_cfg cn_exp \"AGRIF_48\"
1244    set_namelist 2_namelist_cfg nn_it000 1
1245    set_namelist 2_namelist_cfg nn_itend 80
1246    set_namelist 2_namelist_cfg jpni 4
1247    set_namelist 2_namelist_cfg jpnj 8
1248    set_namelist 2_namelist_cfg ln_ctl .false.
1249    set_namelist 2_namelist_cfg sn_cfctl%l_config .true.
1250    set_namelist 2_namelist_cfg sn_cfctl%l_runstat .true.
1251    set_namelist 3_namelist_cfg cn_exp \"AGRIF_48\"
1252    set_namelist 3_namelist_cfg nn_it000 1
1253    set_namelist 3_namelist_cfg nn_itend 240
1254    set_namelist 3_namelist_cfg jpni 4
1255    set_namelist 3_namelist_cfg jpnj 8
1256    set_namelist 3_namelist_cfg ln_ctl .false.
1257    set_namelist 3_namelist_cfg sn_cfctl%l_config .true.
1258    set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true.
1259
1260    if [ ${USING_MPMD} == "yes" ] ; then
1261       set_xio_using_server iodef.xml true
1262    else
1263       set_xio_using_server iodef.xml false
1264    fi
1265    cd ${SETTE_DIR}
1266    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1267    cd ${SETTE_DIR}
1268    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1269
1270    cd ${SETTE_DIR}
1271    export TEST_NAME="REPRO_8_4"
1272    . ./prepare_exe_dir.sh
1273    clean_valid_dir
1274    JOB_FILE=${EXE_DIR}/run_job.sh
1275    NPROC=32
1276    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1277    cd ${EXE_DIR}
1278    set_namelist namelist_cfg cn_exp \"AGRIF_84\"
1279    set_namelist namelist_cfg nn_it000 1
1280    set_namelist namelist_cfg nn_itend 20
1281    set_namelist namelist_cfg jpni 8
1282    set_namelist namelist_cfg jpnj 4
1283    set_namelist namelist_cfg ln_ctl .false.
1284    set_namelist namelist_cfg sn_cfctl%l_config .true.
1285    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1286    set_namelist 1_namelist_cfg cn_exp \"AGRIF_84\"
1287    set_namelist 1_namelist_cfg nn_it000 1
1288    set_namelist 1_namelist_cfg nn_itend 20
1289    set_namelist 1_namelist_cfg jpni 8
1290    set_namelist 1_namelist_cfg jpnj 4
1291    set_namelist 1_namelist_cfg ln_ctl .false.
1292    set_namelist 1_namelist_cfg sn_cfctl%l_config .true.
1293    set_namelist 1_namelist_cfg sn_cfctl%l_runstat .true.
1294    set_namelist 2_namelist_cfg cn_exp \"AGRIF_84\"
1295    set_namelist 2_namelist_cfg nn_it000 1
1296    set_namelist 2_namelist_cfg nn_itend 80
1297    set_namelist 2_namelist_cfg jpni 8
1298    set_namelist 2_namelist_cfg jpnj 4
1299    set_namelist 2_namelist_cfg ln_ctl .false.
1300    set_namelist 2_namelist_cfg sn_cfctl%l_config .true.
1301    set_namelist 2_namelist_cfg sn_cfctl%l_runstat .true.
1302    set_namelist 3_namelist_cfg cn_exp \"AGRIF_84\"
1303    set_namelist 3_namelist_cfg nn_it000 1
1304    set_namelist 3_namelist_cfg nn_itend 240
1305    set_namelist 3_namelist_cfg jpni 8
1306    set_namelist 3_namelist_cfg jpnj 4
1307    set_namelist 3_namelist_cfg ln_ctl .false.
1308    set_namelist 3_namelist_cfg sn_cfctl%l_config .true.
1309    set_namelist 3_namelist_cfg sn_cfctl%l_runstat .true.
1310
1311    if [ ${USING_MPMD} == "yes" ] ; then
1312       set_xio_using_server iodef.xml true
1313    else
1314       set_xio_using_server iodef.xml false
1315    fi
1316    cd ${SETTE_DIR}
1317    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1318    cd ${SETTE_DIR}
1319    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1320
1321## test code corruption with AGRIF (phase 1) ==> Compile with key_agrif but run with no zoom
1322    export TEST_NAME="ORCA2"
1323    cd ${MAIN_DIR}
1324    cd ${SETTE_DIR}
1325    . ./param.cfg
1326    . ./all_functions.sh
1327    . ./prepare_exe_dir.sh
1328    clean_valid_dir
1329    JOB_FILE=${EXE_DIR}/run_job.sh
1330    NPROC=32
1331    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1332    cd ${EXE_DIR}
1333    set_namelist namelist_cfg cn_exp \"ORCA2\"
1334    set_namelist namelist_cfg nn_it000 1
1335    set_namelist namelist_cfg nn_itend 150
1336    set_namelist namelist_cfg ln_ctl .false.
1337    set_namelist namelist_cfg sn_cfctl%l_config .true.
1338    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1339
1340#   Set the number of fine grids to zero:   
1341    sed -i "1s/.*/0/" ${EXE_DIR}/AGRIF_FixedGrids.in
1342
1343    if [ ${USING_MPMD} == "yes" ] ; then
1344       set_xio_using_server iodef.xml true
1345    else
1346       set_xio_using_server iodef.xml false
1347    fi
1348    cd ${SETTE_DIR}
1349    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1350    cd ${SETTE_DIR}
1351    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1352
1353fi
1354
1355
1356## test code corruption with AGRIF (phase 2) ==> Compile without key_agrif (to be compared with AGRIF_DEMO_ST/ORCA2)
1357if [ ${config} -eq 8 ] ;  then
1358    export TEST_NAME="ORCA2"
1359    cd ${MAIN_DIR}
1360    . ./makenemo -m ${CMP_NAM} -n AGRIF_DEMO_NOAGRIF_ST -r AGRIF_DEMO -j 8 add_key ${ADD_KEYS} del_key "key_agrif"
1361    cd ${SETTE_DIR}
1362    . ./param.cfg
1363    . ./all_functions.sh
1364    . ./prepare_exe_dir.sh
1365    clean_valid_dir
1366    JOB_FILE=${EXE_DIR}/run_job.sh
1367    NPROC=32
1368    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1369    cd ${EXE_DIR}
1370    set_namelist namelist_cfg cn_exp \"ORCA2\"
1371    set_namelist namelist_cfg nn_it000 1
1372    set_namelist namelist_cfg nn_itend 150
1373    set_namelist namelist_cfg ln_ctl .false.
1374    set_namelist namelist_cfg sn_cfctl%l_config .true.
1375    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1376#
1377    if [ ${USING_MPMD} == "yes" ] ; then
1378       set_xio_using_server iodef.xml true
1379    else
1380       set_xio_using_server iodef.xml false
1381    fi
1382    cd ${SETTE_DIR}
1383    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1384    cd ${SETTE_DIR}
1385    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1386
1387fi
1388
1389# -------
1390# SPITZ12
1391# -------
1392if [ ${config} -eq 9 ] ;  then
1393## Restartability tests
1394    export TEST_NAME="LONG"
1395    cd ${MAIN_DIR}
1396    . ./makenemo -m ${CMP_NAM} -n SPITZ12_ST -r SPITZ12 -j 8 add_key ${ADD_KEYS} del_key ${DEL_KEYS}
1397    cd ${SETTE_DIR}
1398    . ./param.cfg
1399    . ./all_functions.sh
1400    . ./prepare_exe_dir.sh
1401    clean_valid_dir
1402    JOB_FILE=${EXE_DIR}/run_job.sh
1403    NPROC=32
1404    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1405    cd ${EXE_DIR}
1406    set_namelist namelist_cfg cn_exp \"S12_LONG\"
1407    set_namelist namelist_cfg nn_it000 1
1408    set_namelist namelist_cfg nn_itend 240
1409    set_namelist namelist_cfg nn_stock 120
1410    set_namelist namelist_cfg nn_date0 20020101
1411    set_namelist namelist_cfg jpni 4
1412    set_namelist namelist_cfg jpnj 8
1413    set_namelist namelist_cfg ln_ctl .false.
1414    set_namelist namelist_cfg sn_cfctl%l_config .true.
1415    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1416    #set_namelist namelist_ice_cfg ln_icediachk .true.
1417    if [ ${USING_MPMD} == "yes" ] ; then
1418       set_xio_using_server iodef.xml true
1419    else
1420       set_xio_using_server iodef.xml false
1421    fi
1422    cd ${SETTE_DIR}
1423    . ./prepare_job.sh input_SPITZ12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1424   
1425    cd ${SETTE_DIR}
1426    export TEST_NAME="SHORT"
1427    . ./prepare_exe_dir.sh
1428    clean_valid_dir
1429    cd ${EXE_DIR}
1430    set_namelist namelist_cfg cn_exp \"S12_SHORT\"
1431    set_namelist namelist_cfg nn_it000 121
1432    set_namelist namelist_cfg nn_itend 240
1433    set_namelist namelist_cfg nn_stock 120
1434    set_namelist namelist_cfg ln_rstart .true.
1435    set_namelist namelist_cfg nn_rstctl 2
1436    set_namelist namelist_cfg jpni 4
1437    set_namelist namelist_cfg jpnj 8
1438    set_namelist namelist_cfg ln_ctl .false.
1439    set_namelist namelist_cfg sn_cfctl%l_config .true.
1440    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1441    set_namelist namelist_cfg cn_ocerst_in \"S12_LONG_00000120_restart\"
1442    set_namelist namelist_ice_cfg cn_icerst_in \"S12_LONG_00000120_restart_ice\"
1443    for (( i=1; i<=$NPROC; i++)) ; do
1444        L_NPROC=$(( $i - 1 ))
1445        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1446        ln -sf ../LONG/S12_LONG_00000120_restart_${L_NPROC}.nc .
1447        ln -sf ../LONG/S12_LONG_00000120_restart_ice_${L_NPROC}.nc .
1448    done
1449    if [ ${USING_MPMD} == "yes" ] ; then
1450       set_xio_using_server iodef.xml true
1451    else
1452       set_xio_using_server iodef.xml false
1453    fi
1454    cd ${SETTE_DIR}
1455    . ./prepare_job.sh input_SPITZ12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1456    cd ${SETTE_DIR}
1457    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1458
1459## Reproducibility tests
1460    export TEST_NAME="REPRO_4_8"
1461    cd ${MAIN_DIR}
1462    cd ${SETTE_DIR}
1463    . ./param.cfg
1464    . ./all_functions.sh
1465    . ./prepare_exe_dir.sh
1466    clean_valid_dir
1467    JOB_FILE=${EXE_DIR}/run_job.sh
1468    NPROC=32
1469    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1470    cd ${EXE_DIR}
1471    set_namelist namelist_cfg cn_exp \"S12_48\"
1472    set_namelist namelist_cfg nn_it000 1
1473    set_namelist namelist_cfg nn_itend 120
1474    set_namelist namelist_cfg nn_date0 20020101
1475    set_namelist namelist_cfg jpni 4
1476    set_namelist namelist_cfg jpnj 8
1477    set_namelist namelist_cfg ln_ctl .false.
1478    set_namelist namelist_cfg sn_cfctl%l_config .true.
1479    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1480    if [ ${USING_MPMD} == "yes" ] ; then
1481       set_xio_using_server iodef.xml true
1482    else
1483       set_xio_using_server iodef.xml false
1484    fi
1485    cd ${SETTE_DIR}
1486    . ./prepare_job.sh input_SPITZ12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1487    cd ${SETTE_DIR}
1488    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1489
1490    cd ${SETTE_DIR}
1491    export TEST_NAME="REPRO_8_4"
1492    . ./prepare_exe_dir.sh
1493    clean_valid_dir
1494    JOB_FILE=${EXE_DIR}/run_job.sh
1495    NPROC=32
1496    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1497    cd ${EXE_DIR}
1498    set_namelist namelist_cfg cn_exp \"S12_84\"
1499    set_namelist namelist_cfg nn_it000 1
1500    set_namelist namelist_cfg nn_itend 120
1501    set_namelist namelist_cfg nn_date0 20020101
1502    set_namelist namelist_cfg jpni 8
1503    set_namelist namelist_cfg jpnj 4
1504    set_namelist namelist_cfg ln_ctl .false.
1505    set_namelist namelist_cfg sn_cfctl%l_config .true.
1506    set_namelist namelist_cfg sn_cfctl%l_runstat .true.
1507    if [ ${USING_MPMD} == "yes" ] ; then
1508       set_xio_using_server iodef.xml true
1509    else
1510       set_xio_using_server iodef.xml false
1511    fi
1512    cd ${SETTE_DIR}
1513    . ./prepare_job.sh input_SPITZ12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1514    cd ${SETTE_DIR}
1515    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1516fi
1517
1518
1519done
Note: See TracBrowser for help on using the repository browser.