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/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/SETTE – NEMO

source: branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/SETTE/sette.sh @ 7247

Last change on this file since 7247 was 7247, checked in by flavoni, 8 years ago

update

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