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/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/SETTE – NEMO

source: branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/SETTE/sette.sh @ 7795

Last change on this file since 7795 was 7261, checked in by cbricaud, 7 years ago

phaze the rest of NEMOGCM directory ( all except NEMO directory) of the CRS branch with nemo_v3_6_STABLE branch at rev 7213 (09-09-2016) (merge -r 5519:7213 )

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