source: utils/CI/sette/sette_test-cases.sh @ 9602

Last change on this file since 9602 was 9602, checked in by nicolasmartin, 4 years ago

Changes to comply with the new structure of the trunk

  • Property svn:executable set to *
File size: 23.9 KB
Line 
1#!/bin/bash
2############################################################
3# Author : Simona Flavoni for NEMO
4# Contact: sflod@locean-ipsl.upmc.fr
5#
6# sette_test-cases.sh   : principal script of SET TEsts for NEMO (SETTE)
7#                       : this script : compiles, run and tests TEST_CASES
8#
9#                       : TO DO: test if nitend is equal to end of run.stat
10# ----------------------------------------------------------------------
11# NEMO/SETTE , NEMO Consortium (2018)
12# Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
13# ----------------------------------------------------------------------
14#
15#
16#############################################################
17#set -vx
18set -o posix
19#set -u
20#set -e
21# ===========
22# DESCRIPTION
23# ===========
24#
25# Variables to be checked by user:
26#
27# COMPILER          : name of compiler as defined in NEMOGCM/ARCH directory
28# BATCH_COMMAND_PAR :  name of the command for submitting parallel batch jobs
29# BATCH_COMMAND_SEQ :  name of the command for submitting sequential batch jobs 
30# INTERACT_FLAG     : flag to run in interactive mode "yes"
31#                           to run in batch mode "no"
32# MPIRUN_FLAG       : flag to run in parallel (MPI) "yes"
33#                           to run in sequential mode (NB_PROC = 1) "no"
34# USING_XIOS        : flag to control the activation of key_iomput
35#                      "yes" to compile using key_iomput and link to the external XIOS library
36#                      "no"  to compile without key_iomput and link to the old IOIPSL library
37# USING_MPMD        : flag to control the use of stand-alone IO servers
38#                     requires USING_XIOS="yes"
39#                      "yes" to run in MPMD (detached) mode with stand-alone IO servers
40#                      "no"  to run in SPMD (attached) mode without separate IO servers
41# NUM_XIOSERVERS    : number of stand-alone IO servers to employ
42#                     set to zero if USING_MPMD="no"
43#
44# Principal script is sette_test-cases.sh, that calls
45#
46#  makenemo  : to create successive exectuables in ${CONFIG_NAME}/BLD/bin/nemo.exe
47#              and links to nemo in ${CONFIG_NAME}/EXP00)
48#
49#  param.cfg : sets and loads following directories:
50#
51#   FORCING_DIR         : is the directory for forcing files (tarfile)
52#   INPUT_DIR           : is the directory for input files storing
53#   TMPDIR              : is the temporary directory (if needed)
54#   NEMO_VALIDATION_DIR : is the validation directory
55#
56#   (NOTE: this file is the same for all configrations to be tested with sette_test-cases.sh)
57#
58#   all_functions.sh : loads functions used by sette (note: new functions can be added here)
59#   set_namelist     : function declared in all_functions that sets namelist parameters
60#   post_test_tidyup : creates validation storage directory and copies required output files
61#                      (run.stat and ocean.output) in it after execution of test.
62#
63#  VALIDATION tree is:
64#
65#   NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
66#
67#  prepare_exe_dir.sh : defines and creates directory where the test is executed
68#                       execution directory takes name of TEST_NAME defined for every test
69#                       in sette_test-cases.sh. (each test in executed in its own directory)
70#
71#  prepare_job.sh     : to generate the script run_job.sh
72#
73#  fcm_job.sh         : run in batch (INTERACT_FLAG="no") or interactive (INTERACT_FLAG="yes")
74#                        see sette_test-cases.sh and BATCH_TEMPLATE directory
75#
76#  NOTE: jobs requiring initial or forcing data need to have an input_CONFIG.cfg in which
77#        can be found paths to the input tar file)
78#  NOTE: if job is not launched for any reason you have the executable ready in ${EXE_DIR}
79#        directory
80#  NOTE: the changed namelists are left in ${EXE_DIR} directory whereas original namelists
81#        remain in ${NEW_CONF}/EXP00
82#
83#  NOTE: a log file, output.sette, is created in ${SETTE_DIR} with the echoes of
84#        executed commands
85#
86#  NOTE: if sette_test-cases.sh is stopped in output.sette there is written the last command
87#        executed by sette_test-cases.sh
88#
89# example use: ./sette_test-cases.sh
90#########################################################################################
91#
92# Compiler among those in NEMOGCM/ARCH
93COMPILER=X64_ADA
94
95export BATCH_COMMAND_PAR="llsubmit"
96export BATCH_COMMAND_SEQ=$BATCH_COMMAND_PAR
97export INTERACT_FLAG="no"
98export MPIRUN_FLAG="yes"
99export USING_XIOS="yes"
100#
101export DEL_KEYS="key_iomput"
102if [ ${USING_XIOS} == "yes" ] 
103 then
104   export DEL_KEYS=""
105fi
106#
107# Settings which control the use of stand alone servers (only relevant if using xios)
108#
109export USING_MPMD="no"
110export NUM_XIOSERVERS=4
111export JOB_PREFIX=batch-mpmd
112#
113if [ ${USING_MPMD} == "no" ] 
114 then
115   export NUM_XIOSERVERS=0
116   export JOB_PREFIX=batch
117fi
118#
119#
120if [ ${USING_MPMD} == "yes" ] && [ ${USING_XIOS} == "no"]
121 then
122   echo "Incompatible choices. MPMD mode requires the XIOS server"
123   exit
124fi
125
126# Directory to run the tests
127SETTE_DIR=$(cd $(dirname "$0"); pwd)
128MAIN_DIR=$(dirname $SETTE_DIR)
129CONFIG_DIR0=${MAIN_DIR}/cfgs
130TOOLS_DIR=${MAIN_DIR}/TOOLS
131COMPIL_DIR=${TOOLS_DIR}/COMPILE
132
133CMP_NAM=${1:-$COMPILER}
134# Copy job_batch_COMPILER file for specific compiler into job_batch_template
135cd ${SETTE_DIR}
136cp BATCH_TEMPLATE/${JOB_PREFIX}-${COMPILER} job_batch_template || exit
137# Description of configuration tested:
138# OVERFLOW       : 1  TEST s-coordinates : (tracers) Advection schemes: FCT2, FCT4, ubs
139#                                        & (dynamics) advection schemes: flux form (ubs, centered), vector form (een)
140#                          zps-coordinates : (tracers) Advection schemes: FCT2, FCT4, ubs
141#                                        & (dynamics) advection schemes: flux form (ubs, centered), vector form (een, and een + Hollingsworth correction)
142# LOCK_EXCHANGE  : 2
143# VORTEX         : 3
144# WAD            : 4       
145# SAS_BIPER      : 5
146# ISOMIP         : 6
147
148
149for config in 1 2 3 4 5 6
150do
151
152# ---------
153#  OVERFLOW
154# ---------
155if [ ${config} -eq 1 ] ;  then
156    ## Restartability tests for OVERFLOW
157    export TEST_NAME="LONG"
158    cd ${CONFIG_DIR0}
159    . ./makenemo -m ${CMP_NAM} -a TEST_CASES -n OVERFLOW_ST -r OVERFLOW -j 8 del_key ${DEL_KEYS}
160    cd ${SETTE_DIR}
161    . ./param.cfg
162    . ./all_functions.sh
163    . ./prepare_exe_dir.sh
164    JOB_FILE=${EXE_DIR}/run_job.sh
165    NPROC=1
166    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
167    cd ${EXE_DIR} 
168    set_namelist namelist_cfg cn_exp \"OVF_LONG\"
169    set_namelist namelist_cfg nn_it000 1
170    set_namelist namelist_cfg nn_itend 120
171    set_namelist namelist_cfg nn_stock 60
172    if [ ${USING_MPMD} == "yes" ] ; then
173       set_xio_using_server iodef.xml true
174    else
175       set_xio_using_server iodef.xml false
176    fi
177    cd ${SETTE_DIR}
178    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
179
180    cd ${SETTE_DIR}
181    export TEST_NAME="SHORT"
182    . ./prepare_exe_dir.sh
183    cd ${EXE_DIR}
184    set_namelist namelist_cfg cn_exp \"OVF_SHORT\"
185    set_namelist namelist_cfg nn_it000 61
186    set_namelist namelist_cfg nn_itend 120
187    set_namelist namelist_cfg nn_stock 60
188    set_namelist namelist_cfg ln_rstart .true.
189    set_namelist namelist_cfg nn_rstctl 2
190    set_namelist namelist_cfg cn_ocerst_in \"OVF_LONG_00000060_restart\"
191    if [ ${USING_MPMD} == "yes" ] ; then
192       set_xio_using_server iodef.xml true
193    else
194       set_xio_using_server iodef.xml false
195    fi
196    ln -sf ../LONG/OVF_LONG_00000060_restart.nc .
197    if [ ${USING_MPMD} == "yes" ] ; then
198       set_xio_using_server iodef.xml true
199    else
200       set_xio_using_server iodef.xml false
201    fi
202    cd ${SETTE_DIR}
203    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
204    cd ${SETTE_DIR}
205    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
206
207
208    ## Test for all advection, vert. coordinates, vector form, flux form: test runability and complete all time steps
209    ## Needed namelist-xxxx for every type of run tested
210    cd ${CONFIG_DIR}/${NEW_CONF}/EXP00
211
212    for file in $(echo `ls namelist_*_cfg `) ; do
213        TEST_NAME=`ls $file | sed -e "s/namelist_//" | sed -e "s/_cfg//"`
214        TEST_NAME="EXP-${TEST_NAME}"
215        `mkdir ${CONFIG_DIR}/${NEW_CONF}/${TEST_NAME}`
216        export TEST_NAME="${TEST_NAME}"
217         ##
218        cd ${SETTE_DIR}
219        . ./param.cfg
220        . ./all_functions.sh
221        . ./prepare_exe_dir.sh
222        JOB_FILE=${EXE_DIR}/run_job.sh
223        NPROC=1
224        if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
225        cd ${EXE_DIR}
226        if [ ${USING_MPMD} == "yes" ] ; then
227           set_xio_using_server iodef.xml true
228        else
229           set_xio_using_server iodef.xml false
230        fi
231        cd ${SETTE_DIR}
232        . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
233        cd ${SETTE_DIR}
234        . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
235       ##
236     done
237fi
238
239# --------------
240#  LOCK_EXCHANGE
241# --------------
242if [ ${config} -eq 2 ] ;  then
243    ## Restartability tests for LOCK_EXCHANGE
244    export TEST_NAME="LONG"
245    cd ${CONFIG_DIR0}
246    . ./makenemo -m ${CMP_NAM} -a TEST_CASES -n LOCK_EXCHANGE_ST -r OVERFLOW -j 8 del_key ${DEL_KEYS}
247    cd ${SETTE_DIR}
248    . ./param.cfg
249    . ./all_functions.sh
250    . ./prepare_exe_dir.sh
251    JOB_FILE=${EXE_DIR}/run_job.sh
252    NPROC=1
253    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
254    cd ${EXE_DIR}
255    set_namelist namelist_cfg cn_exp \"LOCK_LONG\"
256    set_namelist namelist_cfg nn_it000 1
257    set_namelist namelist_cfg nn_stock 60
258    set_namelist namelist_cfg nn_itend 120
259    if [ ${USING_MPMD} == "yes" ] ; then
260       set_xio_using_server iodef.xml true
261    else
262       set_xio_using_server iodef.xml false
263    fi
264    cd ${SETTE_DIR}
265    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
266
267    cd ${SETTE_DIR}
268    export TEST_NAME="SHORT"
269    . ./prepare_exe_dir.sh
270    cd ${EXE_DIR}
271    set_namelist namelist_cfg cn_exp \"LOCK_SHORT\"
272    set_namelist namelist_cfg nn_it000 61
273    set_namelist namelist_cfg nn_itend 120
274    set_namelist namelist_cfg nn_stock 60
275    set_namelist namelist_cfg ln_rstart .true.
276    set_namelist namelist_cfg nn_rstctl 2
277    set_namelist namelist_cfg cn_ocerst_in \"LOCK_LONG_00000060_restart\"
278    if [ ${USING_MPMD} == "yes" ] ; then
279       set_xio_using_server iodef.xml true
280    else
281       set_xio_using_server iodef.xml false
282    fi
283    ln -sf ../LONG/LOCK_LONG_00000060_restart.nc .
284    if [ ${USING_MPMD} == "yes" ] ; then
285       set_xio_using_server iodef.xml true
286    else
287       set_xio_using_server iodef.xml false
288    fi
289    cd ${SETTE_DIR}
290    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
291    cd ${SETTE_DIR}
292    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
293
294    ## Test for all advection, vector form, flux form: test runability and complete all time steps
295    ## Needed namelist-xxxx for every type of run tested
296    cd ${CONFIG_DIR}/${NEW_CONF}/EXP00
297
298    for file in $(echo `ls namelist_*_cfg `) ; do
299        TEST_NAME=`ls $file | sed -e "s/namelist_//" | sed -e "s/_cfg//"`
300        TEST_NAME="EXP-${TEST_NAME}"
301        `mkdir ${CONFIG_DIR}/${NEW_CONF}/${TEST_NAME}`
302        export TEST_NAME="${TEST_NAME}"
303         ## 
304        cd ${SETTE_DIR}
305        . ./param.cfg
306        . ./all_functions.sh
307        . ./prepare_exe_dir.sh
308        JOB_FILE=${EXE_DIR}/run_job.sh
309        NPROC=1
310        if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
311        cd ${EXE_DIR}
312        if [ ${USING_MPMD} == "yes" ] ; then
313           set_xio_using_server iodef.xml true
314        else
315           set_xio_using_server iodef.xml false
316        fi
317        cd ${SETTE_DIR}
318        . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
319        cd ${SETTE_DIR}
320        . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
321       ##
322   done
323fi
324
325# ---------
326# VORTEX
327# ---------
328if [ ${config} -eq 3 ] ;  then
329    ## Restartability tests for VORTEX
330    export TEST_NAME="LONG"
331    cd ${CONFIG_DIR0}
332    . ./makenemo -m ${CMP_NAM} -a TEST_CASES -n VORTEX_ST -r VORTEX -j 8 del_key ${DEL_KEYS}
333    cd ${SETTE_DIR}
334    . ./param.cfg
335    . ./all_functions.sh
336    . ./prepare_exe_dir.sh
337    JOB_FILE=${EXE_DIR}/run_job.sh
338    NPROC=1
339    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
340    cd ${EXE_DIR}
341    set_namelist namelist_cfg cn_exp \"VORTEX_LONG\"
342    set_namelist namelist_cfg nn_it000 1
343    set_namelist namelist_cfg nn_stock 60
344    set_namelist namelist_cfg nn_itend 120
345    if [ ${USING_MPMD} == "yes" ] ; then
346       set_xio_using_server iodef.xml true
347    else
348       set_xio_using_server iodef.xml false
349    fi
350    cd ${SETTE_DIR}
351    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
352
353    cd ${SETTE_DIR}
354    export TEST_NAME="SHORT"
355    . ./prepare_exe_dir.sh
356    cd ${EXE_DIR}
357    set_namelist namelist_cfg cn_exp \"VORTEX_SHORT\"
358    set_namelist namelist_cfg nn_it000 61
359    set_namelist namelist_cfg nn_itend 120
360    set_namelist namelist_cfg nn_stock 60
361    set_namelist namelist_cfg ln_rstart .true.
362    set_namelist namelist_cfg nn_rstctl 2
363    set_namelist namelist_cfg cn_ocerst_in \"VORTEX_LONG_00000060_restart\"
364    if [ ${USING_MPMD} == "yes" ] ; then
365       set_xio_using_server iodef.xml true
366    else
367       set_xio_using_server iodef.xml false
368    fi
369    ln -sf ../LONG/VORTEX_LONG_00000060_restart.nc .
370    if [ ${USING_MPMD} == "yes" ] ; then
371       set_xio_using_server iodef.xml true
372    else
373       set_xio_using_server iodef.xml false
374    fi
375    cd ${SETTE_DIR}
376    . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
377    cd ${SETTE_DIR}
378    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
379
380
381    ## Test for all advection, vert. coordinates, vector form, flux form: test runability and complete all time steps
382    ## Needed namelist-xxxx for every type of run tested
383    cd ${CONFIG_DIR}/${NEW_CONF}/EXP00
384
385    for file in $(echo `ls namelist_*_cfg `) ; do
386        TEST_NAME=`ls $file | sed -e "s/namelist_//" | sed -e "s/_cfg//"`
387        TEST_NAME="EXP-${TEST_NAME}"
388        `mkdir ${CONFIG_DIR}/${NEW_CONF}/${TEST_NAME}`
389        export TEST_NAME="${TEST_NAME}"
390         ## 
391        cd ${SETTE_DIR}
392        . ./param.cfg
393        . ./all_functions.sh
394        . ./prepare_exe_dir.sh
395        JOB_FILE=${EXE_DIR}/run_job.sh
396        NPROC=1
397        if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
398        cd ${EXE_DIR}
399        if [ ${USING_MPMD} == "yes" ] ; then
400           set_xio_using_server iodef.xml true
401        else
402           set_xio_using_server iodef.xml false
403        fi
404        cd ${SETTE_DIR}
405        . ./prepare_job.sh input_EMPTY.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
406        cd ${SETTE_DIR}
407        . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
408       ##
409    done
410fi
411
412
413# ---------
414# SAS_BIPER
415# ---------
416if [ ${config} -eq 5 ] ;  then 
417## Restartability tests for SAS_BIPER
418    export TEST_NAME="LONG"
419    cd ${CONFIG_DIR0}
420    . ./makenemo -m ${CMP_NAM} -n SAS_BIPER_ST -r SAS_BIPER -a TEST_CASES -j 8  del_key ${DEL_KEYS}
421    cd ${SETTE_DIR}
422    . ./param.cfg
423    . ./all_functions.sh
424    . ./prepare_exe_dir.sh
425    JOB_FILE=${EXE_DIR}/run_job.sh
426    NPROC=1
427    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
428    cd ${EXE_DIR}
429    set_namelist namelist_cfg cn_exp \"SAS_BIPER_LONG\"
430    set_namelist namelist_cfg nn_it000 1
431    set_namelist namelist_cfg nn_itend 200
432    set_namelist namelist_cfg nn_stock 100
433   
434    #set_namelist namelist_ice_cfg ln_icethd .true.
435    set_namelist namelist_ice_cfg ln_icedyn .true.
436    set_namelist namelist_ice_cfg ln_dynFULL .true.
437    set_namelist namelist_ice_cfg ln_dynRHGADV .false.
438    set_namelist namelist_ice_cfg ln_dynADV .false.
439   
440    set_namelist 1_namelist_cfg cn_exp \"SAS_BIPER_LONG\"
441    set_namelist 1_namelist_cfg nn_it000 1
442    set_namelist 1_namelist_cfg nn_itend 600
443    set_namelist 1_namelist_cfg nn_stock 300
444   
445    #set_namelist 1_namelist_ice_cfg ln_icethd .true.
446    set_namelist 1_namelist_ice_cfg ln_icedyn .true.
447    set_namelist 1_namelist_ice_cfg ln_dynFULL .true.
448    set_namelist 1_namelist_ice_cfg ln_dynRHGADV .false.
449    set_namelist 1_namelist_ice_cfg ln_dynADV .false.
450    if [ ${USING_MPMD} == "yes" ] ; then
451        set_xio_using_server iodef.xml true
452    else
453        set_xio_using_server iodef.xml false
454    fi
455    cd ${SETTE_DIR}
456    . ./prepare_job.sh input_SASBIPER.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
457   
458    cd ${SETTE_DIR}
459    export TEST_NAME="SHORT"
460    . ./prepare_exe_dir.sh
461    cd ${EXE_DIR}
462    set_namelist namelist_cfg cn_exp \"SAS_BIPER_SHORT\"
463    set_namelist namelist_cfg nn_it000 101
464    set_namelist namelist_cfg nn_itend 200
465    set_namelist namelist_cfg nn_stock 100
466    set_namelist namelist_cfg ln_rstart .true.
467    set_namelist namelist_cfg nn_rstctl 2
468   
469    #set_namelist namelist_ice_cfg ln_icethd .true.
470    set_namelist namelist_ice_cfg ln_icedyn .true.
471    set_namelist namelist_ice_cfg ln_dynFULL .true.
472    set_namelist namelist_ice_cfg ln_dynRHGADV .false.
473    set_namelist namelist_ice_cfg ln_dynADV .false.
474    set_namelist namelist_cfg cn_ocerst_in \"SAS_BIPER_LONG_00000100_restart\"
475    set_namelist namelist_ice_cfg cn_icerst_in \"SAS_BIPER_LONG_00000100_restart_ice\"
476   
477    set_namelist 1_namelist_cfg cn_exp \"SAS_BIPER_SHORT\"
478    set_namelist 1_namelist_cfg nn_it000 301
479    set_namelist 1_namelist_cfg nn_itend 600
480    set_namelist 1_namelist_cfg nn_stock 300
481    set_namelist 1_namelist_cfg ln_rstart .true.
482    set_namelist 1_namelist_cfg nn_rstctl 2
483   
484    #set_namelist 1_namelist_ice_cfg ln_icethd .true.
485    set_namelist 1_namelist_ice_cfg ln_icedyn .true.
486    set_namelist 1_namelist_ice_cfg ln_dynFULL .true.
487    set_namelist 1_namelist_ice_cfg ln_dynRHGADV .false.
488    set_namelist 1_namelist_ice_cfg ln_dynADV .false.
489    set_namelist 1_namelist_cfg cn_ocerst_in \"SAS_BIPER_LONG_00000300_restart\"
490    set_namelist 1_namelist_ice_cfg cn_icerst_in \"SAS_BIPER_LONG_00000300_restart_ice\"
491   
492   
493    if [ ${USING_MPMD} == "yes" ] ; then
494        set_xio_using_server iodef.xml true
495    else
496        set_xio_using_server iodef.xml false
497    fi
498    if [ $NPROC -eq 1 ] ;  then
499        ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart.nc .
500        ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart_ice.nc .
501        ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart.nc .
502        ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart_ice.nc .
503    else
504        for (( i=1; i<=$NPROC; i++)) ; do
505            L_NPROC=$(( $i - 1 ))
506            L_NPROC=`printf "%04d\n" ${L_NPROC}`
507            ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart_${L_NPROC}.nc .
508            ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart_ice_${L_NPROC}.nc .
509            ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart_${L_NPROC}.nc .
510            ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart_ice_${L_NPROC}.nc .
511        done
512    fi
513    if [ ${USING_MPMD} == "yes" ] ; then
514        set_xio_using_server iodef.xml true
515    else
516        set_xio_using_server iodef.xml false
517    fi
518    if [ $NPROC -eq 1 ] ;  then
519        ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart.nc .
520        ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart_ice.nc .
521   ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart.nc .
522        ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart_ice.nc .
523    else
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/SAS_BIPER_LONG_00000100_restart_${L_NPROC}.nc .
528            ln -sf ../LONG/SAS_BIPER_LONG_00000100_restart_ice_${L_NPROC}.nc .
529            ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart_${L_NPROC}.nc .
530            ln -sf ../LONG/1_SAS_BIPER_LONG_00000300_restart_ice_${L_NPROC}.nc .
531        done
532    fi
533    if [ ${USING_MPMD} == "yes" ] ; then
534        set_xio_using_server iodef.xml true
535    else
536        set_xio_using_server iodef.xml false
537    fi
538    cd ${SETTE_DIR}
539    . ./prepare_job.sh input_SASBIPER.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
540    cd ${SETTE_DIR}
541    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
542   
543fi
544
545# ------
546# ISOMIP
547# ------
548if [ ${config} -eq 6 ] ;  then
549## Restartability tests
550    export TEST_NAME="LONG"
551    cd ${CONFIG_DIR0}
552    . ./makenemo -m ${CMP_NAM} -n ISOMIP_ST -r ISOMIP -a TEST_CASES -j 8 del_key ${DEL_KEYS}
553    cd ${SETTE_DIR}
554    . ./param.cfg
555    . ./all_functions.sh
556    . ./prepare_exe_dir.sh
557    JOB_FILE=${EXE_DIR}/run_job.sh
558    NPROC=15
559    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
560    cd ${EXE_DIR}
561    set_namelist namelist_cfg cn_exp \"ISOMIP_LONG\"
562    set_namelist namelist_cfg nn_it000 1
563    set_namelist namelist_cfg nn_itend 96
564    set_namelist namelist_cfg nn_stock 48
565    set_namelist namelist_cfg jpni 5
566    set_namelist namelist_cfg jpnj 3
567    set_namelist namelist_cfg jpnij 15
568    if [ ${USING_MPMD} == "yes" ] ; then
569       set_xio_using_server iodef.xml true
570    else
571       set_xio_using_server iodef.xml false
572    fi
573    cd ${SETTE_DIR}
574    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
575
576    cd ${SETTE_DIR}
577    export TEST_NAME="SHORT"
578    . ./prepare_exe_dir.sh
579    cd ${EXE_DIR}
580    set_namelist namelist_cfg cn_exp \"ISOMIP_SHORT\"
581    set_namelist namelist_cfg nn_it000 49
582    set_namelist namelist_cfg nn_itend 96
583    set_namelist namelist_cfg nn_stock 48
584    set_namelist namelist_cfg ln_rstart .true.
585    set_namelist namelist_cfg nn_rstctl 2
586    set_namelist namelist_cfg jpni 5
587    set_namelist namelist_cfg jpnj 3
588    set_namelist namelist_cfg jpnij 15
589    set_namelist namelist_cfg cn_ocerst_in \"ISOMIP_LONG_00000048_restart\"
590    if [ ${USING_MPMD} == "yes" ] ; then
591       set_xio_using_server iodef.xml true
592    else
593       set_xio_using_server iodef.xml false
594    fi
595    for (( i=1; i<=$NPROC; i++)) ; do
596        L_NPROC=$(( $i - 1 ))
597        L_NPROC=`printf "%04d\n" ${L_NPROC}`
598        ln -sf ../LONG/ISOMIP_LONG_00000048_restart_${L_NPROC}.nc .
599    done
600    if [ ${USING_MPMD} == "yes" ] ; then
601       set_xio_using_server iodef.xml true
602    else
603       set_xio_using_server iodef.xml false
604    fi
605    cd ${SETTE_DIR}
606    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
607    cd ${SETTE_DIR}
608    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
609
610## Reproducibility tests
611    export TEST_NAME="REPRO_7_3"
612    cd ${CONFIG_DIR0}
613    cd ${SETTE_DIR}
614    . ./param.cfg
615    . ./all_functions.sh
616    . ./prepare_exe_dir.sh
617    JOB_FILE=${EXE_DIR}/run_job.sh
618    NPROC=21
619    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
620    cd ${EXE_DIR}
621    set_namelist namelist_cfg cn_exp \"ISOMIP_73\"
622    set_namelist namelist_cfg nn_it000 1
623    set_namelist namelist_cfg nn_itend 48
624    set_namelist namelist_cfg jpni 7
625    set_namelist namelist_cfg jpnj 3
626    set_namelist namelist_cfg jpnij 21
627    if [ ${USING_MPMD} == "yes" ] ; then
628       set_xio_using_server iodef.xml true
629    else
630       set_xio_using_server iodef.xml false
631    fi
632    cd ${SETTE_DIR}
633    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
634    cd ${SETTE_DIR}
635    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
636
637    cd ${SETTE_DIR}
638    export TEST_NAME="REPRO_8_4"
639    . ./prepare_exe_dir.sh
640    JOB_FILE=${EXE_DIR}/run_job.sh
641    NPROC=32
642    if [ -f ${JOB_FILE} ] ; then \rm ${JOB_FILE} ; fi
643    cd ${EXE_DIR}
644    set_namelist namelist_cfg cn_exp \"ISOMIP_84\"
645    set_namelist namelist_cfg nn_it000 1
646    set_namelist namelist_cfg nn_itend 48
647    set_namelist namelist_cfg jpni 8
648    set_namelist namelist_cfg jpnj 4
649    set_namelist namelist_cfg jpnij 32
650    if [ ${USING_MPMD} == "yes" ] ; then
651       set_xio_using_server iodef.xml true
652    else
653       set_xio_using_server iodef.xml false
654    fi
655    cd ${SETTE_DIR}
656    . ./prepare_job.sh input_ISOMIP.cfg $NPROC ${TEST_NAME} ${MPIRUN_FLAG} ${JOB_FILE} ${NUM_XIOSERVERS}
657    cd ${SETTE_DIR}
658    . ./fcm_job.sh $NPROC ${JOB_FILE} ${INTERACT_FLAG} ${MPIRUN_FLAG}
659
660fi
661
662#----
663done
Note: See TracBrowser for help on using the repository browser.