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

source: branches/2015/dev_r5056_CMCC4_simplification/NEMOGCM/SETTE/sette.sh @ 6787

Last change on this file since 6787 was 5807, checked in by diovino, 9 years ago
  • Property svn:executable set to *
File size: 47.1 KB
RevLine 
[3520]1#!/bin/bash
[3708]2############################################################
[3520]3# Author : Simona Flavoni for NEMO
[4245]4# Contact: sflod@locean-ipsl.upmc.fr
5# 2013   : A.C. Coward added options for testing with XIOS in dettached mode
[3520]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#############################################################
[3532]14#set -x
[3520]15set -o posix
16#set -u
17#set -e
[4245]18# ===========
[3520]19# DESCRIPTION
20# ===========
21#
22# Variables to be checked by user:
23#
[4245]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"
[3520]40#
41# Principal script is sette.sh, that calls
42#
[4245]43#  makenemo  : to create successive exectuables in ${CONFIG_NAME}/BLD/bin/nemo.exe
44#              and links to opa in ${CONFIG_NAME}/EXP00)
[3520]45#
46#  param.cfg : sets and loads following directories:
47#
[4245]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)
[3520]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#
[4245]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.
[3520]59#
[4245]60#  VALIDATION tree is:
[3520]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
[4245]65#                       execution directory takes name of TEST_NAME defined for every test
66#                       in sette.sh. (each test in executed in its own directory)
[3520]67#
[4245]68#  prepare_job.sh     : to generate the script run_job.sh
[3520]69#
[4245]70#  fcm_job.sh         : run in batch (INTERACT_FLAG="no") or interactive (INTERACT_FLAG="yes")
71#                        see sette.sh and BATCH_TEMPLATE directory
[3520]72#
[4245]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
[3520]79#
[4245]80#  NOTE: a log file, output.sette, is created in ${SETTE_DIR} with the echoes of
81#        executed commands
[3520]82#
[4245]83#  NOTE: if sette.sh is stopped in output.sette there is written the last command
84#        executed by sette.sh
[3520]85#
[4245]86# example use: ./sette.sh
87#########################################################################################
[3520]88#
[4245]89# Compiler among those in NEMOGCM/ARCH
[5807]90COMPILER=X64_ADA
91export BATCH_COMMAND_PAR="llsubmit"
[4245]92export BATCH_COMMAND_SEQ=$BATCH_COMMAND_PAR
[4990]93export INTERACT_FLAG="no"
[4245]94export MPIRUN_FLAG="yes"
[5807]95export USING_XIOS="yes"
[3520]96#
[4245]97export DEL_KEYS="key_iomput"
98if [ ${USING_XIOS} == "yes" ] 
99 then
100   export DEL_KEYS=""
101fi
[3520]102#
[4245]103# Settings which control the use of stand alone servers (only relevant if using xios)
[3520]104#
[4245]105export USING_MPMD="no"
106export NUM_XIOSERVERS=4
107export JOB_PREFIX=batch-mpmd
[3520]108#
[4245]109if [ ${USING_MPMD} == "no" ] 
110 then
111   export NUM_XIOSERVERS=0
112   export JOB_PREFIX=batch
113fi
[3520]114#
115#
[4245]116if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no"]
117 then
118   echo "Incompatible choices. MPMD mode requires the XIOS server"
119   exit
120fi
[3520]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}
[4245]133cp BATCH_TEMPLATE/${JOB_PREFIX}-${COMPILER} job_batch_template || exit
[4316]134# Description of configuration tested:
135# GYRE            : 1 &  2
136# ORCA2_LIM_PISCES: 3 &  4
137# ORCA2_OFF_PISCES: 5 &  6
[4796]138# ORCA2_LIM3      : 7 &  8
[4990]139# AMM12           : 9 & 10
[4796]140# SAS             :11 & 12
[4990]141# ISOMIP          :13 & 14
142# ORCA2_LIM_OBS:   15
143# ORCA2_AGRIF_LIM :16
[5282]144for config in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[3520]145do
146
[3680]147# TESTS FOR GYRE CONFIGURATION
[3520]148if [ ${config} -eq 1 ] ;  then
[3680]149    ## Restartability tests for GYRE
[3520]150    export TEST_NAME="LONG"
[4147]151    cd ${CONFIG_DIR}
[4245]152    . ./makenemo -m ${CMP_NAM} -n GYRE_LONG -r GYRE -j 8 del_key ${DEL_KEYS}
[3520]153    cd ${SETTE_DIR}
[4252]154    . ./param.cfg
155    . ./all_functions.sh
156    . ./prepare_exe_dir.sh
[3520]157    JOB_FILE=${EXE_DIR}/run_job.sh
[3532]158    NPROC=4
[4245]159    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[4147]160    cd ${EXE_DIR} 
161    set_namelist namelist_cfg cn_exp \"GYRE_LONG\"
162    set_namelist namelist_cfg nn_it000 1
163    set_namelist namelist_cfg nn_itend 120
164    set_namelist namelist_cfg nn_stock 60
165    set_namelist namelist_cfg ln_clobber .true.
[4318]166    set_namelist namelist_cfg nn_fwb 0
[4147]167    set_namelist namelist_cfg nn_solv 2
168    set_namelist namelist_cfg jpni 2
169    set_namelist namelist_cfg jpnj 2
170    set_namelist namelist_cfg jpnij 4
[4245]171    if [ ${USING_MPMD} == "yes" ] ; then
172       set_xio_using_server iodef.xml true
173    else
174       set_xio_using_server iodef.xml false
175    fi
176    cd ${SETTE_DIR}
177    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]178
179    cd ${SETTE_DIR}
180    export TEST_NAME="SHORT"
[4252]181    . ./prepare_exe_dir.sh
[3520]182    cd ${EXE_DIR}
[4147]183    set_namelist namelist_cfg cn_exp \"GYRE_SHORT\"
184    set_namelist namelist_cfg nn_it000 61
185    set_namelist namelist_cfg nn_itend 120
186    set_namelist namelist_cfg nn_stock 60
187    set_namelist namelist_cfg ln_rstart .true.
188    set_namelist namelist_cfg nn_rstctl 2
189    set_namelist namelist_cfg ln_clobber .true.
[4316]190    set_namelist namelist_cfg nn_fwb 0
[4147]191    set_namelist namelist_cfg nn_solv 2
192    set_namelist namelist_cfg jpni 2
193    set_namelist namelist_cfg jpnj 2
194    set_namelist namelist_cfg jpnij 4
195    set_namelist namelist_cfg cn_ocerst_in \"GYRE_LONG_00000060_restart\"
[4245]196    if [ ${USING_MPMD} == "yes" ] ; then
197       set_xio_using_server iodef.xml true
198    else
199       set_xio_using_server iodef.xml false
200    fi
[3537]201    for (( i=1; i<=$NPROC; i++)) ; do
202        L_NPROC=$(( $i - 1 ))
203        L_NPROC=`printf "%04d\n" ${L_NPROC}`
[3680]204        ln -sf ../LONG/GYRE_LONG_00000060_restart_${L_NPROC}.nc .
[3537]205    done
[4245]206    if [ ${USING_MPMD} == "yes" ] ; then
207       set_xio_using_server iodef.xml true
208    else
209       set_xio_using_server iodef.xml false
210    fi
[3520]211    cd ${SETTE_DIR}
[4245]212    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]213    cd ${SETTE_DIR}
[3532]214    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3520]215fi
216
217if [ ${config} -eq 2 ] ;  then
[3680]218    ## Reproducibility tests for GYRE
[3520]219    export TEST_NAME="REPRO_1_4"
[4147]220    cd ${CONFIG_DIR}
[4245]221    . ./makenemo -m ${CMP_NAM} -n GYRE_4 -r GYRE -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
[3520]222    cd ${SETTE_DIR}
[4252]223    . ./param.cfg
224    . ./all_functions.sh
225    . ./prepare_exe_dir.sh
[3520]226    JOB_FILE=${EXE_DIR}/run_job.sh
227    NPROC=4
[4245]228    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]229    cd ${EXE_DIR}
[4147]230    set_namelist namelist_cfg cn_exp \"GYRE_14\"
231    set_namelist namelist_cfg nn_it000 1
232    set_namelist namelist_cfg nn_itend 60
233    set_namelist namelist_cfg nn_fwb 0
234    set_namelist namelist_cfg nn_bench 0
235    set_namelist namelist_cfg ln_ctl .false.
236    set_namelist namelist_cfg ln_clobber .true.
237    set_namelist namelist_cfg nn_solv 2
238    set_namelist namelist_cfg jpni 1
239    set_namelist namelist_cfg jpnj 4
240    set_namelist namelist_cfg jpnij 4
[4245]241    if [ ${USING_MPMD} == "yes" ] ; then
242       set_xio_using_server iodef.xml true
243    else
244       set_xio_using_server iodef.xml false
245    fi
[3520]246    cd ${SETTE_DIR}
[4245]247    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]248    cd ${SETTE_DIR}
249    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
250
251    cd ${SETTE_DIR}
252    export TEST_NAME="REPRO_2_2"
[4252]253    . ./prepare_exe_dir.sh
[3680]254    JOB_FILE=${EXE_DIR}/run_job.sh
255    NPROC=4
[4245]256    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]257    cd ${EXE_DIR}
[4147]258    set_namelist namelist_cfg cn_exp \"GYRE_22\"
259    set_namelist namelist_cfg nn_it000 1
260    set_namelist namelist_cfg nn_itend 60
261    set_namelist namelist_cfg nn_fwb 0
262    set_namelist namelist_cfg ln_ctl .false.
263    set_namelist namelist_cfg ln_clobber .true.
264    set_namelist namelist_cfg nn_solv 2
265    set_namelist namelist_cfg jpni 2
266    set_namelist namelist_cfg jpnj 2
267    set_namelist namelist_cfg jpnij 4
[4245]268    if [ ${USING_MPMD} == "yes" ] ; then
269       set_xio_using_server iodef.xml true
270    else
271       set_xio_using_server iodef.xml false
272    fi
[3520]273    cd ${SETTE_DIR}
[4245]274    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]275    cd ${SETTE_DIR}
276    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3532]277
[3520]278fi
279
280# TESTS FOR ORCA2_LIM_PISCES CONFIGURATION
281if [ ${config} -eq 3 ] ;  then
282    ## Restartability tests for ORCA2_LIM_PISCES
283    export TEST_NAME="LONG"
[4147]284    cd ${CONFIG_DIR}
[4245]285    . ./makenemo -m ${CMP_NAM} -n ORCA2LIMPIS_LONG -r ORCA2_LIM_PISCES -j 8 del_key ${DEL_KEYS}
[3520]286    cd ${SETTE_DIR}
[4252]287    . ./param.cfg
288    . ./all_functions.sh
289    . ./prepare_exe_dir.sh
[3520]290    JOB_FILE=${EXE_DIR}/run_job.sh
[3532]291    NPROC=4
[4245]292    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]293    cd ${EXE_DIR}
[4147]294    set_namelist namelist_cfg cn_exp \"O2LP_LONG\"
295    set_namelist namelist_cfg nn_it000 1
296    set_namelist namelist_cfg nn_itend 150
297    set_namelist namelist_cfg nn_stock 75
298    set_namelist namelist_cfg ln_clobber .true.
[4316]299    set_namelist namelist_cfg nn_fwb 0
[4147]300    set_namelist namelist_cfg jpni 2
301    set_namelist namelist_cfg jpnj 2
302    set_namelist namelist_cfg jpnij 4
303    set_namelist namelist_cfg nn_solv 2
304    set_namelist namelist_top_cfg ln_trcdta .false.
305    set_namelist namelist_top_cfg ln_diatrc .false.
[3520]306    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
307    # if not you need input files, and for tests is not necessary
[4147]308    set_namelist namelist_pisces_cfg ln_presatm .false.
309    set_namelist namelist_pisces_cfg ln_varpar .false.
310    set_namelist namelist_pisces_cfg ln_dust .false.
311    set_namelist namelist_pisces_cfg ln_solub .false.
312    set_namelist namelist_pisces_cfg ln_river .false.
313    set_namelist namelist_pisces_cfg ln_ndepo .false.
314    set_namelist namelist_pisces_cfg ln_ironsed .false.
315    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[4245]316    if [ ${USING_MPMD} == "yes" ] ; then
317       set_xio_using_server iodef.xml true
318    else
319       set_xio_using_server iodef.xml false
320    fi
[3520]321    cd ${SETTE_DIR}
[4245]322    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3532]323   
324    cd ${SETTE_DIR}
[3520]325    export TEST_NAME="SHORT"
[4252]326    . ./prepare_exe_dir.sh
[3520]327    cd ${EXE_DIR}
[4147]328    set_namelist namelist_cfg cn_exp \"O2LP_SHORT\"
329    set_namelist namelist_cfg nn_it000 76
330    set_namelist namelist_cfg nn_itend 150
331    set_namelist namelist_cfg nn_stock 75
332    set_namelist namelist_cfg ln_rstart .true.
333    set_namelist namelist_cfg nn_rstctl 2
334    set_namelist namelist_cfg ln_clobber .true.
[4316]335    set_namelist namelist_cfg nn_fwb 0
[4147]336    set_namelist namelist_cfg jpni 2
337    set_namelist namelist_cfg jpnj 2
338    set_namelist namelist_cfg jpnij 4
339    set_namelist namelist_cfg nn_solv 2
340    set_namelist namelist_top_cfg ln_diatrc .false.
341    set_namelist namelist_top_cfg ln_rsttr .true.
342    set_namelist namelist_top_cfg nn_rsttr 2
343    set_namelist namelist_cfg cn_ocerst_in \"O2LP_LONG_00000075_restart\"
344    set_namelist namelist_ice_cfg cn_icerst_in \"O2LP_LONG_00000075_restart_ice\"
345    set_namelist namelist_top_cfg cn_trcrst_in \"O2LP_LONG_00000075_restart_trc\"
[3520]346    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
347    # if not you need input files, and for tests is not necessary
[4147]348    set_namelist namelist_pisces_cfg ln_presatm .false.
349    set_namelist namelist_pisces_cfg ln_varpar .false.
350    set_namelist namelist_pisces_cfg ln_dust .false.
351    set_namelist namelist_pisces_cfg ln_solub .false.
352    set_namelist namelist_pisces_cfg ln_river .false.
353    set_namelist namelist_pisces_cfg ln_ndepo .false.
354    set_namelist namelist_pisces_cfg ln_ironsed .false.
355    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]356    # put ln_pisdmp to false : no restoring to global mean value
[4147]357    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[3537]358    for (( i=1; i<=$NPROC; i++)) ; do
359        L_NPROC=$(( $i - 1 ))
360        L_NPROC=`printf "%04d\n" ${L_NPROC}`
[3555]361        ln -sf ../LONG/O2LP_LONG_00000075_restart_${L_NPROC}.nc .
362        ln -sf ../LONG/O2LP_LONG_00000075_restart_trc_${L_NPROC}.nc .
363        ln -sf ../LONG/O2LP_LONG_00000075_restart_ice_${L_NPROC}.nc .
[3537]364    done
[4245]365    if [ ${USING_MPMD} == "yes" ] ; then
366       set_xio_using_server iodef.xml true
367    else
368       set_xio_using_server iodef.xml false
369    fi
[3520]370    cd ${SETTE_DIR}
[4245]371    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]372    cd ${SETTE_DIR}
[3532]373    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3520]374fi
375
376if [ ${config} -eq 4 ] ;  then
[3680]377    ## Reproducibility tests for ORCA2_LIM_PISCES
[3520]378    export TEST_NAME="REPRO_4_4"
[4147]379    cd ${CONFIG_DIR}
[4245]380    . ./makenemo -m ${CMP_NAM} -n ORCA2LIMPIS_16 -r ORCA2_LIM_PISCES -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
[3520]381    cd ${SETTE_DIR}
[4252]382    . ./param.cfg
383    . ./all_functions.sh
384    . ./prepare_exe_dir.sh
[3520]385    JOB_FILE=${EXE_DIR}/run_job.sh
386    NPROC=16
[4245]387    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]388    cd ${EXE_DIR}
[4147]389    set_namelist namelist_cfg nn_it000 1
390    set_namelist namelist_cfg nn_itend 75
391    set_namelist namelist_cfg nn_fwb 0
392    set_namelist namelist_cfg ln_ctl .false.
393    set_namelist namelist_cfg ln_clobber .true.
394    set_namelist namelist_cfg jpni 4
395    set_namelist namelist_cfg jpnj 4
396    set_namelist namelist_cfg jpnij 16
397    set_namelist namelist_cfg nn_solv 2
398    set_namelist namelist_top_cfg ln_trcdta .false.
399    set_namelist namelist_top_cfg ln_diatrc .false.
[3520]400    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
401    # if not you need input files, and for tests is not necessary
[4147]402    set_namelist namelist_pisces_cfg ln_presatm .false.
403    set_namelist namelist_pisces_cfg ln_varpar .false.
404    set_namelist namelist_pisces_cfg ln_dust .false.
405    set_namelist namelist_pisces_cfg ln_solub .false.
406    set_namelist namelist_pisces_cfg ln_river .false.
407    set_namelist namelist_pisces_cfg ln_ndepo .false.
408    set_namelist namelist_pisces_cfg ln_ironsed .false.
409    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]410    # put ln_pisdmp to false : no restoring to global mean value
[4147]411    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[4245]412    if [ ${USING_MPMD} == "yes" ] ; then
413       set_xio_using_server iodef.xml true
414    else
415       set_xio_using_server iodef.xml false
416    fi
[3520]417    cd ${SETTE_DIR}
[4245]418    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]419    cd ${SETTE_DIR}
[3532]420    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3520]421
422    cd ${SETTE_DIR}
423    export TEST_NAME="REPRO_2_8"
[4252]424    . ./prepare_exe_dir.sh
[3680]425    JOB_FILE=${EXE_DIR}/run_job.sh
426    NPROC=16
[4245]427    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]428    cd ${EXE_DIR}
[4147]429    set_namelist namelist_cfg nn_it000 1
430    set_namelist namelist_cfg nn_itend 75
431    set_namelist namelist_cfg ln_clobber .true.
[4316]432    set_namelist namelist_cfg nn_fwb 0
[4147]433    set_namelist namelist_cfg jpni 2
434    set_namelist namelist_cfg jpnj 8
435    set_namelist namelist_cfg jpnij 16
436    set_namelist namelist_cfg nn_solv 2
437    set_namelist namelist_top_cfg ln_trcdta .false.
438    set_namelist namelist_top_cfg ln_diatrc .false.
[3520]439    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
440    # if not you need input files, and for tests is not necessary
[4147]441    set_namelist namelist_pisces_cfg ln_presatm .false.
442    set_namelist namelist_pisces_cfg ln_varpar .false.
443    set_namelist namelist_pisces_cfg ln_dust .false.
444    set_namelist namelist_pisces_cfg ln_solub .false.
445    set_namelist namelist_pisces_cfg ln_river .false.
446    set_namelist namelist_pisces_cfg ln_ndepo .false.
447    set_namelist namelist_pisces_cfg ln_ironsed .false.
448    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]449    # put ln_pisdmp to false : no restoring to global mean value
[4147]450    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[4245]451    if [ ${USING_MPMD} == "yes" ] ; then
452       set_xio_using_server iodef.xml true
453    else
454       set_xio_using_server iodef.xml false
455    fi
[3520]456    cd ${SETTE_DIR}
[4245]457    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]458    cd ${SETTE_DIR}
459    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
460fi
461
462# TESTS FOR ORCA2_OFF_PISCES CONFIGURATION
463if [ ${config} -eq 5 ] ;  then
464    ## Restartability tests for ORCA2_OFF_PISCES
465    export TEST_NAME="LONG"
[4147]466    cd ${CONFIG_DIR}
[4245]467    . ./makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_LONG -r ORCA2_OFF_PISCES -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
[3520]468    cd ${SETTE_DIR}
[4252]469    . ./param.cfg
470    . ./all_functions.sh
471    . ./prepare_exe_dir.sh
[3520]472    JOB_FILE=${EXE_DIR}/run_job.sh
[3532]473    NPROC=4
[4245]474    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]475    cd ${EXE_DIR}
[4147]476    set_namelist namelist_cfg cn_exp \"OFFP_LONG\"
477    set_namelist namelist_cfg nn_it000 1
478    set_namelist namelist_cfg nn_itend 40
479    set_namelist namelist_cfg nn_stock 20
480    set_namelist namelist_cfg ln_clobber .true.
481    set_namelist namelist_cfg jpni 2
482    set_namelist namelist_cfg jpnj 2
483    set_namelist namelist_cfg jpnij 4
484    set_namelist namelist_top_cfg ln_trcdta .false.
485    set_namelist namelist_top_cfg ln_diatrc .false.
[3520]486    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
487    # if not you need input files, and for tests is not necessary
[4147]488    set_namelist namelist_pisces_cfg ln_presatm .false.
489    set_namelist namelist_pisces_cfg ln_varpar .false.
490    set_namelist namelist_pisces_cfg ln_dust .false.
491    set_namelist namelist_pisces_cfg ln_solub .false.
492    set_namelist namelist_pisces_cfg ln_river .false.
493    set_namelist namelist_pisces_cfg ln_ndepo .false.
494    set_namelist namelist_pisces_cfg ln_ironsed .false.
495    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]496    # put ln_pisdmp to false : no restoring to global mean value
[4147]497    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[4245]498    if [ ${USING_MPMD} == "yes" ] ; then
499       set_xio_using_server iodef.xml true
500    else
501       set_xio_using_server iodef.xml false
502    fi
[3520]503    cd ${SETTE_DIR}
[4245]504    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]505   
506    cd ${SETTE_DIR}
507    export TEST_NAME="SHORT"
[4252]508    . ./prepare_exe_dir.sh
[3520]509    cd ${EXE_DIR}
[4147]510    set_namelist namelist_cfg cn_exp \"OFFP_SHORT\"
511    set_namelist namelist_cfg nn_it000 21
512    set_namelist namelist_cfg nn_itend 40
513    set_namelist namelist_cfg nn_stock 20
514    set_namelist namelist_cfg ln_clobber .true.
515    set_namelist namelist_cfg jpni 2
516    set_namelist namelist_cfg jpnj 2
517    set_namelist namelist_cfg jpnij 4
518    set_namelist namelist_top_cfg ln_diatrc .false.
519    set_namelist namelist_top_cfg ln_rsttr .true.
520    set_namelist namelist_top_cfg nn_rsttr 2
521    set_namelist namelist_top_cfg cn_trcrst_in \"OFFP_LONG_00000020_restart_trc\"
[3537]522    for (( i=1; i<=$NPROC; i++)) ; do
523        L_NPROC=$(( $i - 1 ))
524        L_NPROC=`printf "%04d\n" ${L_NPROC}`
[3555]525        ln -sf ../LONG/OFFP_LONG_00000020_restart_trc_${L_NPROC}.nc .
[3537]526    done
[3520]527    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
528    # if not you need input files, and for tests is not necessary
[4147]529    set_namelist namelist_pisces_cfg ln_presatm .false.
530    set_namelist namelist_pisces_cfg ln_varpar .false.
531    set_namelist namelist_pisces_cfg ln_dust .false.
532    set_namelist namelist_pisces_cfg ln_solub .false.
533    set_namelist namelist_pisces_cfg ln_river .false.
534    set_namelist namelist_pisces_cfg ln_ndepo .false.
535    set_namelist namelist_pisces_cfg ln_ironsed .false.
536    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]537    # put ln_pisdmp to false : no restoring to global mean value
[4147]538    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[4245]539    if [ ${USING_MPMD} == "yes" ] ; then
540       set_xio_using_server iodef.xml true
541    else
542       set_xio_using_server iodef.xml false
543    fi
[3520]544    cd ${SETTE_DIR}
[4245]545    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME}  ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]546    cd ${SETTE_DIR}
547    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
548fi
549
550if [ ${config} -eq 6 ] ;  then
[3680]551    ## Reproducibility tests for ORCA2_OFF_PISCES
[3520]552    export TEST_NAME="REPRO_4_4"
[4147]553    cd ${CONFIG_DIR}
[4245]554    . ./makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_16 -r ORCA2_OFF_PISCES -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
[3520]555    cd ${SETTE_DIR}
[4252]556    . ./param.cfg
557    . ./all_functions.sh
558    . ./prepare_exe_dir.sh
[3520]559    JOB_FILE=${EXE_DIR}/run_job.sh
560    NPROC=16
[4245]561    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]562    cd ${EXE_DIR}
[4147]563    set_namelist namelist_cfg nn_it000 1
564    set_namelist namelist_cfg nn_itend 40
565    set_namelist namelist_cfg ln_ctl .false.
566    set_namelist namelist_cfg ln_clobber .true.
567    set_namelist namelist_cfg jpni 4
568    set_namelist namelist_cfg jpnj 4
569    set_namelist namelist_cfg jpnij 16
570    set_namelist namelist_top_cfg ln_trcdta .false.
571    set_namelist namelist_top_cfg ln_diatrc .false.
[3520]572    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
573    # if not you need input files, and for tests is not necessary
[4147]574    set_namelist namelist_pisces_cfg ln_presatm .false.
575    set_namelist namelist_pisces_cfg ln_varpar .false.
576    set_namelist namelist_pisces_cfg ln_dust .false.
577    set_namelist namelist_pisces_cfg ln_solub .false.
578    set_namelist namelist_pisces_cfg ln_river .false.
579    set_namelist namelist_pisces_cfg ln_ndepo .false.
580    set_namelist namelist_pisces_cfg ln_ironsed .false.
581    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]582    # put ln_pisdmp to false : no restoring to global mean value
[4147]583    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[4245]584    if [ ${USING_MPMD} == "yes" ] ; then
585       set_xio_using_server iodef.xml true
586    else
587       set_xio_using_server iodef.xml false
588    fi
[3520]589    cd ${SETTE_DIR}
[4245]590    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]591    cd ${SETTE_DIR}
[3532]592    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3520]593
594    cd ${SETTE_DIR}
595    export TEST_NAME="REPRO_2_8"
[4252]596    . ./prepare_exe_dir.sh
[3680]597    JOB_FILE=${EXE_DIR}/run_job.sh
598    NPROC=16
[4245]599    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]600    cd ${EXE_DIR}
[4147]601    set_namelist namelist_cfg nn_it000 1
602    set_namelist namelist_cfg nn_itend 40
603    set_namelist namelist_cfg ln_ctl .false.
604    set_namelist namelist_cfg ln_clobber .true.
605    set_namelist namelist_cfg jpni 2
606    set_namelist namelist_cfg jpnj 8
607    set_namelist namelist_cfg jpnij 16
608    set_namelist namelist_top_cfg ln_trcdta .false.
609    set_namelist namelist_top_cfg ln_diatrc .false.
[3520]610    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
611    # if not you need input files, and for tests is not necessary
[4147]612    set_namelist namelist_pisces_cfg ln_presatm .false.
613    set_namelist namelist_pisces_cfg ln_varpar .false.
614    set_namelist namelist_pisces_cfg ln_dust .false.
615    set_namelist namelist_pisces_cfg ln_solub .false.
616    set_namelist namelist_pisces_cfg ln_river .false.
617    set_namelist namelist_pisces_cfg ln_ndepo .false.
618    set_namelist namelist_pisces_cfg ln_ironsed .false.
619    set_namelist namelist_pisces_cfg ln_hydrofe .false.
[3680]620    # put ln_pisdmp to false : no restoring to global mean value
[4147]621    set_namelist namelist_pisces_cfg ln_pisdmp .false.
[4245]622    if [ ${USING_MPMD} == "yes" ] ; then
623       set_xio_using_server iodef.xml true
624    else
625       set_xio_using_server iodef.xml false
626    fi
[3520]627    cd ${SETTE_DIR}
[4245]628    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]629    cd ${SETTE_DIR}
630    . ./fcm_job.sh $NPROC  ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
631fi
632
[4796]633
634# TESTS FOR ORCA2_LIM3 CONFIGURATION
635if [ ${config} -eq 7 ] ;  then
636    ## Restartability tests for ORCA2_LIM3
637    export TEST_NAME="LONG"
638    cd ${CONFIG_DIR}
639    . ./makenemo -m ${CMP_NAM} -n ORCA2LIM3_LONG -r ORCA2_LIM3 -j 8 del_key ${DEL_KEYS}
640    cd ${SETTE_DIR}
641    . ./param.cfg
642    . ./all_functions.sh
643    . ./prepare_exe_dir.sh
644    JOB_FILE=${EXE_DIR}/run_job.sh
645    NPROC=4
646    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
647    cd ${EXE_DIR}
648    set_namelist namelist_cfg cn_exp \"O2L3_LONG\"
649    set_namelist namelist_cfg nn_it000 1
650    set_namelist namelist_cfg nn_itend 150
651    set_namelist namelist_cfg nn_stock 75
652    set_namelist namelist_cfg ln_clobber .true.
653    set_namelist namelist_cfg nn_fwb 0
654    set_namelist namelist_cfg jpni 2
655    set_namelist namelist_cfg jpnj 2
656    set_namelist namelist_cfg jpnij 4
657    set_namelist namelist_cfg nn_solv 2
658    if [ ${USING_MPMD} == "yes" ] ; then
659       set_xio_using_server iodef.xml true
660    else
661       set_xio_using_server iodef.xml false
662    fi
663    cd ${SETTE_DIR}
664    . ./prepare_job.sh input_ORCA2_LIM3.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
665   
666    cd ${SETTE_DIR}
667    export TEST_NAME="SHORT"
668    . ./prepare_exe_dir.sh
669    cd ${EXE_DIR}
670    set_namelist namelist_cfg cn_exp \"O2L3_SHORT\"
671    set_namelist namelist_cfg nn_it000 76
672    set_namelist namelist_cfg nn_itend 150
673    set_namelist namelist_cfg nn_stock 75
674    set_namelist namelist_cfg ln_rstart .true.
675    set_namelist namelist_cfg nn_rstctl 2
676    set_namelist namelist_cfg ln_clobber .true.
677    set_namelist namelist_cfg nn_fwb 0
678    set_namelist namelist_cfg jpni 2
679    set_namelist namelist_cfg jpnj 2
680    set_namelist namelist_cfg jpnij 4
681    set_namelist namelist_cfg nn_solv 2
682    set_namelist namelist_cfg cn_ocerst_in \"O2L3_LONG_00000075_restart\"
683    set_namelist namelist_ice_cfg cn_icerst_in \"O2L3_LONG_00000075_restart_ice\"
684    for (( i=1; i<=$NPROC; i++)) ; do
685        L_NPROC=$(( $i - 1 ))
686        L_NPROC=`printf "%04d\n" ${L_NPROC}`
687        ln -sf ../LONG/O2L3_LONG_00000075_restart_${L_NPROC}.nc .
688        ln -sf ../LONG/O2L3_LONG_00000075_restart_ice_${L_NPROC}.nc .
689    done
690    if [ ${USING_MPMD} == "yes" ] ; then
691       set_xio_using_server iodef.xml true
692    else
693       set_xio_using_server iodef.xml false
694    fi
695    cd ${SETTE_DIR}
696    . ./prepare_job.sh input_ORCA2_LIM3.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
697    cd ${SETTE_DIR}
698    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
699fi
700
701if [ ${config} -eq 8 ] ;  then
702    ## Reproducibility tests for ORCA2_LIM3
703    export TEST_NAME="REPRO_4_4"
704    cd ${CONFIG_DIR}
705    . ./makenemo -m ${CMP_NAM} -n ORCA2LIM3_16 -r ORCA2_LIM3 -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
706    cd ${SETTE_DIR}
707    . ./param.cfg
708    . ./all_functions.sh
709    . ./prepare_exe_dir.sh
710    JOB_FILE=${EXE_DIR}/run_job.sh
711    NPROC=16
712    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
713    cd ${EXE_DIR}
714    set_namelist namelist_cfg nn_it000 1
715    set_namelist namelist_cfg nn_itend 75
716    set_namelist namelist_cfg nn_fwb 0
717    set_namelist namelist_cfg ln_ctl .false.
718    set_namelist namelist_cfg ln_clobber .true.
719    set_namelist namelist_cfg jpni 4
720    set_namelist namelist_cfg jpnj 4
721    set_namelist namelist_cfg jpnij 16
722    set_namelist namelist_cfg nn_solv 2
723    if [ ${USING_MPMD} == "yes" ] ; then
724       set_xio_using_server iodef.xml true
725    else
726       set_xio_using_server iodef.xml false
727    fi
728    cd ${SETTE_DIR}
729    . ./prepare_job.sh input_ORCA2_LIM3.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
730    cd ${SETTE_DIR}
731    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
732
733    cd ${SETTE_DIR}
734    export TEST_NAME="REPRO_2_8"
735    . ./prepare_exe_dir.sh
736    JOB_FILE=${EXE_DIR}/run_job.sh
737    NPROC=16
738    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
739    cd ${EXE_DIR}
740    set_namelist namelist_cfg nn_it000 1
741    set_namelist namelist_cfg nn_itend 75
742    set_namelist namelist_cfg ln_clobber .true.
743    set_namelist namelist_cfg nn_fwb 0
744    set_namelist namelist_cfg jpni 2
745    set_namelist namelist_cfg jpnj 8
746    set_namelist namelist_cfg jpnij 16
747    set_namelist namelist_cfg nn_solv 2
748    if [ ${USING_MPMD} == "yes" ] ; then
749       set_xio_using_server iodef.xml true
750    else
751       set_xio_using_server iodef.xml false
752    fi
753
754    cd ${SETTE_DIR}
755    . ./prepare_job.sh input_ORCA2_LIM3.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
756    cd ${SETTE_DIR}
757    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
758fi
759
760
[3680]761# TESTS FOR AMM12 CONFIGURATION
[4796]762if [ ${config} -eq 9 ] ;  then
[3532]763    ## Restartability tests for AMM12
764    export TEST_NAME="LONG"
[4147]765    cd ${CONFIG_DIR}
[4245]766    . ./makenemo -m ${CMP_NAM} -n AMM12_LONG -r AMM12 -j 8 add_key "key_tide" del_key ${DEL_KEYS}
[3520]767    cd ${SETTE_DIR}
[4252]768    . ./param.cfg
769    . ./all_functions.sh
770    . ./prepare_exe_dir.sh
[3520]771    JOB_FILE=${EXE_DIR}/run_job.sh
772    NPROC=32
[4245]773    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]774    cd ${EXE_DIR}
[4147]775    set_namelist namelist_cfg nn_it000 1
[4252]776    set_namelist namelist_cfg nn_itend 576
777    set_namelist namelist_cfg nn_stock 288
[4147]778    set_namelist namelist_cfg nn_fwb 0
779    set_namelist namelist_cfg ln_ctl .false.
780    set_namelist namelist_cfg ln_clobber .true.
781    set_namelist namelist_cfg jpni 8
782    set_namelist namelist_cfg jpnj 4
783    set_namelist namelist_cfg jpnij 32
[4245]784    if [ ${USING_MPMD} == "yes" ] ; then
785       set_xio_using_server iodef.xml true
786    else
787       set_xio_using_server iodef.xml false
788    fi
[3520]789    cd ${SETTE_DIR}
[4245]790    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]791
792    cd ${SETTE_DIR}
[3532]793    export TEST_NAME="SHORT"
[4379]794    . ./prepare_exe_dir.sh
[3520]795    cd ${EXE_DIR}
[4252]796    set_namelist namelist_cfg nn_it000 289
797    set_namelist namelist_cfg nn_itend 576
[4147]798    set_namelist namelist_cfg nn_fwb 0
799    set_namelist namelist_cfg ln_ctl .false.
800    set_namelist namelist_cfg ln_clobber .true.
801    set_namelist namelist_cfg jpni 8
802    set_namelist namelist_cfg jpnj 4
803    set_namelist namelist_cfg jpnij 32
804    set_namelist namelist_cfg ln_rstart .true.
805    set_namelist namelist_cfg nn_rstctl 2
[4252]806    set_namelist namelist_cfg cn_ocerst_in \"AMM12_00000288_restart_oce_out\"
807    set_namelist namelist_cfg nn_date0 20120102
[3537]808    for (( i=1; i<=$NPROC; i++)) ; do
809        L_NPROC=$(( $i - 1 ))
810        L_NPROC=`printf "%04d\n" ${L_NPROC}`
[4252]811        ln -sf ../LONG/AMM12_00000288_restart_oce_out_${L_NPROC}.nc .
[3537]812    done
[4245]813    if [ ${USING_MPMD} == "yes" ] ; then
814       set_xio_using_server iodef.xml true
815    else
816       set_xio_using_server iodef.xml false
817    fi
[3520]818    cd ${SETTE_DIR}
[4245]819    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]820    cd ${SETTE_DIR}
[3532]821    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3520]822fi
823
[4796]824if [ ${config} -eq 10 ] ;  then
[3680]825## Reproducibility tests for AMM12
826    export TEST_NAME="REPRO_8_4"
[4147]827    cd ${CONFIG_DIR}
[4245]828    . ./makenemo -m ${CMP_NAM} -n AMM12_32 -r AMM12 -j 8 add_key "key_mpp_rep key_tide" del_key ${DEL_KEYS}
[3520]829    cd ${SETTE_DIR}
[4252]830    . ./param.cfg
831    . ./all_functions.sh
832    . ./prepare_exe_dir.sh
[3520]833    JOB_FILE=${EXE_DIR}/run_job.sh
834    NPROC=32
[4245]835    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
[3520]836    cd ${EXE_DIR}
[4147]837    set_namelist namelist_cfg nn_it000 1
838    set_namelist namelist_cfg nn_itend 576
839    set_namelist namelist_cfg nn_fwb 0
840    set_namelist namelist_cfg ln_ctl .false.
841    set_namelist namelist_cfg ln_clobber .true.
842    set_namelist namelist_cfg jpni 8
843    set_namelist namelist_cfg jpnj 4
844    set_namelist namelist_cfg jpnij 32
[4245]845    if [ ${USING_MPMD} == "yes" ] ; then
846       set_xio_using_server iodef.xml true
847    else
848       set_xio_using_server iodef.xml false
849    fi
[3520]850    cd ${SETTE_DIR}
[4245]851    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]852    cd ${SETTE_DIR}
853    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
854
855    cd ${SETTE_DIR}
[3680]856    export TEST_NAME="REPRO_4_8"
[4252]857    . ./prepare_exe_dir.sh
[3520]858    cd ${EXE_DIR}
[4147]859    set_namelist namelist_cfg nn_it000 1
860    set_namelist namelist_cfg nn_itend 576
861    set_namelist namelist_cfg nn_fwb 0
862    set_namelist namelist_cfg ln_ctl .false.
863    set_namelist namelist_cfg ln_clobber .true.
864    set_namelist namelist_cfg jpni 4
865    set_namelist namelist_cfg jpnj 8
866    set_namelist namelist_cfg jpnij 32
[4245]867    if [ ${USING_MPMD} == "yes" ] ; then
868       set_xio_using_server iodef.xml true
869    else
870       set_xio_using_server iodef.xml false
871    fi
[3520]872    cd ${SETTE_DIR}
[4245]873    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[3520]874    cd ${SETTE_DIR}
[3532]875    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
[3520]876fi
877
878
[4147]879# TESTS FOR ORCA2_SAS_LIM CONFIGURATION
[4796]880if [ ${config} -eq 11 ] ;  then
[4147]881    ## Restartability tests for SAS
882    export TEST_NAME="LONG"
883    cd ${CONFIG_DIR}
[4260]884    . ./makenemo -m ${CMP_NAM} -n SAS_LONG -r ORCA2_SAS_LIM -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
[4147]885    cd ${SETTE_DIR}
[4252]886    . ./param.cfg
887    . ./all_functions.sh
888    . ./prepare_exe_dir.sh
[4147]889    JOB_FILE=${EXE_DIR}/run_job.sh
890    NPROC=32
891    \rm $JOB_FILE
892    cd ${EXE_DIR}
893    set_namelist namelist_cfg cn_exp \"SAS\"
894    set_namelist namelist_cfg nn_it000 1
895    set_namelist namelist_cfg nn_itend 100
896    set_namelist namelist_cfg nn_stock 50
897    set_namelist namelist_cfg ln_ctl .false.
898    set_namelist namelist_cfg ln_clobber .true.
[4316]899    set_namelist namelist_cfg nn_fwb 0
[4147]900    set_namelist namelist_cfg jpni 8
901    set_namelist namelist_cfg jpnj 4
902    set_namelist namelist_cfg jpnij 32
[4245]903    if [ ${USING_MPMD} == "yes" ] ; then
904       set_xio_using_server iodef.xml true
905    else
906       set_xio_using_server iodef.xml false
907    fi
[4147]908    cd ${SETTE_DIR}
[4245]909    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[4147]910
911    cd ${SETTE_DIR}
912    export TEST_NAME="SHORT"
[4252]913    . ./prepare_exe_dir.sh
[4147]914    cd ${EXE_DIR}
915    set_namelist namelist_cfg cn_exp \"SAS\"
916    set_namelist namelist_cfg nn_it000 51
917    set_namelist namelist_cfg nn_itend 100
918    set_namelist namelist_cfg ln_ctl .false.
919    set_namelist namelist_cfg ln_clobber .true.
[4316]920    set_namelist namelist_cfg nn_fwb 0
[4147]921    set_namelist namelist_cfg jpni 8
922    set_namelist namelist_cfg jpnj 4
923    set_namelist namelist_cfg jpnij 32
924    set_namelist namelist_cfg nn_rstctl 2
925    set_namelist namelist_cfg cn_ocerst_in \"SAS_00000050_restart\"
926    for (( i=1; i<=$NPROC; i++)) ; do
927        L_NPROC=$(( $i - 1 ))
928        L_NPROC=`printf "%04d\n" ${L_NPROC}`
929        ln -sf ../LONG/SAS_00000050_restart_${L_NPROC}.nc .
930    done
[4245]931    if [ ${USING_MPMD} == "yes" ] ; then
932       set_xio_using_server iodef.xml true
933    else
934       set_xio_using_server iodef.xml false
935    fi
[4147]936    cd ${SETTE_DIR}
[4245]937    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[4147]938    cd ${SETTE_DIR}
939    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
940fi
941
[4796]942if [ ${config} -eq 12 ] ;  then
[4147]943## Reproducibility tests for ORCA2_SAS_LIM
944    export TEST_NAME="REPRO_8_4"
945    cd ${CONFIG_DIR}
[4245]946    . ./makenemo -m ${CMP_NAM} -n SAS_32 -r ORCA2_SAS_LIM -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
[4147]947    cd ${SETTE_DIR}
[4252]948    . ./param.cfg
949    . ./all_functions.sh
950    . ./prepare_exe_dir.sh
[4147]951    JOB_FILE=${EXE_DIR}/run_job.sh
952    NPROC=32
953    \rm ${JOB_FILE}
954    cd ${EXE_DIR}
955    set_namelist namelist_cfg cn_exp \"SAS\"
956    set_namelist namelist_cfg nn_it000 51
957    set_namelist namelist_cfg nn_itend 100
958    set_namelist namelist_cfg ln_ctl .false.
959    set_namelist namelist_cfg ln_clobber .true.
[4316]960    set_namelist namelist_cfg nn_fwb 0
[4147]961    set_namelist namelist_cfg jpni 8
962    set_namelist namelist_cfg jpnj 4
963    set_namelist namelist_cfg jpnij 32
[4245]964    if [ ${USING_MPMD} == "yes" ] ; then
965       set_xio_using_server iodef.xml true
966    else
967       set_xio_using_server iodef.xml false
968    fi
[4147]969    cd ${SETTE_DIR}
[4245]970    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE}  ${NUM_XIOSERVERS}
[4147]971    cd ${SETTE_DIR}
972    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
973    cd ${SETTE_DIR}
974    export TEST_NAME="REPRO_4_8"
[4252]975    . ./prepare_exe_dir.sh
[4147]976    cd ${EXE_DIR}
977    set_namelist namelist_cfg cn_exp \"SAS\"
978    set_namelist namelist_cfg nn_it000 51
979    set_namelist namelist_cfg nn_itend 100
980    set_namelist namelist_cfg ln_ctl .false.
981    set_namelist namelist_cfg ln_clobber .true.
[4316]982    set_namelist namelist_cfg nn_fwb 0
[4147]983    set_namelist namelist_cfg jpni 4
984    set_namelist namelist_cfg jpnj 8
985    set_namelist namelist_cfg jpnij 32
[4245]986    if [ ${USING_MPMD} == "yes" ] ; then
987       set_xio_using_server iodef.xml true
988    else
989       set_xio_using_server iodef.xml false
990    fi
[4147]991    cd ${SETTE_DIR}
[4245]992    . ./prepare_job.sh input_SAS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[4147]993    cd ${SETTE_DIR}
994    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
995fi
[4990]996# TESTS FOR ISOMIP CONFIGURATION
997if [ ${config} -eq 13 ] ;  then
998    ## Restartability tests for ISOMIP
999    export TEST_NAME="LONG"
1000    cd ${CONFIG_DIR}
1001    . ./makenemo -m ${CMP_NAM} -n ISOMIP_LONG -r ISOMIP -j 8 del_key ${DEL_KEYS}
1002    cd ${SETTE_DIR}
1003    . ./param.cfg
1004    . ./all_functions.sh
1005    . ./prepare_exe_dir.sh
1006    JOB_FILE=${EXE_DIR}/run_job.sh
1007    NPROC=4
1008    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1009    cd ${EXE_DIR}
1010    set_namelist namelist_cfg cn_exp \"ISOMIP_LONG\"
1011    set_namelist namelist_cfg nn_it000 1
1012    set_namelist namelist_cfg nn_itend 96
1013    set_namelist namelist_cfg nn_stock 48
1014    set_namelist namelist_cfg ln_clobber .true.
1015    set_namelist namelist_cfg nn_fwb 0
1016    set_namelist namelist_cfg nn_solv 2
1017    set_namelist namelist_cfg jpni 2
1018    set_namelist namelist_cfg jpnj 2
1019    set_namelist namelist_cfg jpnij 4
1020    if [ ${USING_MPMD} == "yes" ] ; then
1021       set_xio_using_server iodef.xml true
1022    else
1023       set_xio_using_server iodef.xml false
1024    fi
1025    cd ${SETTE_DIR}
1026    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
[4147]1027
[4990]1028    cd ${SETTE_DIR}
1029    export TEST_NAME="SHORT"
1030    . ./prepare_exe_dir.sh
1031    cd ${EXE_DIR}
1032    set_namelist namelist_cfg cn_exp \"ISOMIP_SHORT\"
1033    set_namelist namelist_cfg nn_it000 49
1034    set_namelist namelist_cfg nn_itend 96
1035    set_namelist namelist_cfg nn_stock 48
1036    set_namelist namelist_cfg ln_rstart .true.
1037    set_namelist namelist_cfg nn_rstctl 2
1038    set_namelist namelist_cfg ln_clobber .true.
1039    set_namelist namelist_cfg nn_fwb 0
1040    set_namelist namelist_cfg nn_solv 2
1041    set_namelist namelist_cfg jpni 2
1042    set_namelist namelist_cfg jpnj 2
1043    set_namelist namelist_cfg jpnij 4
1044    set_namelist namelist_cfg cn_ocerst_in \"ISOMIP_LONG_00000048_restart\"
1045    if [ ${USING_MPMD} == "yes" ] ; then
1046       set_xio_using_server iodef.xml true
1047    else
1048       set_xio_using_server iodef.xml false
1049    fi
1050    for (( i=1; i<=$NPROC; i++)) ; do
1051        L_NPROC=$(( $i - 1 ))
1052        L_NPROC=`printf "%04d\n" ${L_NPROC}`
1053        ln -sf ../LONG/ISOMIP_LONG_00000048_restart_${L_NPROC}.nc .
1054    done
1055    if [ ${USING_MPMD} == "yes" ] ; then
1056       set_xio_using_server iodef.xml true
1057    else
1058       set_xio_using_server iodef.xml false
1059    fi
1060    cd ${SETTE_DIR}
1061    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1062    cd ${SETTE_DIR}
1063    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1064fi
1065if [ ${config} -eq 14 ] ;  then
1066    ## Reproducibility tests for ISOMIP
1067    export TEST_NAME="REPRO_1_4"
1068    cd ${CONFIG_DIR}
1069    . ./makenemo -m ${CMP_NAM} -n ISOMIP_4 -r ISOMIP -j 8 add_key "key_mpp_rep" del_key ${DEL_KEYS}
1070    cd ${SETTE_DIR}
1071    . ./param.cfg
1072    . ./all_functions.sh
1073    . ./prepare_exe_dir.sh
1074    JOB_FILE=${EXE_DIR}/run_job.sh
1075    NPROC=4
1076    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1077    cd ${EXE_DIR}
1078    set_namelist namelist_cfg cn_exp \"ISOMIP_14\"
1079    set_namelist namelist_cfg nn_it000 1
1080    set_namelist namelist_cfg nn_itend 48
1081    set_namelist namelist_cfg nn_fwb 0
1082    set_namelist namelist_cfg nn_bench 0
1083    set_namelist namelist_cfg ln_ctl .false.
1084    set_namelist namelist_cfg ln_clobber .true.
1085    set_namelist namelist_cfg nn_solv 2
1086    set_namelist namelist_cfg jpni 1
1087    set_namelist namelist_cfg jpnj 4
1088    set_namelist namelist_cfg jpnij 4
1089    if [ ${USING_MPMD} == "yes" ] ; then
1090       set_xio_using_server iodef.xml true
1091    else
1092       set_xio_using_server iodef.xml false
1093    fi
1094    cd ${SETTE_DIR}
1095    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1096    cd ${SETTE_DIR}
1097    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1098
1099    cd ${SETTE_DIR}
1100    export TEST_NAME="REPRO_2_2"
1101    . ./prepare_exe_dir.sh
1102    JOB_FILE=${EXE_DIR}/run_job.sh
1103    NPROC=4
1104    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1105    cd ${EXE_DIR}
1106    set_namelist namelist_cfg cn_exp \"ISOMIP_22\"
1107    set_namelist namelist_cfg nn_it000 1
1108    set_namelist namelist_cfg nn_itend 48
1109    set_namelist namelist_cfg nn_fwb 0
1110    set_namelist namelist_cfg ln_ctl .false.
1111    set_namelist namelist_cfg ln_clobber .true.
1112    set_namelist namelist_cfg nn_solv 2
1113    set_namelist namelist_cfg jpni 2
1114    set_namelist namelist_cfg jpnj 2
1115    set_namelist namelist_cfg jpnij 4
1116    if [ ${USING_MPMD} == "yes" ] ; then
1117       set_xio_using_server iodef.xml true
1118    else
1119       set_xio_using_server iodef.xml false
1120    fi
1121    cd ${SETTE_DIR}
1122    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1123    cd ${SETTE_DIR}
1124    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1125
1126fi
1127
1128## Test assimilation interface code, OBS and ASM for reproducibility
1129## Restartability not tested (ASM code not restartable while increments are being applied)
1130if [ ${config} -eq 15 ] ; then
1131   ## Reproducibility tests for ORCA2_LIM_OBS
1132    export TEST_NAME="REPRO_4_4"
1133    cd ${CONFIG_DIR}
1134    . ./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}
1135    cd ${SETTE_DIR}
1136    . ./param.cfg
1137    . ./all_functions.sh
1138    . ./prepare_exe_dir.sh
1139    JOB_FILE=${EXE_DIR}/run_job.sh
1140    NPROC=16
1141    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1142    cd ${EXE_DIR}
1143    set_namelist namelist_cfg nn_it000 1
1144    set_namelist namelist_cfg nn_itend 75
1145    set_namelist namelist_cfg nn_fwb 0
1146    set_namelist namelist_cfg ln_ctl .false.
1147    set_namelist namelist_cfg ln_clobber .true.
1148    set_namelist namelist_cfg jpni 4
1149    set_namelist namelist_cfg jpnj 4
1150    set_namelist namelist_cfg jpnij 16
1151    set_namelist namelist_cfg nn_solv 2   
1152    set_namelist namelist_cfg ln_t3d .true.
1153    set_namelist namelist_cfg ln_s3d .true.
1154    set_namelist namelist_cfg ln_profb .true.
1155    set_namelist namelist_cfg ln_sst .true.
1156    set_namelist namelist_cfg ln_sstfb .true.
1157    set_namelist namelist_cfg ln_sla .true.
1158    set_namelist namelist_cfg ln_slafb .true.
1159    set_namelist namelist_cfg ln_seaice .false.
1160    set_namelist namelist_cfg ln_bkgwri .true.
1161    set_namelist namelist_cfg ln_trainc .true.
1162    set_namelist namelist_cfg ln_dyninc .true.
1163    set_namelist namelist_cfg ln_sshinc .true.
1164    set_namelist namelist_cfg ln_asmiau .true.
1165    if [ ${USING_MPMD} == "yes" ] ; then
1166       set_xio_using_server iodef.xml true
1167    else
1168       set_xio_using_server iodef.xml false
1169    fi
1170    cd ${SETTE_DIR}
1171    . ./prepare_job.sh input_ORCA2_LIM_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1172    cd ${SETTE_DIR}
1173    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1174
1175   cd ${SETTE_DIR}
1176    export TEST_NAME="REPRO_2_8"
1177    . ./prepare_exe_dir.sh
1178    JOB_FILE=${EXE_DIR}/run_job.sh
1179    NPROC=16
1180    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1181    cd ${EXE_DIR}
1182    set_namelist namelist_cfg nn_it000 1
1183    set_namelist namelist_cfg nn_itend 75
1184    set_namelist namelist_cfg nn_fwb 0
1185    set_namelist namelist_cfg ln_ctl .false.
1186    set_namelist namelist_cfg ln_clobber .true.
1187    set_namelist namelist_cfg jpni 2
1188    set_namelist namelist_cfg jpnj 8
1189    set_namelist namelist_cfg jpnij 16
1190    set_namelist namelist_cfg nn_solv 2
1191    set_namelist namelist_cfg ln_t3d .true.
1192    set_namelist namelist_cfg ln_s3d .true.
1193    set_namelist namelist_cfg ln_profb .true.
1194    set_namelist namelist_cfg ln_sst .true.
1195    set_namelist namelist_cfg ln_sstfb .true.
1196    set_namelist namelist_cfg ln_sla .true.
1197    set_namelist namelist_cfg ln_slafb .true.
1198    set_namelist namelist_cfg ln_seaice .false.
1199    set_namelist namelist_cfg ln_bkgwri .true.
1200    set_namelist namelist_cfg ln_trainc .true.
1201    set_namelist namelist_cfg ln_dyninc .true.
1202    set_namelist namelist_cfg ln_sshinc .true.
1203    set_namelist namelist_cfg ln_asmiau .true.
1204    if [ ${USING_MPMD} == "yes" ] ; then
1205       set_xio_using_server iodef.xml true
1206    else
1207       set_xio_using_server iodef.xml false
1208    fi
1209    cd ${SETTE_DIR}
1210    . ./prepare_job.sh input_ORCA2_LIM_OBS.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1211    cd ${SETTE_DIR}
1212    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1213fi
[4245]1214# TEST FOR ORCA2_LIM_AGRIF : simple test of running AGRIF (no restartability neither reproducibility tests)
[4990]1215if [ ${config} -eq 16 ] ;  then
[4245]1216    ## ORCA2_LIM with Agulhas AGRIF zoom in MPI
1217    export TEST_NAME="SHORT"
1218    cd ${CONFIG_DIR}
1219    . ./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}
1220    cd ${SETTE_DIR}
[4252]1221    . ./param.cfg
1222    . ./all_functions.sh
1223    . ./prepare_exe_dir.sh
[4245]1224    JOB_FILE=${EXE_DIR}/run_job.sh
1225    NPROC=2
1226    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
1227    cd ${EXE_DIR}
1228    set_namelist namelist_cfg nn_it000 1
1229    set_namelist namelist_cfg nn_itend 75
1230    set_namelist namelist_cfg ln_ctl .false.
1231    set_namelist namelist_cfg ln_clobber .true.
[4316]1232    set_namelist namelist_cfg nn_fwb 0
[4245]1233    set_namelist namelist_cfg jpni 1
1234    set_namelist namelist_cfg jpnj 2
1235    set_namelist namelist_cfg jpnij 2
1236    set_namelist 1_namelist_cfg nn_it000 1
1237    set_namelist 1_namelist_cfg nn_itend 150
1238    set_namelist 1_namelist_cfg ln_ctl .false.
1239    set_namelist 1_namelist_cfg ln_clobber .true.
1240    if [ ${USING_MPMD} == "yes" ] ; then
1241       set_xio_using_server iodef.xml true
1242    else
1243       set_xio_using_server iodef.xml false
1244    fi
1245    cd ${SETTE_DIR}
1246    . ./prepare_job.sh input_ORCA2_LIM_AGRIF.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
1247    cd ${SETTE_DIR}
1248    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
1249fi
1250
[3520]1251done
Note: See TracBrowser for help on using the repository browser.