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/2017/dev_merge_2017/NEMOGCM/SETTE – NEMO

source: branches/2017/dev_merge_2017/NEMOGCM/SETTE/sette.sh @ 9507

Last change on this file since 9507 was 9507, checked in by clem, 6 years ago

add comments in SETTE for running AGRIF_NORDIC

  • Property svn:executable set to *
File size: 62.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 -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 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#                      (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#  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
91
92export BATCH_COMMAND_PAR="llsubmit"
93export BATCH_COMMAND_SEQ=$BATCH_COMMAND_PAR
94export INTERACT_FLAG="no"
95export MPIRUN_FLAG="yes"
96export USING_XIOS="yes"
97#
98export DEL_KEYS="key_iomput"
99if [ ${USING_XIOS} == "yes" ] 
100 then
101   export DEL_KEYS=""
102fi
103#
104# Settings which control the use of stand alone servers (only relevant if using xios)
105#
106export USING_MPMD="no"
107export NUM_XIOSERVERS=4
108export JOB_PREFIX=batch-mpmd
109#
110if [ ${USING_MPMD} == "no" ] 
111 then
112   export NUM_XIOSERVERS=0
113   export JOB_PREFIX=batch
114fi
115#
116#
117if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no"]
118 then
119   echo "Incompatible choices. MPMD mode requires the XIOS server"
120   exit
121fi
122
123# Directory to run the tests
124SETTE_DIR=$(cd $(dirname "$0"); pwd)
125MAIN_DIR=$(dirname $SETTE_DIR)
126CONFIG_DIR0=${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_PISCES       :  1
136# ORCA2_LIM3_PISCES :  2
137# ORCA2_OFF_PISCES  :  3
138# AMM12             :  4
139# SAS               :  5     fos SAS there is no run.stat so is useless to test REPRO
140# ISOMIP            :  6
141# ORCA2_LIM3_OBS    :  7
142# ORCA2_AGRIF_LIM3  :  8
143# ORCA2AGR          :  9 & 10  AGRIF active with no zoom, compared to no AGRIF cpp key
144# AGRIF             :  11 & 12  test AGRIF in a double zoom configuration (AGRIF_NORDIC)
145#                               and check that key_agrif without zoom = no key_agrif
146
147for config in 1 2 3 4 5 6 7 8 9 10 11 12
148do
149
150# TESTS FOR GYRE_PISCES CONFIGURATION
151if [ ${config} -eq 1 ] ;  then
152    ## Restartability tests for GYRE_PISCES
153    export TEST_NAME="LONG"
154    cd ${CONFIG_DIR0}
155    . ./makenemo -m ${CMP_NAM} -n GYREPIS_ST -r GYRE_PISCES -j 8 del_key ${DEL_KEYS}
156    cd ${SETTE_DIR}
157    . ./param.cfg
158    . ./all_functions.sh
159    . ./prepare_exe_dir.sh
160    JOB_FILE=${EXE_DIR}/run_job.sh
161    NPROC=32
162    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
163    cd ${EXE_DIR} 
164    set_namelist namelist_cfg cn_exp \"GYREPIS_LONG\"
165    set_namelist namelist_cfg nn_it000 1
166    set_namelist namelist_cfg nn_itend 120
167    set_namelist namelist_cfg nn_stock 60
168    set_namelist namelist_cfg ln_clobber .true.
169    set_namelist namelist_cfg ln_linssh .true.
170    set_namelist namelist_cfg ln_read_cfg .false.
171    set_namelist namelist_cfg nn_fwb 0
172    set_namelist namelist_cfg jpni 4
173    set_namelist namelist_cfg jpnj 8
174    set_namelist namelist_cfg jpnij 32
175    if [ ${USING_MPMD} == "yes" ] ; then
176       set_xio_using_server iodef.xml true
177    else
178       set_xio_using_server iodef.xml false
179    fi
180    cd ${SETTE_DIR}
181    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
182
183    cd ${SETTE_DIR}
184    export TEST_NAME="SHORT"
185    . ./prepare_exe_dir.sh
186    cd ${EXE_DIR}
187    set_namelist namelist_cfg cn_exp \"GYREPIS_SHORT\"
188    set_namelist namelist_cfg nn_it000 61
189    set_namelist namelist_cfg nn_itend 120
190    set_namelist namelist_cfg nn_stock 60
191    set_namelist namelist_cfg ln_rstart .true.
192    set_namelist namelist_cfg nn_rstctl 2
193    set_namelist namelist_cfg ln_clobber .true.
194    set_namelist namelist_cfg ln_linssh .true.
195    set_namelist namelist_cfg ln_read_cfg .false.
196    set_namelist namelist_cfg nn_fwb 0
197    set_namelist namelist_cfg jpni 4
198    set_namelist namelist_cfg jpnj 8
199    set_namelist namelist_cfg jpnij 32
200    set_namelist namelist_top_cfg ln_rsttr .true.
201    set_namelist namelist_top_cfg nn_rsttr 2
202    set_namelist namelist_cfg cn_ocerst_in \"GYREPIS_LONG_00000060_restart\"
203    set_namelist namelist_top_cfg cn_trcrst_in \"GYREPIS_LONG_00000060_restart_trc\"
204    if [ ${USING_MPMD} == "yes" ] ; then
205       set_xio_using_server iodef.xml true
206    else
207       set_xio_using_server iodef.xml false
208    fi
209    for (( i=1; i<=$NPROC; i++)) ; do
210        L_NPROC=$(( $i - 1 ))
211        L_NPROC=`printf "%04d\n" ${L_NPROC}`
212        ln -sf ../LONG/GYREPIS_LONG_00000060_restart_${L_NPROC}.nc .
213        ln -sf ../LONG/GYREPIS_LONG_00000060_restart_trc_${L_NPROC}.nc .
214    done
215    if [ ${USING_MPMD} == "yes" ] ; then
216       set_xio_using_server iodef.xml true
217    else
218       set_xio_using_server iodef.xml false
219    fi
220    cd ${SETTE_DIR}
221    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
222    cd ${SETTE_DIR}
223    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
224
225    ## Reproducibility tests for GYRE_PISCES
226    export TEST_NAME="REPRO_4_8"
227    cd ${CONFIG_DIR0}
228    cd ${SETTE_DIR}
229    . ./param.cfg
230    . ./all_functions.sh
231    . ./prepare_exe_dir.sh
232    JOB_FILE=${EXE_DIR}/run_job.sh
233    NPROC=32
234    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
235    cd ${EXE_DIR}
236    set_namelist namelist_cfg cn_exp \"GYREPIS_48\"
237    set_namelist namelist_cfg nn_it000 1
238    set_namelist namelist_cfg nn_itend 60
239    set_namelist namelist_cfg nn_fwb 0
240    set_namelist namelist_cfg ln_ctl .false.
241    set_namelist namelist_cfg ln_clobber .true.
242    set_namelist namelist_cfg ln_linssh .true.
243    set_namelist namelist_cfg ln_read_cfg .false.
244    set_namelist namelist_cfg jpni 4
245    set_namelist namelist_cfg jpnj 8
246    set_namelist namelist_cfg jpnij 32
247    if [ ${USING_MPMD} == "yes" ] ; then
248       set_xio_using_server iodef.xml true
249    else
250       set_xio_using_server iodef.xml false
251    fi
252    cd ${SETTE_DIR}
253    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
254    cd ${SETTE_DIR}
255    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
256
257    cd ${SETTE_DIR}
258    export TEST_NAME="REPRO_8_4"
259    . ./prepare_exe_dir.sh
260    JOB_FILE=${EXE_DIR}/run_job.sh
261    NPROC=32
262    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
263    cd ${EXE_DIR}
264    set_namelist namelist_cfg cn_exp \"GYREPIS_84\"
265    set_namelist namelist_cfg nn_it000 1
266    set_namelist namelist_cfg nn_itend 60
267    set_namelist namelist_cfg nn_fwb 0
268    set_namelist namelist_cfg ln_ctl .false.
269    set_namelist namelist_cfg ln_clobber .true.
270    set_namelist namelist_cfg ln_linssh .true.
271    set_namelist namelist_cfg ln_read_cfg .false.
272    set_namelist namelist_cfg jpni 8
273    set_namelist namelist_cfg jpnj 4
274    set_namelist namelist_cfg jpnij 32
275    if [ ${USING_MPMD} == "yes" ] ; then
276       set_xio_using_server iodef.xml true
277    else
278       set_xio_using_server iodef.xml false
279    fi
280    cd ${SETTE_DIR}
281    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
282    cd ${SETTE_DIR}
283    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
284
285fi
286
287# TESTS FOR ORCA2_LIM3_PISCES CONFIGURATION
288if [ ${config} -eq 2 ] ;  then
289    ## Restartability tests for ORCA2_LIM3_PISCES
290    export TEST_NAME="LONG"
291    cd ${CONFIG_DIR0}
292    . ./makenemo -m ${CMP_NAM} -n ORCA2LIM3PIS_ST -r ORCA2_LIM3_PISCES -j 8 del_key ${DEL_KEYS}
293    cd ${SETTE_DIR}
294    . ./param.cfg
295    . ./all_functions.sh
296    . ./prepare_exe_dir.sh
297    JOB_FILE=${EXE_DIR}/run_job.sh
298    NPROC=32
299    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
300    cd ${EXE_DIR}
301    set_namelist namelist_cfg cn_exp \"O2L3P_LONG\"
302    set_namelist namelist_cfg nn_it000 1
303    set_namelist namelist_cfg nn_itend 150
304    set_namelist namelist_cfg nn_stock 75
305    set_namelist namelist_cfg ln_clobber .true.
306    set_namelist namelist_cfg ln_read_cfg .true.
307    set_namelist namelist_cfg ln_linssh .false.
308    set_namelist namelist_cfg ln_icebergs .true.
309    set_namelist namelist_cfg nn_fwb 0
310    set_namelist namelist_cfg jpni 4
311    set_namelist namelist_cfg jpnj 8
312    set_namelist namelist_cfg jpnij 32
313    set_namelist namelist_ice_cfg ln_icediachk .true.
314##    set_namelist namelist_ice_cfg ln_icediahsb .true.
315    set_namelist namelist_top_cfg ln_trcdta .false.
316    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
317    # if not you need input files, and for tests is not necessary
318    set_namelist namelist_pisces_cfg ln_presatm .false.
319    set_namelist namelist_pisces_cfg ln_varpar .false.
320    set_namelist namelist_pisces_cfg ln_dust .false.
321    set_namelist namelist_pisces_cfg ln_solub .false.
322    set_namelist namelist_pisces_cfg ln_river .false.
323    set_namelist namelist_pisces_cfg ln_ndepo .false.
324    set_namelist namelist_pisces_cfg ln_ironsed .false.
325    set_namelist namelist_pisces_cfg ln_ironice .false.
326    set_namelist namelist_pisces_cfg ln_hydrofe .false.
327    # put ln_pisdmp to false : no restoring to global mean value
328    set_namelist namelist_pisces_cfg ln_pisdmp .false.
329    if [ ${USING_MPMD} == "yes" ] ; then
330       set_xio_using_server iodef.xml true
331    else
332       set_xio_using_server iodef.xml false
333    fi
334    cd ${SETTE_DIR}
335    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
336   
337    cd ${SETTE_DIR}
338    export TEST_NAME="SHORT"
339    . ./prepare_exe_dir.sh
340    cd ${EXE_DIR}
341    set_namelist namelist_cfg cn_exp \"O2L3P_SHORT\"
342    set_namelist namelist_cfg nn_it000 76
343    set_namelist namelist_cfg nn_itend 150
344    set_namelist namelist_cfg nn_stock 75
345    set_namelist namelist_cfg ln_rstart .true.
346    set_namelist namelist_cfg nn_rstctl 2
347    set_namelist namelist_cfg ln_clobber .true.
348    set_namelist namelist_cfg ln_read_cfg .true.
349    set_namelist namelist_cfg ln_linssh .false.
350    set_namelist namelist_cfg ln_icebergs .true.
351    set_namelist namelist_cfg nn_fwb 0
352    set_namelist namelist_cfg jpni 4
353    set_namelist namelist_cfg jpnj 8
354    set_namelist namelist_cfg jpnij 32
355    set_namelist namelist_ice_cfg ln_icediachk .true.
356##    set_namelist namelist_ice_cfg ln_icediahsb .true.
357    set_namelist namelist_top_cfg ln_rsttr .true.
358    set_namelist namelist_top_cfg nn_rsttr 2
359    set_namelist namelist_cfg cn_ocerst_in \"O2L3P_LONG_00000075_restart\"
360    set_namelist namelist_top_cfg cn_trcrst_in \"O2L3P_LONG_00000075_restart_trc\"
361    set_namelist namelist_ice_cfg cn_icerst_in \"O2L3P_LONG_00000075_restart_ice\"
362    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
363    # if not you need input files, and for tests is not necessary
364    set_namelist namelist_pisces_cfg ln_presatm .false.
365    set_namelist namelist_pisces_cfg ln_varpar .false.
366    set_namelist namelist_pisces_cfg ln_dust .false.
367    set_namelist namelist_pisces_cfg ln_solub .false.
368    set_namelist namelist_pisces_cfg ln_river .false.
369    set_namelist namelist_pisces_cfg ln_ndepo .false.
370    set_namelist namelist_pisces_cfg ln_ironsed .false.
371    set_namelist namelist_pisces_cfg ln_ironice .false.
372    set_namelist namelist_pisces_cfg ln_hydrofe .false.
373    # put ln_pisdmp to false : no restoring to global mean value
374    set_namelist namelist_pisces_cfg ln_pisdmp .false.
375    for (( i=1; i<=$NPROC; i++)) ; do
376        L_NPROC=$(( $i - 1 ))
377        L_NPROC=`printf "%04d\n" ${L_NPROC}`
378        ln -sf ../LONG/O2L3P_LONG_00000075_restart_${L_NPROC}.nc .
379        ln -sf ../LONG/O2L3P_LONG_00000075_restart_trc_${L_NPROC}.nc .
380        ln -sf ../LONG/O2L3P_LONG_00000075_restart_ice_${L_NPROC}.nc .
381        ln -sf ../LONG/O2L3P_LONG_icebergs_00000075_restart_${L_NPROC}.nc O2L3P_LONG_00000075_restart_icebergs_${L_NPROC}.nc
382    done
383    if [ ${USING_MPMD} == "yes" ] ; then
384       set_xio_using_server iodef.xml true
385    else
386       set_xio_using_server iodef.xml false
387    fi
388    cd ${SETTE_DIR}
389    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
390    cd ${SETTE_DIR}
391    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
392
393    ## Reproducibility tests for ORCA2_LIM3_PISCES
394    export TEST_NAME="REPRO_4_8"
395    cd ${CONFIG_DIR0}
396    cd ${SETTE_DIR}
397    . ./param.cfg
398    . ./all_functions.sh
399    . ./prepare_exe_dir.sh
400    JOB_FILE=${EXE_DIR}/run_job.sh
401    NPROC=32
402    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
403    cd ${EXE_DIR}
404    set_namelist namelist_cfg cn_exp \"O2L3P_48\"
405    set_namelist namelist_cfg nn_it000 1
406    set_namelist namelist_cfg nn_itend 75
407    set_namelist namelist_cfg ln_ctl .false.
408    set_namelist namelist_cfg ln_clobber .true.
409    set_namelist namelist_cfg ln_read_cfg .true.
410    set_namelist namelist_cfg ln_linssh .false.
411    set_namelist namelist_cfg ln_icebergs .true.
412    set_namelist namelist_cfg nn_fwb 0
413    set_namelist namelist_cfg jpni 4
414    set_namelist namelist_cfg jpnj 8
415    set_namelist namelist_cfg jpnij 32
416    set_namelist namelist_ice_cfg ln_icediachk .true.
417##    set_namelist namelist_ice_cfg ln_icediahsb .true.
418    set_namelist namelist_top_cfg ln_trcdta .false.
419    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
420    # if not you need input files, and for tests is not necessary
421    set_namelist namelist_pisces_cfg ln_presatm .false.
422    set_namelist namelist_pisces_cfg ln_varpar .false.
423    set_namelist namelist_pisces_cfg ln_dust .false.
424    set_namelist namelist_pisces_cfg ln_solub .false.
425    set_namelist namelist_pisces_cfg ln_river .false.
426    set_namelist namelist_pisces_cfg ln_ndepo .false.
427    set_namelist namelist_pisces_cfg ln_ironsed .false.
428    set_namelist namelist_pisces_cfg ln_ironice .false.
429    set_namelist namelist_pisces_cfg ln_hydrofe .false.
430    # put ln_pisdmp to false : no restoring to global mean value
431    set_namelist namelist_pisces_cfg ln_pisdmp .false.
432    if [ ${USING_MPMD} == "yes" ] ; then
433       set_xio_using_server iodef.xml true
434    else
435       set_xio_using_server iodef.xml false
436    fi
437    cd ${SETTE_DIR}
438    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
439    cd ${SETTE_DIR}
440    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
441
442    cd ${SETTE_DIR}
443    export TEST_NAME="REPRO_8_4"
444    . ./prepare_exe_dir.sh
445    JOB_FILE=${EXE_DIR}/run_job.sh
446    NPROC=32
447    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
448    cd ${EXE_DIR}
449    set_namelist namelist_cfg cn_exp \"O2L3P_84\"
450    set_namelist namelist_cfg nn_it000 1
451    set_namelist namelist_cfg nn_itend 75
452    set_namelist namelist_cfg ln_clobber .true.
453    set_namelist namelist_cfg ln_read_cfg .true.
454    set_namelist namelist_cfg ln_linssh .false.
455    set_namelist namelist_cfg ln_icebergs .true.
456    set_namelist namelist_cfg nn_fwb 0
457    set_namelist namelist_cfg jpni 8
458    set_namelist namelist_cfg jpnj 4
459    set_namelist namelist_cfg jpnij 32
460    set_namelist namelist_ice_cfg ln_icediachk .true.
461##    set_namelist namelist_ice_cfg ln_icediahsb .true.
462    set_namelist namelist_top_cfg ln_trcdta .false.
463    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
464    # if not you need input files, and for tests is not necessary
465    set_namelist namelist_pisces_cfg ln_presatm .false.
466    set_namelist namelist_pisces_cfg ln_varpar .false.
467    set_namelist namelist_pisces_cfg ln_dust .false.
468    set_namelist namelist_pisces_cfg ln_solub .false.
469    set_namelist namelist_pisces_cfg ln_river .false.
470    set_namelist namelist_pisces_cfg ln_ndepo .false.
471    set_namelist namelist_pisces_cfg ln_ironsed .false.
472    set_namelist namelist_pisces_cfg ln_ironice .false.
473    set_namelist namelist_pisces_cfg ln_hydrofe .false.
474    # put ln_pisdmp to false : no restoring to global mean value
475    set_namelist namelist_pisces_cfg ln_pisdmp .false.
476    if [ ${USING_MPMD} == "yes" ] ; then
477       set_xio_using_server iodef.xml true
478    else
479       set_xio_using_server iodef.xml false
480    fi
481    cd ${SETTE_DIR}
482    . ./prepare_job.sh input_ORCA2_LIM3_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
483    cd ${SETTE_DIR}
484    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
485fi
486
487# TESTS FOR ORCA2_OFF_PISCES CONFIGURATION
488if [ ${config} -eq 3 ] ;  then
489    ## Restartability tests for ORCA2_OFF_PISCES
490    export TEST_NAME="LONG"
491    cd ${CONFIG_DIR0}
492    . ./makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_ST -r ORCA2_OFF_PISCES -j 8 del_key ${DEL_KEYS}
493    cd ${SETTE_DIR}
494    . ./param.cfg
495    . ./all_functions.sh
496    . ./prepare_exe_dir.sh
497    JOB_FILE=${EXE_DIR}/run_job.sh
498    NPROC=32
499    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
500    cd ${EXE_DIR}
501    set_namelist namelist_cfg cn_exp \"OFFP_LONG\"
502    set_namelist namelist_cfg nn_it000 1
503    set_namelist namelist_cfg nn_itend 40
504    set_namelist namelist_cfg nn_stock 20
505    set_namelist namelist_cfg ln_clobber .true.
506    set_namelist namelist_cfg ln_read_cfg .true.
507    set_namelist namelist_cfg ln_linssh .true.
508    set_namelist namelist_cfg jpni 4
509    set_namelist namelist_cfg jpnj 8
510    set_namelist namelist_cfg jpnij 32
511    set_namelist namelist_top_cfg ln_trcdta .false.
512    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
513    # if not you need input files, and for tests is not necessary
514    set_namelist namelist_pisces_cfg ln_presatm .false.
515    set_namelist namelist_pisces_cfg ln_varpar .false.
516    set_namelist namelist_pisces_cfg ln_dust .false.
517    set_namelist namelist_pisces_cfg ln_solub .false.
518    set_namelist namelist_pisces_cfg ln_river .false.
519    set_namelist namelist_pisces_cfg ln_ndepo .false.
520    set_namelist namelist_pisces_cfg ln_ironsed .false.
521    set_namelist namelist_pisces_cfg ln_ironice .false.
522    set_namelist namelist_pisces_cfg ln_hydrofe .false.
523    # put ln_pisdmp to false : no restoring to global mean value
524    set_namelist namelist_pisces_cfg ln_pisdmp .false.
525    if [ ${USING_MPMD} == "yes" ] ; then
526       set_xio_using_server iodef.xml true
527    else
528       set_xio_using_server iodef.xml false
529    fi
530    cd ${SETTE_DIR}
531    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
532   
533    cd ${SETTE_DIR}
534    export TEST_NAME="SHORT"
535    . ./prepare_exe_dir.sh
536    cd ${EXE_DIR}
537    set_namelist namelist_cfg cn_exp \"OFFP_SHORT\"
538    set_namelist namelist_cfg nn_it000 21
539    set_namelist namelist_cfg nn_itend 40
540    set_namelist namelist_cfg nn_stock 20
541    set_namelist namelist_cfg ln_clobber .true.
542    set_namelist namelist_cfg ln_read_cfg .true.
543    set_namelist namelist_cfg ln_linssh .true.
544    set_namelist namelist_cfg jpni 4
545    set_namelist namelist_cfg jpnj 8
546    set_namelist namelist_cfg jpnij 32
547    set_namelist namelist_top_cfg ln_rsttr .true.
548    set_namelist namelist_top_cfg nn_rsttr 2
549    set_namelist namelist_top_cfg cn_trcrst_in \"OFFP_LONG_00000020_restart_trc\"
550    for (( i=1; i<=$NPROC; i++)) ; do
551        L_NPROC=$(( $i - 1 ))
552        L_NPROC=`printf "%04d\n" ${L_NPROC}`
553        ln -sf ../LONG/OFFP_LONG_00000020_restart_trc_${L_NPROC}.nc .
554    done
555    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
556    # if not you need input files, and for tests is not necessary
557    set_namelist namelist_pisces_cfg ln_presatm .false.
558    set_namelist namelist_pisces_cfg ln_varpar .false.
559    set_namelist namelist_pisces_cfg ln_dust .false.
560    set_namelist namelist_pisces_cfg ln_solub .false.
561    set_namelist namelist_pisces_cfg ln_river .false.
562    set_namelist namelist_pisces_cfg ln_ndepo .false.
563    set_namelist namelist_pisces_cfg ln_ironsed .false.
564    set_namelist namelist_pisces_cfg ln_ironice .false.
565    set_namelist namelist_pisces_cfg ln_hydrofe .false.
566    # put ln_pisdmp to false : no restoring to global mean value
567    set_namelist namelist_pisces_cfg ln_pisdmp .false.
568    if [ ${USING_MPMD} == "yes" ] ; then
569       set_xio_using_server iodef.xml true
570    else
571       set_xio_using_server iodef.xml false
572    fi
573    cd ${SETTE_DIR}
574    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME}  ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
575    cd ${SETTE_DIR}
576    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
577
578    ## Reproducibility tests for ORCA2_OFF_PISCES
579    export TEST_NAME="REPRO_4_8"
580    cd ${CONFIG_DIR0}
581    cd ${SETTE_DIR}
582    . ./param.cfg
583    . ./all_functions.sh
584    . ./prepare_exe_dir.sh
585    JOB_FILE=${EXE_DIR}/run_job.sh
586    NPROC=32
587    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
588    cd ${EXE_DIR}
589    set_namelist namelist_cfg cn_exp \"OFFP_48\"
590    set_namelist namelist_cfg nn_it000 1
591    set_namelist namelist_cfg nn_itend 40
592    set_namelist namelist_cfg ln_ctl .false.
593    set_namelist namelist_cfg ln_clobber .true.
594    set_namelist namelist_cfg ln_read_cfg .true.
595    set_namelist namelist_cfg ln_linssh .true.
596    set_namelist namelist_cfg jpni 4
597    set_namelist namelist_cfg jpnj 8
598    set_namelist namelist_cfg jpnij 32
599    set_namelist namelist_top_cfg ln_trcdta .false.
600    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
601    # if not you need input files, and for tests is not necessary
602    set_namelist namelist_pisces_cfg ln_presatm .false.
603    set_namelist namelist_pisces_cfg ln_varpar .false.
604    set_namelist namelist_pisces_cfg ln_dust .false.
605    set_namelist namelist_pisces_cfg ln_solub .false.
606    set_namelist namelist_pisces_cfg ln_river .false.
607    set_namelist namelist_pisces_cfg ln_ndepo .false.
608    set_namelist namelist_pisces_cfg ln_ironsed .false.
609    set_namelist namelist_pisces_cfg ln_ironice .false.
610    set_namelist namelist_pisces_cfg ln_hydrofe .false.
611    # put ln_pisdmp to false : no restoring to global mean value
612    set_namelist namelist_pisces_cfg ln_pisdmp .false.
613    if [ ${USING_MPMD} == "yes" ] ; then
614       set_xio_using_server iodef.xml true
615    else
616       set_xio_using_server iodef.xml false
617    fi
618    cd ${SETTE_DIR}
619    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
620    cd ${SETTE_DIR}
621    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
622
623    cd ${SETTE_DIR}
624    export TEST_NAME="REPRO_8_4"
625    . ./prepare_exe_dir.sh
626    JOB_FILE=${EXE_DIR}/run_job.sh
627    NPROC=32
628    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
629    cd ${EXE_DIR}
630    set_namelist namelist_cfg cn_exp \"OFFP_84\"
631    set_namelist namelist_cfg nn_it000 1
632    set_namelist namelist_cfg nn_itend 40
633    set_namelist namelist_cfg ln_ctl .false.
634    set_namelist namelist_cfg ln_clobber .true.
635    set_namelist namelist_cfg ln_read_cfg .true.
636    set_namelist namelist_cfg ln_linssh .true.
637    set_namelist namelist_cfg jpni 8
638    set_namelist namelist_cfg jpnj 4
639    set_namelist namelist_cfg jpnij 32
640    set_namelist namelist_top_cfg ln_trcdta .false.
641    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
642    # if not you need input files, and for tests is not necessary
643    set_namelist namelist_pisces_cfg ln_presatm .false.
644    set_namelist namelist_pisces_cfg ln_varpar .false.
645    set_namelist namelist_pisces_cfg ln_dust .false.
646    set_namelist namelist_pisces_cfg ln_solub .false.
647    set_namelist namelist_pisces_cfg ln_river .false.
648    set_namelist namelist_pisces_cfg ln_ndepo .false.
649    set_namelist namelist_pisces_cfg ln_ironsed .false.
650    set_namelist namelist_pisces_cfg ln_ironice .false.
651    set_namelist namelist_pisces_cfg ln_hydrofe .false.
652    # put ln_pisdmp to false : no restoring to global mean value
653    set_namelist namelist_pisces_cfg ln_pisdmp .false.
654    if [ ${USING_MPMD} == "yes" ] ; then
655       set_xio_using_server iodef.xml true
656    else
657       set_xio_using_server iodef.xml false
658    fi
659    cd ${SETTE_DIR}
660    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
661    cd ${SETTE_DIR}
662    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
663fi
664
665# TESTS FOR AMM12 CONFIGURATION
666if [ ${config} -eq 4 ] ;  then
667    ## Restartability tests for AMM12
668    export TEST_NAME="LONG"
669    cd ${CONFIG_DIR0}
670    . ./makenemo -m ${CMP_NAM} -n AMM12_ST -r AMM12 -j 8 del_key ${DEL_KEYS}
671    cd ${SETTE_DIR}
672    . ./param.cfg
673    . ./all_functions.sh
674    . ./prepare_exe_dir.sh
675    JOB_FILE=${EXE_DIR}/run_job.sh
676    NPROC=32
677    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
678    cd ${EXE_DIR}
679    set_namelist namelist_cfg cn_exp \"AMM12_LONG\"
680    set_namelist namelist_cfg nn_it000 1
681    set_namelist namelist_cfg nn_itend 576
682    set_namelist namelist_cfg nn_stock 288
683    set_namelist namelist_cfg nn_fwb 0
684    set_namelist namelist_cfg ln_ctl .false.
685    set_namelist namelist_cfg ln_clobber .true.
686    set_namelist namelist_cfg ln_read_cfg .true.
687    set_namelist namelist_cfg ln_linssh .false.
688##SF
689    set_namelist namelist_cfg ln_lin .true.
690    set_namelist namelist_cfg ln_loglayer .false.
691##SF
692    set_namelist namelist_cfg jpni 4
693    set_namelist namelist_cfg jpnj 8
694    set_namelist namelist_cfg jpnij 32
695    if [ ${USING_MPMD} == "yes" ] ; then
696       set_xio_using_server iodef.xml true
697    else
698       set_xio_using_server iodef.xml false
699    fi
700    cd ${SETTE_DIR}
701    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
702
703    cd ${SETTE_DIR}
704    export TEST_NAME="SHORT"
705    . ./prepare_exe_dir.sh
706    cd ${EXE_DIR}
707    set_namelist namelist_cfg cn_exp \"AMM12_SHORT\"
708    set_namelist namelist_cfg nn_it000 289
709    set_namelist namelist_cfg nn_itend 576
710    set_namelist namelist_cfg nn_fwb 0
711    set_namelist namelist_cfg ln_ctl .false.
712    set_namelist namelist_cfg ln_clobber .true.
713    set_namelist namelist_cfg ln_read_cfg .true.
714    set_namelist namelist_cfg ln_linssh .false.
715##SF
716    set_namelist namelist_cfg ln_lin .true.
717    set_namelist namelist_cfg ln_loglayer .false.
718##SF
719    set_namelist namelist_cfg jpni 4
720    set_namelist namelist_cfg jpnj 8
721    set_namelist namelist_cfg jpnij 32
722    set_namelist namelist_cfg ln_rstart .true.
723    set_namelist namelist_cfg nn_rstctl 2
724    set_namelist namelist_cfg cn_ocerst_in \"AMM12_LONG_00000288_restart\"
725    set_namelist namelist_cfg nn_date0 20120102
726    for (( i=1; i<=$NPROC; i++)) ; do
727        L_NPROC=$(( $i - 1 ))
728        L_NPROC=`printf "%04d\n" ${L_NPROC}`
729        ln -sf ../LONG/AMM12_LONG_00000288_restart_${L_NPROC}.nc .
730    done
731    if [ ${USING_MPMD} == "yes" ] ; then
732       set_xio_using_server iodef.xml true
733    else
734       set_xio_using_server iodef.xml false
735    fi
736    cd ${SETTE_DIR}
737    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
738    cd ${SETTE_DIR}
739    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
740
741## Reproducibility tests for AMM12
742    export TEST_NAME="REPRO_8_4"
743    cd ${CONFIG_DIR0}
744    cd ${SETTE_DIR}
745    . ./param.cfg
746    . ./all_functions.sh
747    . ./prepare_exe_dir.sh
748    JOB_FILE=${EXE_DIR}/run_job.sh
749    NPROC=32
750    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
751    cd ${EXE_DIR}
752    set_namelist namelist_cfg cn_exp \"AMM12_84\"
753    set_namelist namelist_cfg nn_it000 1
754    set_namelist namelist_cfg nn_itend 576
755    set_namelist namelist_cfg nn_fwb 0
756    set_namelist namelist_cfg ln_ctl .false.
757    set_namelist namelist_cfg ln_clobber .true.
758    set_namelist namelist_cfg ln_read_cfg .true.
759    set_namelist namelist_cfg ln_linssh .false.
760##SF
761    set_namelist namelist_cfg ln_lin .true.
762    set_namelist namelist_cfg ln_loglayer .false.
763##SF
764    set_namelist namelist_cfg jpni 8
765    set_namelist namelist_cfg jpnj 4
766    set_namelist namelist_cfg jpnij 32
767    if [ ${USING_MPMD} == "yes" ] ; then
768       set_xio_using_server iodef.xml true
769    else
770       set_xio_using_server iodef.xml false
771    fi
772    cd ${SETTE_DIR}
773    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
774    cd ${SETTE_DIR}
775    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
776
777    cd ${SETTE_DIR}
778    export TEST_NAME="REPRO_4_8"
779    . ./prepare_exe_dir.sh
780    JOB_FILE=${EXE_DIR}/run_job.sh
781    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
782    cd ${EXE_DIR}
783    set_namelist namelist_cfg cn_exp \"AMM12_48\"
784    set_namelist namelist_cfg nn_it000 1
785    set_namelist namelist_cfg nn_itend 576
786    set_namelist namelist_cfg nn_fwb 0
787    set_namelist namelist_cfg ln_ctl .false.
788    set_namelist namelist_cfg ln_clobber .true.
789    set_namelist namelist_cfg ln_read_cfg .true.
790    set_namelist namelist_cfg ln_linssh .false.
791##SF
792    set_namelist namelist_cfg ln_lin .true.
793    set_namelist namelist_cfg ln_loglayer .false.
794##SF
795    set_namelist namelist_cfg jpni 4
796    set_namelist namelist_cfg jpnj 8
797    set_namelist namelist_cfg jpnij 32
798    if [ ${USING_MPMD} == "yes" ] ; then
799       set_xio_using_server iodef.xml true
800    else
801       set_xio_using_server iodef.xml false
802    fi
803    cd ${SETTE_DIR}
804    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
805    cd ${SETTE_DIR}
806    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
807fi
808
809
810# TESTS FOR ORCA2_SAS_LIM3 CONFIGURATION
811if [ ${config} -eq 5 ] ;  then
812    ## Restartability tests for SAS
813    export TEST_NAME="LONG"
814    cd ${CONFIG_DIR0}
815    . ./makenemo -m ${CMP_NAM} -n SAS_ST -r ORCA2_SAS_LIM3 -j 8 del_key ${DEL_KEYS}
816    cd ${SETTE_DIR}
817    . ./param.cfg
818    . ./all_functions.sh
819    . ./prepare_exe_dir.sh
820    JOB_FILE=${EXE_DIR}/run_job.sh
821    NPROC=32
822    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
823    cd ${EXE_DIR}
824    set_namelist namelist_cfg cn_exp \"SAS\"
825    set_namelist namelist_cfg nn_it000 1
826    set_namelist namelist_cfg nn_itend 240
827    set_namelist namelist_cfg nn_stock 120
828    set_namelist namelist_cfg ln_ctl .false.
829    set_namelist namelist_cfg ln_clobber .true.
830    set_namelist namelist_cfg ln_read_cfg .true.
831    set_namelist namelist_cfg ln_linssh .true.
832    set_namelist namelist_cfg nn_fwb 0
833    set_namelist namelist_cfg jpni 4
834    set_namelist namelist_cfg jpnj 8
835    set_namelist namelist_cfg jpnij 32
836    set_namelist namelist_ice_cfg ln_icediachk .true.
837    if [ ${USING_MPMD} == "yes" ] ; then
838       set_xio_using_server iodef.xml true
839    else
840       set_xio_using_server iodef.xml false
841    fi
842    cd ${SETTE_DIR}
843    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
844
845    cd ${SETTE_DIR}
846    export TEST_NAME="SHORT"
847    . ./prepare_exe_dir.sh
848    cd ${EXE_DIR}
849    set_namelist namelist_cfg cn_exp \"SAS\"
850    set_namelist namelist_cfg nn_it000 121
851    set_namelist namelist_cfg nn_itend 240
852    set_namelist namelist_cfg ln_ctl .false.
853    set_namelist namelist_cfg ln_clobber .true.
854    set_namelist namelist_cfg ln_read_cfg .true.
855    set_namelist namelist_cfg ln_linssh .true.
856    set_namelist namelist_cfg nn_fwb 0
857    set_namelist namelist_cfg jpni 4
858    set_namelist namelist_cfg jpnj 8
859    set_namelist namelist_cfg jpnij 32
860    set_namelist namelist_cfg ln_rstart .true.
861    set_namelist namelist_cfg nn_rstctl 2
862    set_namelist namelist_cfg nn_date0 010109
863    set_namelist namelist_cfg cn_ocerst_in \"SAS_00000120_restart\"
864    set_namelist namelist_ice_cfg cn_icerst_in \"SAS_00000120_restart_ice\"
865    if [ ${USING_MPMD} == "yes" ] ; then
866       set_xio_using_server iodef.xml true
867    else
868       set_xio_using_server iodef.xml false
869    fi
870    for (( i=1; i<=$NPROC; i++)) ; do
871        L_NPROC=$(( $i - 1 ))
872        L_NPROC=`printf "%04d\n" ${L_NPROC}`
873        ln -sf ../LONG/SAS_00000120_restart_${L_NPROC}.nc .
874        ln -sf ../LONG/SAS_00000120_restart_ice_${L_NPROC}.nc .
875    done
876    cd ${SETTE_DIR}
877    . ./prepare_job.sh input_SAS.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# TESTS FOR ISOMIP CONFIGURATION
883if [ ${config} -eq 6 ] ;  then
884    ## Restartability tests for ISOMIP
885    export TEST_NAME="LONG"
886    cd ${CONFIG_DIR0}
887    . ./makenemo -m ${CMP_NAM} -n ISOMIP_ST -r ISOMIP -a TEST_CASES -j 8 del_key ${DEL_KEYS}
888    cd ${SETTE_DIR}
889    . ./param.cfg
890    . ./all_functions.sh
891    . ./prepare_exe_dir.sh
892    JOB_FILE=${EXE_DIR}/run_job.sh
893    NPROC=15
894    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
895    cd ${EXE_DIR}
896    set_namelist namelist_cfg cn_exp \"ISOMIP_LONG\"
897    set_namelist namelist_cfg nn_it000 1
898    set_namelist namelist_cfg nn_itend 96
899    set_namelist namelist_cfg nn_stock 48
900    set_namelist namelist_cfg ln_clobber .true.
901    set_namelist namelist_cfg ln_read_cfg .false.
902    set_namelist namelist_cfg ln_icebergs .false.
903    set_namelist namelist_cfg ln_bergdia .false.
904    set_namelist namelist_cfg jpni 5
905    set_namelist namelist_cfg jpnj 3
906    set_namelist namelist_cfg jpnij 15
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_ISOMIP.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 \"ISOMIP_SHORT\"
920    set_namelist namelist_cfg nn_it000 49
921    set_namelist namelist_cfg nn_itend 96
922    set_namelist namelist_cfg nn_stock 48
923    set_namelist namelist_cfg ln_rstart .true.
924    set_namelist namelist_cfg nn_rstctl 2
925    set_namelist namelist_cfg ln_clobber .true.
926    set_namelist namelist_cfg ln_read_cfg .false.
927    set_namelist namelist_cfg ln_bergdia .false.
928    set_namelist namelist_cfg jpni 5
929    set_namelist namelist_cfg jpnj 3
930    set_namelist namelist_cfg jpnij 15
931    set_namelist namelist_cfg cn_ocerst_in \"ISOMIP_LONG_00000048_restart\"
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    for (( i=1; i<=$NPROC; i++)) ; do
938        L_NPROC=$(( $i - 1 ))
939        L_NPROC=`printf "%04d\n" ${L_NPROC}`
940        ln -sf ../LONG/ISOMIP_LONG_00000048_restart_${L_NPROC}.nc .
941    done
942    if [ ${USING_MPMD} == "yes" ] ; then
943       set_xio_using_server iodef.xml true
944    else
945       set_xio_using_server iodef.xml false
946    fi
947    cd ${SETTE_DIR}
948    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
949    cd ${SETTE_DIR}
950    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
951
952    ## Reproducibility tests for ISOMIP
953    export TEST_NAME="REPRO_7_3"
954    cd ${CONFIG_DIR0}
955    cd ${SETTE_DIR}
956    . ./param.cfg
957    . ./all_functions.sh
958    . ./prepare_exe_dir.sh
959    JOB_FILE=${EXE_DIR}/run_job.sh
960    NPROC=21
961    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
962    cd ${EXE_DIR}
963    set_namelist namelist_cfg cn_exp \"ISOMIP_73\"
964    set_namelist namelist_cfg nn_it000 1
965    set_namelist namelist_cfg nn_itend 48
966    set_namelist namelist_cfg ln_ctl .false.
967    set_namelist namelist_cfg ln_clobber .true.
968    set_namelist namelist_cfg ln_read_cfg .false.
969    set_namelist namelist_cfg ln_bergdia .false.
970    set_namelist namelist_cfg jpni 7
971    set_namelist namelist_cfg jpnj 3
972    set_namelist namelist_cfg jpnij 21
973    if [ ${USING_MPMD} == "yes" ] ; then
974       set_xio_using_server iodef.xml true
975    else
976       set_xio_using_server iodef.xml false
977    fi
978    cd ${SETTE_DIR}
979    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
980    cd ${SETTE_DIR}
981    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
982
983    cd ${SETTE_DIR}
984    export TEST_NAME="REPRO_8_4"
985    . ./prepare_exe_dir.sh
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 \"ISOMIP_84\"
991    set_namelist namelist_cfg nn_it000 1
992    set_namelist namelist_cfg nn_itend 48
993    set_namelist namelist_cfg ln_ctl .false.
994    set_namelist namelist_cfg ln_clobber .true.
995    set_namelist namelist_cfg ln_read_cfg .false.
996    set_namelist namelist_cfg ln_bergdia .false.
997    set_namelist namelist_cfg jpni 8
998    set_namelist namelist_cfg jpnj 4
999    set_namelist namelist_cfg jpnij 32
1000    if [ ${USING_MPMD} == "yes" ] ; then
1001       set_xio_using_server iodef.xml true
1002    else
1003       set_xio_using_server iodef.xml false
1004    fi
1005    cd ${SETTE_DIR}
1006    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1007    cd ${SETTE_DIR}
1008    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1009
1010fi
1011
1012## Test assimilation interface code, OBS and ASM for reproducibility
1013## Restartability not tested (ASM code not restartable while increments are being applied)
1014if [ ${config} -eq 7 ] ; then
1015   ## Reproducibility tests for ORCA2_LIM3_OBS
1016    export TEST_NAME="REPRO_4_8"
1017    cd ${CONFIG_DIR0}
1018    . ./makenemo -m ${CMP_NAM} -n ORCA2_LIM3_OBS_ST -r ORCA2_LIM3_PISCES -d "OPA_SRC LIM_SRC_3"  -j 8 add_key "key_asminc" del_key "key_top"
1019    cd ${SETTE_DIR}
1020    . ./param.cfg
1021    . ./all_functions.sh
1022    . ./prepare_exe_dir.sh
1023    JOB_FILE=${EXE_DIR}/run_job.sh
1024    NPROC=32
1025    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1026    cd ${EXE_DIR}
1027    set_namelist namelist_cfg cn_exp \"O2L3OBS_48\"
1028    set_namelist namelist_cfg nn_it000 1
1029    set_namelist namelist_cfg nn_itend 75
1030    set_namelist namelist_cfg nn_fwb 0
1031    set_namelist namelist_cfg ln_ctl .false.
1032    set_namelist namelist_cfg ln_clobber .true.
1033    set_namelist namelist_cfg ln_read_cfg .true.
1034    set_namelist namelist_cfg ln_linssh .false.
1035    set_namelist namelist_cfg ln_icebergs .false.
1036    set_namelist namelist_cfg jpni 4
1037    set_namelist namelist_cfg jpnj 8
1038    set_namelist namelist_cfg jpnij 32
1039    set_namelist namelist_cfg ln_diaobs .true.
1040    set_namelist namelist_cfg ln_t3d .true.
1041    set_namelist namelist_cfg ln_s3d .true.
1042    set_namelist namelist_cfg ln_sst .true.
1043    set_namelist namelist_cfg ln_sla .true.
1044    set_namelist namelist_cfg ln_sic .true.
1045    set_namelist namelist_cfg ln_vel3d .true.
1046    set_namelist namelist_cfg ln_bkgwri .true.
1047    set_namelist namelist_cfg ln_trainc .true.
1048    set_namelist namelist_cfg ln_dyninc .true.
1049    set_namelist namelist_cfg ln_sshinc .true.
1050    set_namelist namelist_cfg ln_asmiau .true.
1051    #remove all useless options for pisces (due to ORCA2_LIM3_PISCES reference configuration)
1052    set_namelist namelist_top_cfg ln_trcdta .false.
1053    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
1054    # if not you need input files, and for tests is not necessary
1055    set_namelist namelist_pisces_cfg ln_presatm .false.
1056    set_namelist namelist_pisces_cfg ln_varpar .false.
1057    set_namelist namelist_pisces_cfg ln_dust .false.
1058    set_namelist namelist_pisces_cfg ln_solub .false.
1059    set_namelist namelist_pisces_cfg ln_river .false.
1060    set_namelist namelist_pisces_cfg ln_ndepo .false.
1061    set_namelist namelist_pisces_cfg ln_ironsed .false.
1062    set_namelist namelist_pisces_cfg ln_ironice .false.
1063    set_namelist namelist_pisces_cfg ln_hydrofe .false.
1064    if [ ${USING_MPMD} == "yes" ] ; then
1065       set_xio_using_server iodef.xml true
1066    else
1067       set_xio_using_server iodef.xml false
1068    fi
1069    cd ${SETTE_DIR}
1070    . ./prepare_job.sh input_ORCA2_LIM3_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1071    cd ${SETTE_DIR}
1072    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1073
1074   cd ${SETTE_DIR}
1075    export TEST_NAME="REPRO_8_4"
1076    . ./prepare_exe_dir.sh
1077    JOB_FILE=${EXE_DIR}/run_job.sh
1078    NPROC=32
1079    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1080    cd ${EXE_DIR}
1081    set_namelist namelist_cfg cn_exp \"O2L3OBS_84\"
1082    set_namelist namelist_cfg nn_it000 1
1083    set_namelist namelist_cfg nn_itend 75
1084    set_namelist namelist_cfg nn_fwb 0
1085    set_namelist namelist_cfg ln_ctl .false.
1086    set_namelist namelist_cfg ln_clobber .true.
1087    set_namelist namelist_cfg ln_read_cfg .true.
1088    set_namelist namelist_cfg ln_linssh .false.
1089    set_namelist namelist_cfg ln_icebergs .false.
1090    set_namelist namelist_cfg jpni 8
1091    set_namelist namelist_cfg jpnj 4
1092    set_namelist namelist_cfg jpnij 32
1093    set_namelist namelist_cfg ln_diaobs .true.
1094    set_namelist namelist_cfg ln_t3d .true.
1095    set_namelist namelist_cfg ln_s3d .true.
1096    set_namelist namelist_cfg ln_sst .true.
1097    set_namelist namelist_cfg ln_sla .true.
1098    set_namelist namelist_cfg ln_sic .true.
1099    set_namelist namelist_cfg ln_vel3d .true.
1100    set_namelist namelist_cfg ln_bkgwri .true.
1101    set_namelist namelist_cfg ln_trainc .true.
1102    set_namelist namelist_cfg ln_dyninc .true.
1103    set_namelist namelist_cfg ln_sshinc .true.
1104    set_namelist namelist_cfg ln_asmiau .true.
1105    #remove all useless options for pisces (due to ORCA2_LIM3_PISCES reference configuration)
1106    set_namelist namelist_top_cfg ln_trcdta .false.
1107    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
1108    # if not you need input files, and for tests is not necessary
1109    set_namelist namelist_pisces_cfg ln_presatm .false.
1110    set_namelist namelist_pisces_cfg ln_varpar .false.
1111    set_namelist namelist_pisces_cfg ln_dust .false.
1112    set_namelist namelist_pisces_cfg ln_solub .false.
1113    set_namelist namelist_pisces_cfg ln_river .false.
1114    set_namelist namelist_pisces_cfg ln_ndepo .false.
1115    set_namelist namelist_pisces_cfg ln_ironsed .false.
1116    set_namelist namelist_pisces_cfg ln_ironice .false.
1117    set_namelist namelist_pisces_cfg ln_hydrofe .false.
1118    if [ ${USING_MPMD} == "yes" ] ; then
1119       set_xio_using_server iodef.xml true
1120    else
1121       set_xio_using_server iodef.xml false
1122    fi
1123    cd ${SETTE_DIR}
1124    . ./prepare_job.sh input_ORCA2_LIM3_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1125    cd ${SETTE_DIR}
1126    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1127fi
1128# TEST FOR ORCA2_LIM3_AGRIF : AGULHAS AGRIF
1129if [ ${config} -eq 8 ] ;  then
1130## Restartability tests
1131    export TEST_NAME="LONG"
1132    cd ${CONFIG_DIR0}
1133    . ./makenemo -m ${CMP_NAM} -n ORCA2AGR_ST -r ORCA2_LIM3_PISCES -d "OPA_SRC LIM_SRC_3 NST_SRC" -j 8 add_key "key_agrif" del_key "key_top"
1134    cd ${SETTE_DIR}
1135    . ./param.cfg
1136    . ./all_functions.sh
1137    . ./prepare_exe_dir.sh
1138    JOB_FILE=${EXE_DIR}/run_job.sh
1139    NPROC=4
1140    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1141    cd ${EXE_DIR}
1142    set_namelist namelist_cfg cn_exp \"O2AGRIF_LONG\"
1143    set_namelist namelist_cfg nn_it000 1
1144    set_namelist namelist_cfg nn_itend 150
1145    set_namelist namelist_cfg nn_stock 75
1146    set_namelist namelist_cfg ln_clobber .true.
1147    set_namelist namelist_cfg ln_read_cfg .true.
1148    set_namelist namelist_cfg nn_fwb 0
1149    set_namelist namelist_cfg jpni 2
1150    set_namelist namelist_cfg jpnj 2
1151    set_namelist namelist_cfg jpnij 4
1152    set_namelist 1_namelist_cfg cn_exp \"O2AGRIF_LONG\"
1153    set_namelist 1_namelist_cfg nn_it000 1
1154    set_namelist 1_namelist_cfg nn_itend 300
1155    set_namelist 1_namelist_cfg nn_stock 150
1156    set_namelist 1_namelist_cfg nn_fsbc 1
1157    set_namelist 1_namelist_cfg ln_ctl .false.
1158    set_namelist 1_namelist_cfg ln_clobber .true.
1159    set_namelist 1_namelist_cfg ln_read_cfg .true.
1160    set_namelist 1_namelist_cfg ln_linssh .false.
1161    set_namelist 1_namelist_cfg ln_zdfiwm .false.
1162    set_namelist 1_namelist_cfg ln_hpg_sco .true.
1163    set_namelist 1_namelist_cfg ln_hpg_zps .false.
1164#
1165    if [ ${USING_MPMD} == "yes" ] ; then
1166       set_xio_using_server iodef.xml true
1167    else
1168       set_xio_using_server iodef.xml false
1169    fi
1170    cd ${SETTE_DIR}
1171    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1172   
1173    cd ${SETTE_DIR}
1174    export TEST_NAME="SHORT"
1175    . ./prepare_exe_dir.sh
1176    cd ${EXE_DIR}
1177    set_namelist namelist_cfg cn_exp \"O2AGRIF_SHORT\"
1178    set_namelist namelist_cfg nn_it000 76
1179    set_namelist namelist_cfg nn_itend 150
1180    set_namelist namelist_cfg nn_stock 75
1181    set_namelist namelist_cfg ln_rstart .true.
1182    set_namelist namelist_cfg nn_rstctl 2
1183    set_namelist namelist_cfg ln_clobber .true.
1184    set_namelist namelist_cfg ln_read_cfg .true.
1185    set_namelist namelist_cfg ln_linssh .false.
1186    set_namelist namelist_cfg nn_fwb 0
1187    set_namelist namelist_cfg jpni 2
1188    set_namelist namelist_cfg jpnj 2
1189    set_namelist namelist_cfg jpnij 4
1190    set_namelist 1_namelist_cfg cn_exp \"O2AGRIF_SHORT\"
1191    set_namelist 1_namelist_cfg nn_it000 151
1192    set_namelist 1_namelist_cfg nn_itend 300
1193    set_namelist 1_namelist_cfg nn_stock 150
1194    set_namelist 1_namelist_cfg nn_fsbc 1
1195    set_namelist 1_namelist_cfg ln_rstart .true.
1196    set_namelist 1_namelist_cfg nn_rstctl 2
1197    set_namelist 1_namelist_cfg ln_clobber .true.
1198    set_namelist 1_namelist_cfg ln_read_cfg .true.
1199    set_namelist 1_namelist_cfg ln_zdfiwm .false.
1200    set_namelist 1_namelist_cfg ln_hpg_sco .true.
1201    set_namelist 1_namelist_cfg ln_hpg_zps .false.
1202    set_namelist namelist_cfg cn_ocerst_in \"O2AGRIF_LONG_00000075_restart\"
1203    set_namelist namelist_ice_cfg cn_icerst_in \"O2AGRIF_LONG_00000075_restart_ice\"
1204    set_namelist 1_namelist_cfg cn_ocerst_in \"O2AGRIF_LONG_00000150_restart\"
1205    set_namelist 1_namelist_ice_cfg cn_icerst_in \"O2AGRIF_LONG_00000150_restart_ice\"
1206
1207    for (( i=1; i<=$NPROC; i++)) ; do
1208        L_NPROC=$(( $i - 1 ))
1209        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1210        ln -sf ../LONG/O2AGRIF_LONG_00000075_restart_${L_NPROC}.nc .
1211        ln -sf ../LONG/O2AGRIF_LONG_00000075_restart_ice_${L_NPROC}.nc .
1212        ln -sf ../LONG/1_O2AGRIF_LONG_00000150_restart_${L_NPROC}.nc .
1213        ln -sf ../LONG/1_O2AGRIF_LONG_00000150_restart_ice_${L_NPROC}.nc .
1214    done
1215    if [ ${USING_MPMD} == "yes" ] ; then
1216       set_xio_using_server iodef.xml true
1217    else
1218       set_xio_using_server iodef.xml false
1219    fi
1220    cd ${SETTE_DIR}
1221    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1222    cd ${SETTE_DIR}
1223    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1224
1225
1226## Reproducibility tests for ORCA2_LIM3_AGRIF
1227    export TEST_NAME="REPRO_4_4"
1228    cd ${CONFIG_DIR0}
1229    cd ${SETTE_DIR}
1230    . ./param.cfg
1231    . ./all_functions.sh
1232    . ./prepare_exe_dir.sh
1233    JOB_FILE=${EXE_DIR}/run_job.sh
1234    NPROC=16
1235    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1236    cd ${EXE_DIR}
1237    set_namelist namelist_cfg cn_exp \"O2AGRIF_44\"
1238    set_namelist namelist_cfg nn_it000 1
1239    set_namelist namelist_cfg nn_itend 75
1240    set_namelist namelist_cfg ln_ctl .false.
1241    set_namelist namelist_cfg ln_clobber .true.
1242    set_namelist namelist_cfg ln_read_cfg .true.
1243    set_namelist namelist_cfg ln_linssh .false.
1244    set_namelist namelist_cfg nn_fwb 0
1245    set_namelist namelist_cfg jpni 4
1246    set_namelist namelist_cfg jpnj 4
1247    set_namelist namelist_cfg jpnij 16
1248    set_namelist 1_namelist_cfg nn_it000 1
1249    set_namelist 1_namelist_cfg nn_itend 150
1250    set_namelist 1_namelist_cfg nn_fsbc 1
1251    set_namelist 1_namelist_cfg ln_ctl .false.
1252    set_namelist 1_namelist_cfg ln_clobber .true.
1253    set_namelist 1_namelist_cfg ln_read_cfg .true.
1254    set_namelist 1_namelist_cfg ln_zdfiwm .false.
1255    set_namelist 1_namelist_cfg ln_hpg_sco .true.
1256    set_namelist 1_namelist_cfg ln_hpg_zps .false.
1257
1258    if [ ${USING_MPMD} == "yes" ] ; then
1259       set_xio_using_server iodef.xml true
1260    else
1261       set_xio_using_server iodef.xml false
1262    fi
1263    cd ${SETTE_DIR}
1264    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1265    cd ${SETTE_DIR}
1266    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1267
1268    cd ${SETTE_DIR}
1269    export TEST_NAME="REPRO_2_8"
1270    . ./prepare_exe_dir.sh
1271    JOB_FILE=${EXE_DIR}/run_job.sh
1272    NPROC=16
1273    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1274    cd ${EXE_DIR}
1275    set_namelist namelist_cfg cn_exp \"O2AGRIF_28\"
1276    set_namelist namelist_cfg nn_it000 1
1277    set_namelist namelist_cfg nn_itend 75
1278    set_namelist namelist_cfg ln_ctl .false.
1279    set_namelist namelist_cfg ln_clobber .true.
1280    set_namelist namelist_cfg ln_read_cfg .true.
1281    set_namelist namelist_cfg ln_linssh .false.
1282    set_namelist namelist_cfg nn_fwb 0
1283    set_namelist namelist_cfg jpni 2
1284    set_namelist namelist_cfg jpnj 8
1285    set_namelist namelist_cfg jpnij 16
1286    set_namelist 1_namelist_cfg nn_it000 1
1287    set_namelist 1_namelist_cfg nn_itend 150
1288    set_namelist 1_namelist_cfg nn_fsbc 1
1289    set_namelist 1_namelist_cfg ln_ctl .false.
1290    set_namelist 1_namelist_cfg nn_fsbc 1
1291    set_namelist 1_namelist_cfg ln_clobber .true.
1292    set_namelist 1_namelist_cfg ln_read_cfg .true.
1293    set_namelist 1_namelist_cfg ln_zdfiwm .false.
1294    set_namelist 1_namelist_cfg ln_hpg_sco .true.
1295    set_namelist 1_namelist_cfg ln_hpg_zps .false.
1296
1297    if [ ${USING_MPMD} == "yes" ] ; then
1298       set_xio_using_server iodef.xml true
1299    else
1300       set_xio_using_server iodef.xml false
1301    fi
1302    cd ${SETTE_DIR}
1303    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1304    cd ${SETTE_DIR}
1305    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1306fi
1307
1308# test code corruption with AGRIF
1309if [ ${config} -eq 9 ] ;  then
1310
1311# Compile with AGRIF but run with no zoom
1312    export TEST_NAME="AGRIFNOZ"
1313    cd ${CONFIG_DIR0}
1314    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_NOZOOM_ST -r ORCA2_LIM3_PISCES -d "OPA_SRC LIM_SRC_3 NST_SRC" -j 8 add_key "key_agrif" del_key "key_top"
1315    cd ${SETTE_DIR}
1316    . ./param.cfg
1317    . ./all_functions.sh
1318    . ./prepare_exe_dir.sh
1319    JOB_FILE=${EXE_DIR}/run_job.sh
1320    NPROC=4
1321    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1322    cd ${EXE_DIR}
1323    set_namelist namelist_cfg cn_exp \"AGRIFNOZ_SHORT\"
1324    set_namelist namelist_cfg nn_it000 1
1325    set_namelist namelist_cfg nn_itend 75
1326    set_namelist namelist_cfg ln_ctl .false.
1327    set_namelist namelist_cfg ln_clobber .true.
1328    set_namelist namelist_cfg ln_read_cfg .true.
1329    set_namelist namelist_cfg ln_linssh .false.
1330    set_namelist namelist_cfg ln_hpg_sco .true.
1331    set_namelist namelist_cfg ln_hpg_zps .false.
1332    set_namelist namelist_cfg nn_fwb 0
1333    set_namelist namelist_cfg jpni 2
1334    set_namelist namelist_cfg jpnj 2
1335    set_namelist namelist_cfg jpnij 4
1336    set_namelist namelist_cfg ln_icebergs .false.   
1337#
1338#   Set the number of fine grids to zero:   
1339    sed -i "1s/.*/0/" ${EXE_DIR}/AGRIF_FixedGrids.in
1340
1341    if [ ${USING_MPMD} == "yes" ] ; then
1342       set_xio_using_server iodef.xml true
1343    else
1344       set_xio_using_server iodef.xml false
1345    fi
1346    cd ${SETTE_DIR}
1347    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1348    cd ${SETTE_DIR}
1349    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1350
1351fi
1352
1353if [ ${config} -eq 10 ] ;  then
1354# Compile with same option as 9 = ORCA2AGUL_NOZOOM, except ne key_agrif to check AGRIF does not hurt...
1355    export TEST_NAME="AGRIFNO"
1356    cd ${CONFIG_DIR0}
1357    . ./makenemo -m ${CMP_NAM} -n ORCA2AGUL_NOAGR_ST -r ORCA2_LIM3_PISCES -d "OPA_SRC LIM_SRC_3 NST_SRC" -j 8 del_key "key_top"
1358    cd ${SETTE_DIR}
1359    . ./param.cfg
1360    . ./all_functions.sh
1361    . ./prepare_exe_dir.sh
1362    JOB_FILE=${EXE_DIR}/run_job.sh
1363    NPROC=4
1364    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1365    cd ${EXE_DIR}
1366    set_namelist namelist_cfg cn_exp \"AGRIFNO_SHORT\"
1367    set_namelist namelist_cfg nn_it000 1
1368    set_namelist namelist_cfg nn_itend 75
1369    set_namelist namelist_cfg ln_ctl .false.
1370    set_namelist namelist_cfg ln_clobber .true.
1371    set_namelist namelist_cfg ln_read_cfg .true.
1372    set_namelist namelist_cfg ln_linssh .false.
1373    set_namelist namelist_cfg ln_hpg_sco .true.
1374    set_namelist namelist_cfg ln_hpg_zps .false.
1375    set_namelist namelist_cfg nn_fwb 0
1376    set_namelist namelist_cfg jpni 2
1377    set_namelist namelist_cfg jpnj 2
1378    set_namelist namelist_cfg jpnij 4
1379    set_namelist namelist_cfg ln_icebergs .false.       
1380#
1381    if [ ${USING_MPMD} == "yes" ] ; then
1382       set_xio_using_server iodef.xml true
1383    else
1384       set_xio_using_server iodef.xml false
1385    fi
1386    cd ${SETTE_DIR}
1387    . ./prepare_job.sh input_ORCA2_LIM3_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1388    cd ${SETTE_DIR}
1389    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1390
1391fi
1392
1393# ------------
1394# AGRIF NORDIC
1395# -----------
1396if [ ${config} -eq 11 ] ;  then
1397## Restartability tests AGRIF
1398    export TEST_NAME="LONG"
1399    cd ${CONFIG_DIR0}
1400    . ./makenemo -m ${CMP_NAM} -n AGRIF_ST -r AGRIF_NORDIC -j 8 del_key "key_top"
1401    cd ${SETTE_DIR}
1402    . ./param.cfg
1403    . ./all_functions.sh
1404    . ./prepare_exe_dir.sh
1405    JOB_FILE=${EXE_DIR}/run_job.sh
1406    NPROC=32
1407    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1408    cd ${EXE_DIR}
1409    set_namelist namelist_cfg cn_exp \"AGRIF_LONG\"
1410    set_namelist namelist_cfg nn_it000 1
1411    set_namelist namelist_cfg nn_itend 20
1412    set_namelist namelist_cfg nn_stock 10
1413    set_namelist 1_namelist_cfg cn_exp \"AGRIF_LONG\"
1414    set_namelist 1_namelist_cfg nn_it000 1
1415    set_namelist 1_namelist_cfg nn_itend 80
1416    set_namelist 1_namelist_cfg nn_stock 40
1417    set_namelist 2_namelist_cfg cn_exp \"AGRIF_LONG\"
1418    set_namelist 2_namelist_cfg nn_it000 1
1419    set_namelist 2_namelist_cfg nn_itend 240
1420    set_namelist 2_namelist_cfg nn_stock 120
1421
1422    if [ ${USING_MPMD} == "yes" ] ; then
1423       set_xio_using_server iodef.xml true
1424    else
1425       set_xio_using_server iodef.xml false
1426    fi
1427    cd ${SETTE_DIR}
1428    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1429   
1430    cd ${SETTE_DIR}
1431    export TEST_NAME="SHORT"
1432    . ./prepare_exe_dir.sh
1433    cd ${EXE_DIR}
1434    set_namelist namelist_cfg cn_exp \"AGRIF_SHORT\"
1435    set_namelist namelist_cfg nn_it000 11
1436    set_namelist namelist_cfg nn_itend 20
1437    set_namelist namelist_cfg nn_stock 10
1438    set_namelist namelist_cfg ln_rstart .true.
1439    set_namelist namelist_cfg nn_rstctl 2
1440    set_namelist 1_namelist_cfg cn_exp \"AGRIF_SHORT\"
1441    set_namelist 1_namelist_cfg nn_it000 41
1442    set_namelist 1_namelist_cfg nn_itend 80
1443    set_namelist 1_namelist_cfg nn_stock 40
1444    set_namelist 1_namelist_cfg ln_rstart .true.
1445    set_namelist 1_namelist_cfg nn_rstctl 2
1446    set_namelist 2_namelist_cfg cn_exp \"AGRIF_SHORT\"
1447    set_namelist 2_namelist_cfg nn_it000 121
1448    set_namelist 2_namelist_cfg nn_itend 240
1449    set_namelist 2_namelist_cfg nn_stock 120
1450    set_namelist 2_namelist_cfg ln_rstart .true.
1451    set_namelist 2_namelist_cfg nn_rstctl 2
1452    set_namelist namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000010_restart\"
1453    set_namelist namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000010_restart_ice\"
1454    set_namelist 1_namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000040_restart\"
1455    set_namelist 1_namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000040_restart_ice\"
1456    set_namelist 2_namelist_cfg cn_ocerst_in \"AGRIF_LONG_00000120_restart\"
1457    set_namelist 2_namelist_ice_cfg cn_icerst_in \"AGRIF_LONG_00000120_restart_ice\"
1458
1459    for (( i=1; i<=$NPROC; i++)) ; do
1460        L_NPROC=$(( $i - 1 ))
1461        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1462        ln -sf ../LONG/AGRIF_LONG_00000010_restart_${L_NPROC}.nc .
1463        ln -sf ../LONG/AGRIF_LONG_00000010_restart_ice_${L_NPROC}.nc .
1464        ln -sf ../LONG/1_AGRIF_LONG_00000040_restart_${L_NPROC}.nc .
1465        ln -sf ../LONG/1_AGRIF_LONG_00000040_restart_ice_${L_NPROC}.nc .
1466        ln -sf ../LONG/2_AGRIF_LONG_00000120_restart_${L_NPROC}.nc .
1467        ln -sf ../LONG/2_AGRIF_LONG_00000120_restart_ice_${L_NPROC}.nc .
1468    done
1469    if [ ${USING_MPMD} == "yes" ] ; then
1470       set_xio_using_server iodef.xml true
1471    else
1472       set_xio_using_server iodef.xml false
1473    fi
1474    cd ${SETTE_DIR}
1475    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1476    cd ${SETTE_DIR}
1477    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1478
1479## Reproducibility tests AGRIF
1480    export TEST_NAME="REPRO_4_8"
1481    cd ${CONFIG_DIR0}
1482    cd ${SETTE_DIR}
1483    . ./param.cfg
1484    . ./all_functions.sh
1485    . ./prepare_exe_dir.sh
1486    JOB_FILE=${EXE_DIR}/run_job.sh
1487    NPROC=32
1488    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1489    cd ${EXE_DIR}
1490    set_namelist namelist_cfg cn_exp \"AGRIF_48\"
1491    set_namelist namelist_cfg nn_it000 1
1492    set_namelist namelist_cfg nn_itend 20
1493    set_namelist namelist_cfg jpni 4
1494    set_namelist namelist_cfg jpnj 8
1495    set_namelist namelist_cfg jpnij 32
1496    set_namelist 1_namelist_cfg nn_it000 1
1497    set_namelist 1_namelist_cfg nn_itend 80
1498    set_namelist 1_namelist_cfg jpni 4
1499    set_namelist 1_namelist_cfg jpnj 8
1500    set_namelist 1_namelist_cfg jpnij 32
1501    set_namelist 2_namelist_cfg nn_it000 1
1502    set_namelist 2_namelist_cfg nn_itend 240
1503    set_namelist 2_namelist_cfg jpni 4
1504    set_namelist 2_namelist_cfg jpnj 8
1505    set_namelist 2_namelist_cfg jpnij 32
1506
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_AGRIF.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}
1516
1517    cd ${SETTE_DIR}
1518    export TEST_NAME="REPRO_8_4"
1519    . ./prepare_exe_dir.sh
1520    JOB_FILE=${EXE_DIR}/run_job.sh
1521    NPROC=32
1522    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1523    cd ${EXE_DIR}
1524    set_namelist namelist_cfg cn_exp \"AGRIF_84\"
1525    set_namelist namelist_cfg nn_it000 1
1526    set_namelist namelist_cfg nn_itend 20
1527    set_namelist namelist_cfg jpni 8
1528    set_namelist namelist_cfg jpnj 4
1529    set_namelist namelist_cfg jpnij 32
1530    set_namelist 1_namelist_cfg nn_it000 1
1531    set_namelist 1_namelist_cfg nn_itend 80
1532    set_namelist 1_namelist_cfg jpni 8
1533    set_namelist 1_namelist_cfg jpnj 4
1534    set_namelist 1_namelist_cfg jpnij 32
1535    set_namelist 2_namelist_cfg nn_it000 1
1536    set_namelist 2_namelist_cfg nn_itend 240
1537    set_namelist 2_namelist_cfg jpni 8
1538    set_namelist 2_namelist_cfg jpnj 4
1539    set_namelist 2_namelist_cfg jpnij 32
1540
1541    if [ ${USING_MPMD} == "yes" ] ; then
1542       set_xio_using_server iodef.xml true
1543    else
1544       set_xio_using_server iodef.xml false
1545    fi
1546    cd ${SETTE_DIR}
1547    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1548    cd ${SETTE_DIR}
1549    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1550
1551## test code corruption with AGRIF (phase 1) ==> Compile with key_agrif but run with no zoom
1552    export TEST_NAME="ORCA2"
1553    cd ${CONFIG_DIR0}
1554    cd ${SETTE_DIR}
1555    . ./param.cfg
1556    . ./all_functions.sh
1557    . ./prepare_exe_dir.sh
1558    JOB_FILE=${EXE_DIR}/run_job.sh
1559    NPROC=32
1560    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1561    cd ${EXE_DIR}
1562    set_namelist namelist_cfg cn_exp \"ORCA2\"
1563    set_namelist namelist_cfg nn_it000 1
1564    set_namelist namelist_cfg nn_itend 150
1565
1566#   Set the number of fine grids to zero:   
1567    sed -i "1s/.*/0/" ${EXE_DIR}/AGRIF_FixedGrids.in
1568
1569    if [ ${USING_MPMD} == "yes" ] ; then
1570       set_xio_using_server iodef.xml true
1571    else
1572       set_xio_using_server iodef.xml false
1573    fi
1574    cd ${SETTE_DIR}
1575    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1576    cd ${SETTE_DIR}
1577    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1578
1579fi
1580
1581## test code corruption with AGRIF (phase 2) ==> Compile without key_agrif (to be compared with AGRIF_ST/ORCA2)
1582if [ ${config} -eq 12 ] ;  then
1583    export TEST_NAME="ORCA2"
1584    cd ${CONFIG_DIR0}
1585    . ./makenemo -m ${CMP_NAM} -n AGRIF_ST_NOAGRIF -r AGRIF_NORDIC -j 8 del_key "key_top key_agrif"
1586    cd ${SETTE_DIR}
1587    . ./param.cfg
1588    . ./all_functions.sh
1589    . ./prepare_exe_dir.sh
1590    JOB_FILE=${EXE_DIR}/run_job.sh
1591    NPROC=32
1592    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1593    cd ${EXE_DIR}
1594    set_namelist namelist_cfg cn_exp \"ORCA2\"
1595    set_namelist namelist_cfg nn_it000 1
1596    set_namelist namelist_cfg nn_itend 150
1597#
1598    if [ ${USING_MPMD} == "yes" ] ; then
1599       set_xio_using_server iodef.xml true
1600    else
1601       set_xio_using_server iodef.xml false
1602    fi
1603    cd ${SETTE_DIR}
1604    . ./prepare_job.sh input_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1605    cd ${SETTE_DIR}
1606    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1607
1608fi
1609
1610done
Note: See TracBrowser for help on using the repository browser.