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

source: trunk/NEMOGCM/SETTE/sette.sh @ 5397

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

use IOF for geothermal file reading ; see ticket #1535' NEMO/OPA_SRC/TRA/trabbc.F90 CONFIG/SHARED/namelist_ref

  • Property svn:executable set to *
File size: 47.2 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=ifort_MERCATOR_CLUSTER
91export BATCH_COMMAND_PAR="qsub"
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 & 12
141# ISOMIP          :13 & 14
142# ORCA2_LIM_OBS:   15
143# ORCA2_AGRIF_LIM :16
144#for config in  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
145for config in 1 2 5 6 7 8
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    cd ${EXE_DIR}
861    set_namelist namelist_cfg nn_it000 1
862    set_namelist namelist_cfg nn_itend 576
863    set_namelist namelist_cfg nn_fwb 0
864    set_namelist namelist_cfg ln_ctl .false.
865    set_namelist namelist_cfg ln_clobber .true.
866    set_namelist namelist_cfg jpni 4
867    set_namelist namelist_cfg jpnj 8
868    set_namelist namelist_cfg jpnij 32
869    if [ ${USING_MPMD} == "yes" ] ; then
870       set_xio_using_server iodef.xml true
871    else
872       set_xio_using_server iodef.xml false
873    fi
874    cd ${SETTE_DIR}
875    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
876    cd ${SETTE_DIR}
877    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
878fi
879
880
881# TESTS FOR ORCA2_SAS_LIM CONFIGURATION
882if [ ${config} -eq 11 ] ;  then
883    ## Restartability tests for SAS
884    export TEST_NAME="LONG"
885    cd ${CONFIG_DIR}
886    . ./makenemo -m ${CMP_NAM} -n SAS_LONG -r ORCA2_SAS_LIM -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
887    cd ${SETTE_DIR}
888    . ./param.cfg
889    . ./all_functions.sh
890    . ./prepare_exe_dir.sh
891    JOB_FILE=${EXE_DIR}/run_job.sh
892    NPROC=32
893    \rm $JOB_FILE
894    cd ${EXE_DIR}
895    set_namelist namelist_cfg cn_exp \"SAS\"
896    set_namelist namelist_cfg nn_it000 1
897    set_namelist namelist_cfg nn_itend 100
898    set_namelist namelist_cfg nn_stock 50
899    set_namelist namelist_cfg ln_ctl .false.
900    set_namelist namelist_cfg ln_clobber .true.
901    set_namelist namelist_cfg nn_fwb 0
902    set_namelist namelist_cfg jpni 8
903    set_namelist namelist_cfg jpnj 4
904    set_namelist namelist_cfg jpnij 32
905    if [ ${USING_MPMD} == "yes" ] ; then
906       set_xio_using_server iodef.xml true
907    else
908       set_xio_using_server iodef.xml false
909    fi
910    cd ${SETTE_DIR}
911    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
912
913    cd ${SETTE_DIR}
914    export TEST_NAME="SHORT"
915    . ./prepare_exe_dir.sh
916    cd ${EXE_DIR}
917    set_namelist namelist_cfg cn_exp \"SAS\"
918    set_namelist namelist_cfg nn_it000 51
919    set_namelist namelist_cfg nn_itend 100
920    set_namelist namelist_cfg ln_ctl .false.
921    set_namelist namelist_cfg ln_clobber .true.
922    set_namelist namelist_cfg nn_fwb 0
923    set_namelist namelist_cfg jpni 8
924    set_namelist namelist_cfg jpnj 4
925    set_namelist namelist_cfg jpnij 32
926    set_namelist namelist_cfg nn_rstctl 2
927    set_namelist namelist_cfg cn_ocerst_in \"SAS_00000050_restart\"
928    for (( i=1; i<=$NPROC; i++)) ; do
929        L_NPROC=$(( $i - 1 ))
930        L_NPROC=`printf "%04d\n" ${L_NPROC}`
931        ln -sf ../LONG/SAS_00000050_restart_${L_NPROC}.nc .
932    done
933    if [ ${USING_MPMD} == "yes" ] ; then
934       set_xio_using_server iodef.xml true
935    else
936       set_xio_using_server iodef.xml false
937    fi
938    cd ${SETTE_DIR}
939    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
940    cd ${SETTE_DIR}
941    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
942fi
943
944if [ ${config} -eq 12 ] ;  then
945## Reproducibility tests for ORCA2_SAS_LIM
946    export TEST_NAME="REPRO_8_4"
947    cd ${CONFIG_DIR}
948    . ./makenemo -m ${CMP_NAM} -n SAS_32 -r ORCA2_SAS_LIM -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
949    cd ${SETTE_DIR}
950    . ./param.cfg
951    . ./all_functions.sh
952    . ./prepare_exe_dir.sh
953    JOB_FILE=${EXE_DIR}/run_job.sh
954    NPROC=32
955    \rm ${JOB_FILE}
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 nn_fwb 0
963    set_namelist namelist_cfg jpni 8
964    set_namelist namelist_cfg jpnj 4
965    set_namelist namelist_cfg jpnij 32
966    if [ ${USING_MPMD} == "yes" ] ; then
967       set_xio_using_server iodef.xml true
968    else
969       set_xio_using_server iodef.xml false
970    fi
971    cd ${SETTE_DIR}
972    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE}  ${NUM_XIOSERVERS}
973    cd ${SETTE_DIR}
974    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
975    cd ${SETTE_DIR}
976    export TEST_NAME="REPRO_4_8"
977    . ./prepare_exe_dir.sh
978    cd ${EXE_DIR}
979    set_namelist namelist_cfg cn_exp \"SAS\"
980    set_namelist namelist_cfg nn_it000 51
981    set_namelist namelist_cfg nn_itend 100
982    set_namelist namelist_cfg ln_ctl .false.
983    set_namelist namelist_cfg ln_clobber .true.
984    set_namelist namelist_cfg nn_fwb 0
985    set_namelist namelist_cfg jpni 4
986    set_namelist namelist_cfg jpnj 8
987    set_namelist namelist_cfg jpnij 32
988    if [ ${USING_MPMD} == "yes" ] ; then
989       set_xio_using_server iodef.xml true
990    else
991       set_xio_using_server iodef.xml false
992    fi
993    cd ${SETTE_DIR}
994    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
995    cd ${SETTE_DIR}
996    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
997fi
998# TESTS FOR ISOMIP CONFIGURATION
999if [ ${config} -eq 13 ] ;  then
1000    ## Restartability tests for ISOMIP
1001    export TEST_NAME="LONG"
1002    cd ${CONFIG_DIR}
1003    . ./makenemo -m ${CMP_NAM} -n ISOMIP_LONG -u ISOMIP -j 8 del_key ${DEL_KEYS}
1004    cd ${SETTE_DIR}
1005    . ./param.cfg
1006    . ./all_functions.sh
1007    . ./prepare_exe_dir.sh
1008    JOB_FILE=${EXE_DIR}/run_job.sh
1009    NPROC=4
1010    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1011    cd ${EXE_DIR}
1012    set_namelist namelist_cfg cn_exp \"ISOMIP_LONG\"
1013    set_namelist namelist_cfg nn_it000 1
1014    set_namelist namelist_cfg nn_itend 96
1015    set_namelist namelist_cfg nn_stock 48
1016    set_namelist namelist_cfg ln_clobber .true.
1017    set_namelist namelist_cfg nn_fwb 0
1018    set_namelist namelist_cfg nn_solv 2
1019    set_namelist namelist_cfg jpni 2
1020    set_namelist namelist_cfg jpnj 2
1021    set_namelist namelist_cfg jpnij 4
1022    if [ ${USING_MPMD} == "yes" ] ; then
1023       set_xio_using_server iodef.xml true
1024    else
1025       set_xio_using_server iodef.xml false
1026    fi
1027    cd ${SETTE_DIR}
1028    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1029
1030    cd ${SETTE_DIR}
1031    export TEST_NAME="SHORT"
1032    . ./prepare_exe_dir.sh
1033    cd ${EXE_DIR}
1034    set_namelist namelist_cfg cn_exp \"ISOMIP_SHORT\"
1035    set_namelist namelist_cfg nn_it000 49
1036    set_namelist namelist_cfg nn_itend 96
1037    set_namelist namelist_cfg nn_stock 48
1038    set_namelist namelist_cfg ln_rstart .true.
1039    set_namelist namelist_cfg nn_rstctl 2
1040    set_namelist namelist_cfg ln_clobber .true.
1041    set_namelist namelist_cfg nn_fwb 0
1042    set_namelist namelist_cfg nn_solv 2
1043    set_namelist namelist_cfg jpni 2
1044    set_namelist namelist_cfg jpnj 2
1045    set_namelist namelist_cfg jpnij 4
1046    set_namelist namelist_cfg cn_ocerst_in \"ISOMIP_LONG_00000048_restart\"
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    for (( i=1; i<=$NPROC; i++)) ; do
1053        L_NPROC=$(( $i - 1 ))
1054        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1055        ln -sf ../LONG/ISOMIP_LONG_00000048_restart_${L_NPROC}.nc .
1056    done
1057    if [ ${USING_MPMD} == "yes" ] ; then
1058       set_xio_using_server iodef.xml true
1059    else
1060       set_xio_using_server iodef.xml false
1061    fi
1062    cd ${SETTE_DIR}
1063    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1064    cd ${SETTE_DIR}
1065    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1066fi
1067if [ ${config} -eq 14 ] ;  then
1068    ## Reproducibility tests for ISOMIP
1069    export TEST_NAME="REPRO_1_4"
1070    cd ${CONFIG_DIR}
1071    . ./makenemo -m ${CMP_NAM} -n ISOMIP_4 -u ISOMIP -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
1072    cd ${SETTE_DIR}
1073    . ./param.cfg
1074    . ./all_functions.sh
1075    . ./prepare_exe_dir.sh
1076    JOB_FILE=${EXE_DIR}/run_job.sh
1077    NPROC=4
1078    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1079    cd ${EXE_DIR}
1080    set_namelist namelist_cfg cn_exp \"ISOMIP_14\"
1081    set_namelist namelist_cfg nn_it000 1
1082    set_namelist namelist_cfg nn_itend 48
1083    set_namelist namelist_cfg nn_fwb 0
1084    set_namelist namelist_cfg nn_bench 0
1085    set_namelist namelist_cfg ln_ctl .false.
1086    set_namelist namelist_cfg ln_clobber .true.
1087    set_namelist namelist_cfg nn_solv 2
1088    set_namelist namelist_cfg jpni 1
1089    set_namelist namelist_cfg jpnj 4
1090    set_namelist namelist_cfg jpnij 4
1091    if [ ${USING_MPMD} == "yes" ] ; then
1092       set_xio_using_server iodef.xml true
1093    else
1094       set_xio_using_server iodef.xml false
1095    fi
1096    cd ${SETTE_DIR}
1097    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1098    cd ${SETTE_DIR}
1099    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1100
1101    cd ${SETTE_DIR}
1102    export TEST_NAME="REPRO_2_2"
1103    . ./prepare_exe_dir.sh
1104    JOB_FILE=${EXE_DIR}/run_job.sh
1105    NPROC=4
1106    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1107    cd ${EXE_DIR}
1108    set_namelist namelist_cfg cn_exp \"ISOMIP_22\"
1109    set_namelist namelist_cfg nn_it000 1
1110    set_namelist namelist_cfg nn_itend 48
1111    set_namelist namelist_cfg nn_fwb 0
1112    set_namelist namelist_cfg ln_ctl .false.
1113    set_namelist namelist_cfg ln_clobber .true.
1114    set_namelist namelist_cfg nn_solv 2
1115    set_namelist namelist_cfg jpni 2
1116    set_namelist namelist_cfg jpnj 2
1117    set_namelist namelist_cfg jpnij 4
1118    if [ ${USING_MPMD} == "yes" ] ; then
1119       set_xio_using_server iodef.xml true
1120    else
1121       set_xio_using_server iodef.xml false
1122    fi
1123    cd ${SETTE_DIR}
1124    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1125    cd ${SETTE_DIR}
1126    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1127
1128fi
1129
1130## Test assimilation interface code, OBS and ASM for reproducibility
1131## Restartability not tested (ASM code not restartable while increments are being applied)
1132if [ ${config} -eq 15 ] ; then
1133   ## Reproducibility tests for ORCA2_LIM_OBS
1134    export TEST_NAME="REPRO_4_4"
1135    cd ${CONFIG_DIR}
1136    . ./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}
1137    cd ${SETTE_DIR}
1138    . ./param.cfg
1139    . ./all_functions.sh
1140    . ./prepare_exe_dir.sh
1141    JOB_FILE=${EXE_DIR}/run_job.sh
1142    NPROC=16
1143    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1144    cd ${EXE_DIR}
1145    set_namelist namelist_cfg nn_it000 1
1146    set_namelist namelist_cfg nn_itend 75
1147    set_namelist namelist_cfg nn_fwb 0
1148    set_namelist namelist_cfg ln_ctl .false.
1149    set_namelist namelist_cfg ln_clobber .true.
1150    set_namelist namelist_cfg jpni 4
1151    set_namelist namelist_cfg jpnj 4
1152    set_namelist namelist_cfg jpnij 16
1153    set_namelist namelist_cfg nn_solv 2   
1154    set_namelist namelist_cfg ln_t3d .true.
1155    set_namelist namelist_cfg ln_s3d .true.
1156    set_namelist namelist_cfg ln_profb .true.
1157    set_namelist namelist_cfg ln_sst .true.
1158    set_namelist namelist_cfg ln_sstfb .true.
1159    set_namelist namelist_cfg ln_sla .true.
1160    set_namelist namelist_cfg ln_slafb .true.
1161    set_namelist namelist_cfg ln_seaice .false.
1162    set_namelist namelist_cfg ln_bkgwri .true.
1163    set_namelist namelist_cfg ln_trainc .true.
1164    set_namelist namelist_cfg ln_dyninc .true.
1165    set_namelist namelist_cfg ln_sshinc .true.
1166    set_namelist namelist_cfg ln_asmiau .true.
1167    if [ ${USING_MPMD} == "yes" ] ; then
1168       set_xio_using_server iodef.xml true
1169    else
1170       set_xio_using_server iodef.xml false
1171    fi
1172    cd ${SETTE_DIR}
1173    . ./prepare_job.sh input_ORCA2_LIM_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1174    cd ${SETTE_DIR}
1175    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1176
1177   cd ${SETTE_DIR}
1178    export TEST_NAME="REPRO_2_8"
1179    . ./prepare_exe_dir.sh
1180    JOB_FILE=${EXE_DIR}/run_job.sh
1181    NPROC=16
1182    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1183    cd ${EXE_DIR}
1184    set_namelist namelist_cfg nn_it000 1
1185    set_namelist namelist_cfg nn_itend 75
1186    set_namelist namelist_cfg nn_fwb 0
1187    set_namelist namelist_cfg ln_ctl .false.
1188    set_namelist namelist_cfg ln_clobber .true.
1189    set_namelist namelist_cfg jpni 2
1190    set_namelist namelist_cfg jpnj 8
1191    set_namelist namelist_cfg jpnij 16
1192    set_namelist namelist_cfg nn_solv 2
1193    set_namelist namelist_cfg ln_t3d .true.
1194    set_namelist namelist_cfg ln_s3d .true.
1195    set_namelist namelist_cfg ln_profb .true.
1196    set_namelist namelist_cfg ln_sst .true.
1197    set_namelist namelist_cfg ln_sstfb .true.
1198    set_namelist namelist_cfg ln_sla .true.
1199    set_namelist namelist_cfg ln_slafb .true.
1200    set_namelist namelist_cfg ln_seaice .false.
1201    set_namelist namelist_cfg ln_bkgwri .true.
1202    set_namelist namelist_cfg ln_trainc .true.
1203    set_namelist namelist_cfg ln_dyninc .true.
1204    set_namelist namelist_cfg ln_sshinc .true.
1205    set_namelist namelist_cfg ln_asmiau .true.
1206    if [ ${USING_MPMD} == "yes" ] ; then
1207       set_xio_using_server iodef.xml true
1208    else
1209       set_xio_using_server iodef.xml false
1210    fi
1211    cd ${SETTE_DIR}
1212    . ./prepare_job.sh input_ORCA2_LIM_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1213    cd ${SETTE_DIR}
1214    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1215fi
1216# TEST FOR ORCA2_LIM_AGRIF : simple test of running AGRIF (no restartability neither reproducibility tests)
1217if [ ${config} -eq 16 ] ;  then
1218    ## ORCA2_LIM with Agulhas AGRIF zoom in MPI
1219    export TEST_NAME="SHORT"
1220    cd ${CONFIG_DIR}
1221    . ./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}
1222    cd ${SETTE_DIR}
1223    . ./param.cfg
1224    . ./all_functions.sh
1225    . ./prepare_exe_dir.sh
1226    JOB_FILE=${EXE_DIR}/run_job.sh
1227    NPROC=2
1228    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1229    cd ${EXE_DIR}
1230    set_namelist namelist_cfg nn_it000 1
1231    set_namelist namelist_cfg nn_itend 75
1232    set_namelist namelist_cfg ln_ctl .false.
1233    set_namelist namelist_cfg ln_clobber .true.
1234    set_namelist namelist_cfg nn_fwb 0
1235    set_namelist namelist_cfg jpni 1
1236    set_namelist namelist_cfg jpnj 2
1237    set_namelist namelist_cfg jpnij 2
1238    set_namelist 1_namelist_cfg nn_it000 1
1239    set_namelist 1_namelist_cfg nn_itend 150
1240    set_namelist 1_namelist_cfg ln_ctl .false.
1241    set_namelist 1_namelist_cfg ln_clobber .true.
1242    if [ ${USING_MPMD} == "yes" ] ; then
1243       set_xio_using_server iodef.xml true
1244    else
1245       set_xio_using_server iodef.xml false
1246    fi
1247    cd ${SETTE_DIR}
1248    . ./prepare_job.sh input_ORCA2_LIM_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1249    cd ${SETTE_DIR}
1250    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1251fi
1252
1253done
Note: See TracBrowser for help on using the repository browser.