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

source: branches/2012/dev_r3342_MERCATOR7_SST/NEMOGCM/SETTE/sette.sh @ 3422

Last change on this file since 3422 was 3422, checked in by cbricaud, 12 years ago

modifications for SETTE

  • Property svn:executable set to *
  • Property svn:keywords set to Id
File size: 23.2 KB
Line 
1#!/bin/bash
2#############################################################
3# Author : Simona Flavoni for NEMO
4# Contact : sflod@locean-ipsl.upmc.fr
5#
6# sette.sh   : principal script of SET TEsts for NEMO (SETTE)
7# ----------------------------------------------------------------------
8# NEMO/SETTE , NEMO Consortium (2010)
9# Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
10# ----------------------------------------------------------------------
11#
12#############################################################
13#set -x
14set -o posix
15#set -u
16#set -e
17#+
18#
19# ================
20# sette.sh
21# ================
22#
23# ----------------------------------------------
24# Set of tests for NEMO
25# ----------------------------------------------
26#
27# SYNOPSIS
28# ========
29#
30# ::
31#
32#  $ ./sette.sh
33#
34# DESCRIPTION
35# ===========
36#
37# Variables to be checked by user:
38#
39# COMPILER : name of compiler as defined in NEMOGCM/ARCH directory
40#
41# BATCH_COMMAND :  name of the command for batch submission
42#
43# MPI_INTERACT : 
44#
45#         for MPP tests, "no" for batch execution, "yes" for interactive execution
46#
47#         NOTE: for run with 1 process tests are run always in MPI_INTERACT="yes"
48#
49# Principal script is sette.sh, that calls
50#
51#  makenemo
52#
53#   creates the exectuable in ${CONFIG_NAME}/BLD/bin/nemo.exe  (and its link opa in ${CONFIG_NAME}/EXP00)
54#
55#  param.cfg : sets and loads following directories:
56#
57#   FORCING_DIR : is the directory for forcing files (tarfile)
58#
59#   INPUT_DIR : is the directory for input files storing
60#
61#   TMPDIR : is the temporary directory (if needed)
62#
63#   NEMO_VALIDATION_DIR : is the validation directory
64#
65#   (NOTE: this file is the same for all configrations to be tested with sette)
66#
67#
68#  all_functions.sh : loads functions used by sette (note: new functions can be added here)
69#
70#   set_namelist : function declared in all_functions that set namelist parameters for tests
71#
72#   post_test_tidyup : creates validation storage directory and copy needed output files (solver.stat and ocean.output) in it after execution of test.
73#
74#   Tree of VALIDATION is:
75#
76#   NEMO_VALIDATION_DIR/WCONFIG_NAME/WCOMPILER_NAME/TEST_NAME/REVISION_NUMBER(or DATE)
77#
78#
79#  prepare_exe_dir.sh : defines and creates directory where the test is executed
80#
81#       execution directory takes name of TEST_NAME defined in every test in sette.sh
82#
83#       ( each test in executed in its own directory )
84#
85#
86#  prepare_job.sh
87#
88#  to generate the script run_job.sh
89#
90#  fcm_job.sh
91#
92#   runs job in interactive or batch mode : all jobs using 1 process are run interactive, and all MPP jobs are
93#
94#   run in batch (MPI_INTERACT="no") or interactive (MPI_INTERACT="yes") see sette.sh and BATCH_TEMPLATE directory
95#
96#   (note this job needs to have an input_CONFIG.cfg in which can be found input tar file)
97#
98#  NOTE: if job is not launched for some problems you have executable ready in ${EXE_DIR} directory
99#
100#  NOTE: the changed namelists are leaved in ${EXE_DIR} directory whereas original namelist remains in ${NEW_CONF}/EXP00
101#
102#  in ${SETTE_DIR} is created output.sette with the echo of executed commands
103#
104#  if sette.sh is stopped in output.sette there is written the last command executed by sette.sh
105#
106#  if you run: ./sette.sh 2>&1 | tee out.sette
107#
108#  in ${SETTE_DIR} out.sette is redirected standard error & standard output
109#
110#
111# EXAMPLES
112# ========
113#
114# ::
115#
116#  $ ./sette.sh
117#
118#
119# TODO
120# ====
121#
122# option debug
123#
124# EVOLUTIONS
125# ==========
126#
127# $Id$
128#
129#   * creation
130#
131#-
132#
133#-
134# Compiler among those in NEMOGCM/ARCH
135COMPILER=ifort_MERCATOR_CLUSTER
136export BATCH_COMMAND_PAR="qsub"
137export BATCH_COMMAND_SEQ=$BATCH_COMMAND_PAR
138export INTERACT_FLAG="no"
139export MPIRUN_FLAG="yes"
140
141
142# Directory to run the tests
143SETTE_DIR=$(cd $(dirname "$0"); pwd)
144MAIN_DIR=${SETTE_DIR%/SETTE}
145CONFIG_DIR=${MAIN_DIR}/CONFIG
146TOOLS_DIR=${MAIN_DIR}/TOOLS
147COMPIL_DIR=${TOOLS_DIR}/COMPILE
148
149CMP_NAM=${1:-$COMPILER}
150# Copy job_batch_COMPILER file for specific compiler into job_batch_template
151cd ${SETTE_DIR}
152cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
153
154for config in 1 2 3 4 5 6 7 8
155do
156
157# TESTS FOR GYRE_LOBSTER CONFIGURATION
158if [ ${config} -eq 1 ] ;  then
159    ## Restartability tests for GYRE_LOBSTER
160    export TEST_NAME="LONG"
161    cd ${SETTE_DIR}
162    . ../CONFIG/makenemo -m ${CMP_NAM} -n GYRELOB_LONG -r GYRE_LOBSTER -j 8 
163    cd ${SETTE_DIR}
164    . param.cfg
165    . all_functions.sh
166    . prepare_exe_dir.sh
167    JOB_FILE=${EXE_DIR}/run_job.sh
168    NPROC=1
169    \rm $JOB_FILE
170    cd ${EXE_DIR}
171    set_namelist namelist cn_exp \"GYRELOB_LONG\"
172    set_namelist namelist nn_it000 1
173    set_namelist namelist nn_itend 120
174    set_namelist namelist nn_stock 60
175    set_namelist namelist ln_clobber .true.
176    set_namelist namelist nn_solv 2
177    set_namelist namelist_top ln_diatrc .false.
178    cd ${SETTE_DIR}
179    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
180    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
181    cd ${SETTE_DIR}
182    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG
183
184    cd ${SETTE_DIR}
185    export TEST_NAME="SHORT"
186    . prepare_exe_dir.sh
187    cd ${EXE_DIR}
188    set_namelist namelist cn_exp \"GYRELOB_SHORT\"
189    set_namelist namelist nn_it000 61
190    set_namelist namelist nn_itend 120
191    set_namelist namelist nn_stock 60
192    set_namelist namelist ln_rstart .true.
193    set_namelist namelist nn_rstctl 2
194    set_namelist namelist ln_clobber .true.
195    set_namelist namelist nn_solv 2
196    ln -s -f ..\/LONG\/GYRELOB_LONG_00000060_restart.nc
197    ln -s -f ..\/LONG\/GYRELOB_LONG_00000060_restart_trc.nc
198    set_namelist namelist cn_ocerst_in \"GYRELOB_LONG_00000060_restart\"
199    set_namelist namelist_top ln_diatrc .false.
200    set_namelist namelist_top ln_rsttr .true.
201    set_namelist namelist_top nn_rsttr 2
202    set_namelist namelist_top cn_trcrst_in \"GYRELOB_LONG_00000060_restart_trc\"
203    cd ${SETTE_DIR}
204    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
205    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
206    cd ${SETTE_DIR}
207    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
208fi
209
210if [ ${config} -eq 2 ] ;  then
211    ## Reproducibility tests for GYRE_LOBSTER
212    export TEST_NAME="REPRO_1_4"
213    cd ${SETTE_DIR}
214    . ../CONFIG/makenemo -m ${CMP_NAM} -n GYRELOB_4 -r GYRE_LOBSTER -j 8 add_key "key_mpp_rep key_mpp_mpi"
215    cd ${SETTE_DIR}
216    . param.cfg
217    . all_functions.sh
218    . prepare_exe_dir.sh
219    JOB_FILE=${EXE_DIR}/run_job.sh
220    NPROC=4
221    \rm $JOB_FILE
222    cd ${EXE_DIR}
223    set_namelist namelist cn_exp \"GYRELOB_14\"
224    set_namelist namelist nn_it000 1
225    set_namelist namelist nn_itend 60
226    set_namelist namelist nn_fwb 0
227    set_namelist namelist nn_bench 0
228    set_namelist namelist ln_ctl .false.
229    set_namelist namelist ln_clobber .true.
230    set_namelist namelist nn_solv 2
231    set_namelist namelist_top ln_diatrc .false.
232    set_namelist namelist_top ln_trcdta .false.
233    set_namelist namelist jpni 1
234    set_namelist namelist jpnj 4
235    set_namelist namelist jpnij 4
236    cd ${SETTE_DIR}
237    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
238    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
239    cd ${SETTE_DIR}
240    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
241
242    cd ${SETTE_DIR}
243    export TEST_NAME="REPRO_2_2"
244    . prepare_exe_dir.sh
245    JOB_FILE=${EXE_DIR}/run_job.sh
246    NPROC=4
247    \rm $JOB_FILE
248    cd ${EXE_DIR}
249    set_namelist namelist cn_exp \"GYRELOB_22\"
250    set_namelist namelist nn_it000 1
251    set_namelist namelist nn_itend 60
252    set_namelist namelist nn_fwb 0
253    set_namelist namelist ln_ctl .false.
254    set_namelist namelist ln_clobber .true.
255    set_namelist namelist nn_solv 2
256    set_namelist namelist_top ln_diatrc .false.
257    set_namelist namelist_top ln_trcdta .false.
258    set_namelist namelist jpni 2
259    set_namelist namelist jpnj 2
260    set_namelist namelist jpnij 4
261    cd ${SETTE_DIR}
262    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
263    . ./prepare_job.sh input_GYRE.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
264    cd ${SETTE_DIR}
265    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
266fi
267
268# TESTS FOR ORCA2_LIM_PISCES CONFIGURATION
269if [ ${config} -eq 3 ] ;  then
270    ## Restartability tests for ORCA2_LIM_PISCES
271    export TEST_NAME="LONG"
272    cd ${SETTE_DIR}
273    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2LIMPIS_LONG -r ORCA2_LIM_PISCES -j 8
274    cd ${SETTE_DIR}
275    . param.cfg
276    . all_functions.sh
277    . prepare_exe_dir.sh
278    JOB_FILE=${EXE_DIR}/run_job.sh
279    NPROC=1
280    \rm $JOB_FILE
281    cd ${EXE_DIR}
282    set_namelist namelist cn_exp \"O2LP_LONG\"
283    set_namelist namelist nn_it000 1
284    set_namelist namelist nn_itend 150
285    set_namelist namelist nn_stock 75
286    set_namelist namelist ln_clobber .true.
287    set_namelist namelist nn_solv 2
288    set_namelist namelist_top ln_trcdta .false.
289    set_namelist namelist_top ln_diatrc .false.
290    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
291    # if not you need input files, and for tests is not necessary
292    set_namelist namelist_pisces ln_ironsed .false.
293    set_namelist namelist_pisces ln_river .false.
294    set_namelist namelist_pisces ln_ndepo .false.
295    set_namelist namelist_pisces ln_dust .false.
296    set_namelist namelist_pisces ln_presatm .false.
297    cd ${SETTE_DIR}
298    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
299    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE   
300    cd ${SETTE_DIR}
301    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
302#
303    export TEST_NAME="SHORT"
304    cd ${SETTE_DIR}
305    . prepare_exe_dir.sh
306    cd ${EXE_DIR}
307    set_namelist namelist cn_exp \"O2LP_SHORT\"
308    set_namelist namelist nn_it000 76
309    set_namelist namelist nn_itend 150
310    set_namelist namelist nn_stock 75
311    set_namelist namelist ln_rstart .true.
312    set_namelist namelist nn_rstctl 2
313    set_namelist namelist ln_clobber .true.
314    set_namelist namelist nn_solv 2
315    ln -s -f ../LONG/O2LP_LONG_00000075_restart.nc
316    ln -s -f ../LONG/O2LP_LONG_00000075_restart_ice.nc
317    ln -s -f ../LONG/O2LP_LONG_00000075_restart_trc.nc
318    set_namelist namelist cn_ocerst_in \"O2LP_LONG_00000075_restart\"
319    set_namelist namelist_ice cn_icerst_in \"O2LP_LONG_00000075_restart_ice\"
320    set_namelist namelist_top ln_diatrc .false.
321    set_namelist namelist_top ln_rsttr .true.
322    set_namelist namelist_top nn_rsttr 2
323    set_namelist namelist_top cn_trcrst_in \"O2LP_LONG_00000075_restart_trc\"
324    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
325    # if not you need input files, and for tests is not necessary
326    set_namelist namelist_pisces ln_ironsed .false.
327    set_namelist namelist_pisces ln_river .false.
328    set_namelist namelist_pisces ln_ndepo .false.
329    set_namelist namelist_pisces ln_dust .false.
330    set_namelist namelist_pisces ln_presatm .false.
331    cd ${SETTE_DIR}
332    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
333    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
334    cd ${SETTE_DIR}
335    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG 
336fi
337
338if [ ${config} -eq 4 ] ;  then
339    ## Reproducibility tests for ORCA2_LIM_PISCES
340    export TEST_NAME="REPRO_4_4"
341    cd ${SETTE_DIR}
342    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2LIMPIS_16 -r ORCA2_LIM_PISCES -j 8 add_key "key_mpp_rep key_mpp_mpi"
343    cd ${SETTE_DIR}
344    . param.cfg
345    . all_functions.sh
346    . prepare_exe_dir.sh
347    JOB_FILE=${EXE_DIR}/run_job.sh
348    NPROC=16
349    \rm $JOB_FILE
350    cd ${EXE_DIR}
351    set_namelist namelist nn_it000 1
352    set_namelist namelist nn_itend 75
353    set_namelist namelist nn_fwb 0
354    set_namelist namelist ln_clobber .true.
355    set_namelist namelist jpni 4
356    set_namelist namelist jpnj 4
357    set_namelist namelist jpnij 16
358    set_namelist namelist nn_solv 2
359    set_namelist namelist_top ln_trcdta .false.
360    set_namelist namelist_top ln_diatrc .false.
361    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
362    # if not you need input files, and for tests is not necessary
363    set_namelist namelist_pisces ln_ironsed .false.
364    set_namelist namelist_pisces ln_river .false.
365    set_namelist namelist_pisces ln_ndepo .false.
366    set_namelist namelist_pisces ln_dust .false.
367    set_namelist namelist_pisces ln_presatm .false.
368    cd ${SETTE_DIR}
369    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
370    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
371    cd ${SETTE_DIR}
372    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
373
374    cd ${SETTE_DIR}
375    export TEST_NAME="REPRO_2_8"
376    . prepare_exe_dir.sh
377    JOB_FILE=${EXE_DIR}/run_job.sh
378    NPROC=16
379    \rm $JOB_FILE
380    cd ${EXE_DIR}
381    set_namelist namelist nn_it000 1
382    set_namelist namelist nn_itend 75
383    set_namelist namelist nn_fwb 0
384    set_namelist namelist ln_clobber .true.
385    set_namelist namelist jpni 2
386    set_namelist namelist jpnj 8
387    set_namelist namelist jpnij 16
388    set_namelist namelist nn_solv 2
389    set_namelist namelist_top ln_trcdta .false.
390    set_namelist namelist_top ln_diatrc .false.
391    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
392    # if not you need input files, and for tests is not necessary
393    set_namelist namelist_pisces ln_ironsed .false.
394    set_namelist namelist_pisces ln_river .false.
395    set_namelist namelist_pisces ln_ndepo .false.
396    set_namelist namelist_pisces ln_dust .false.
397    set_namelist namelist_pisces ln_presatm .false.
398    cd ${SETTE_DIR}
399    cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
400    . ./prepare_job.sh input_ORCA2_LIM_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
401    cd ${SETTE_DIR}
402    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG
403fi
404
405# TESTS FOR ORCA2_OFF_PISCES CONFIGURATION
406if [ ${config} -eq 5 ] ;  then
407    ## Restartability tests for ORCA2_OFF_PISCES
408    export TEST_NAME="LONG"
409    cd ${SETTE_DIR}
410    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_LONG -r ORCA2_OFF_PISCES -j 8
411    cd ${SETTE_DIR}
412    . param.cfg
413    . all_functions.sh
414    . prepare_exe_dir.sh
415    JOB_FILE=${EXE_DIR}/run_job.sh
416    NPROC=1
417    \rm $JOB_FILE
418    cd ${EXE_DIR}
419    set_namelist namelist cn_exp \"OFFP_LONG\"
420    set_namelist namelist nn_it000 1
421    set_namelist namelist nn_itend 40
422    set_namelist namelist nn_stock 20
423    set_namelist namelist ln_clobber .true.
424    set_namelist namelist_top ln_trcdta .false.
425    set_namelist namelist_top ln_diatrc .false.
426    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
427    # if not you need input files, and for tests is not necessary
428    set_namelist namelist_pisces ln_ironsed .false.
429    set_namelist namelist_pisces ln_river .false.
430    set_namelist namelist_pisces ln_ndepo .false.
431    set_namelist namelist_pisces ln_dust .false.
432    set_namelist namelist_pisces ln_presatm .false.
433    cd ${SETTE_DIR}
434   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
435    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
436   
437    cd ${SETTE_DIR}
438    export TEST_NAME="SHORT"
439    . prepare_exe_dir.sh
440    cd ${EXE_DIR}
441    set_namelist namelist cn_exp \"OFFP_SHORT\"
442    set_namelist namelist nn_it000 21
443    set_namelist namelist nn_itend 40
444    set_namelist namelist nn_stock 20
445    set_namelist namelist ln_clobber .true.
446    ln -s ../LONG/OFFP_LONG_00000020_restart_trc.nc .
447    set_namelist namelist_top ln_diatrc .false.
448    set_namelist namelist_top ln_rsttr .true.
449    set_namelist namelist_top nn_rsttr 2
450    set_namelist namelist_top cn_trcrst_in \"OFFP_LONG_00000020_restart_trc\"
451    # put ln_ironsed, ln_river, ln_ndepo, ln_dust
452    # if not you need input files, and for tests is not necessary
453    set_namelist namelist_pisces ln_ironsed .false.
454    set_namelist namelist_pisces ln_river .false.
455    set_namelist namelist_pisces ln_ndepo .false.
456    set_namelist namelist_pisces ln_dust .false.
457    set_namelist namelist_pisces ln_presatm .false.
458    cd ${SETTE_DIR}
459   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
460    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
461    cd ${SETTE_DIR}
462    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
463fi
464
465if [ ${config} -eq 6 ] ;  then
466    ## Reproducibility tests for ORCA2_OFF_PISCES
467    export TEST_NAME="REPRO_4_4"
468    cd ${SETTE_DIR}
469    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2OFFPIS_16 -r ORCA2_OFF_PISCES -j 8 add_key "key_mpp_rep key_mpp_mpi"
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=16
476    \rm $JOB_FILE
477    cd ${EXE_DIR}
478    set_namelist namelist nn_it000 1
479    set_namelist namelist nn_itend 40
480    set_namelist namelist ln_clobber .true.
481    set_namelist namelist jpni 4
482    set_namelist namelist jpnj 4
483    set_namelist namelist jpnij 16
484    set_namelist namelist_top ln_trcdta .false.
485    set_namelist namelist_top ln_diatrc .false.
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
488    set_namelist namelist_pisces ln_ironsed .false.
489    set_namelist namelist_pisces ln_river .false.
490    set_namelist namelist_pisces ln_ndepo .false.
491    set_namelist namelist_pisces ln_dust .false.
492    set_namelist namelist_pisces ln_presatm .false.
493    cd ${SETTE_DIR}
494   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
495    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
496    cd ${SETTE_DIR}
497    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
498
499    cd ${SETTE_DIR}
500    export TEST_NAME="REPRO_2_8"
501    . prepare_exe_dir.sh
502    JOB_FILE=${EXE_DIR}/run_job.sh
503    NPROC=16
504    \rm $JOB_FILE
505    cd ${EXE_DIR}
506    set_namelist namelist nn_it000 1
507    set_namelist namelist nn_itend 40
508    set_namelist namelist ln_clobber .true.
509    set_namelist namelist jpni 2
510    set_namelist namelist jpnj 8
511    set_namelist namelist jpnij 16
512    set_namelist namelist_top ln_trcdta .false.
513    set_namelist namelist_top ln_diatrc .false.
514    # put ln_ironsed, ln_river, ln_ndepo, ln_dust to false
515    # if not you need input files, and for tests is not necessary
516    set_namelist namelist_pisces ln_ironsed .false.
517    set_namelist namelist_pisces ln_river .false.
518    set_namelist namelist_pisces ln_ndepo .false.
519    set_namelist namelist_pisces ln_dust .false.
520    set_namelist namelist_pisces ln_presatm .false.
521    cd ${SETTE_DIR}
522   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
523    . ./prepare_job.sh input_ORCA2_OFF_PISCES.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
524    cd ${SETTE_DIR}
525    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
526fi
527
528# TESTS FOR AMM12 CONFIGURATION
529if [ ${config} -eq 7 ] ;  then
530    ## Reproducibility tests for AMM12
531    export TEST_NAME="REPRO_8_4"
532    cd ${SETTE_DIR}
533    . ../CONFIG/makenemo -m ${CMP_NAM} -n AMM12_32 -r AMM12 -j 8 add_key "key_mpp_rep"
534    cd ${SETTE_DIR}
535    . param.cfg
536    . all_functions.sh
537    . prepare_exe_dir.sh
538    JOB_FILE=${EXE_DIR}/run_job.sh
539    NPROC=32
540    \rm $JOB_FILE
541    cd ${EXE_DIR}
542    set_namelist namelist nn_it000 1
543    set_namelist namelist nn_itend 576
544    set_namelist namelist nn_fwb 0
545    set_namelist namelist ln_ctl .false.
546    set_namelist namelist ln_clobber .true.
547    set_namelist namelist nn_dyn2d 2
548    set_namelist namelist nn_tra_dta 0
549    set_namelist namelist jpni 8
550    set_namelist namelist jpnj 4
551    set_namelist namelist jpnij 32
552    cd ${SETTE_DIR}
553   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
554    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
555    cd ${SETTE_DIR}
556    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG 
557
558    cd ${SETTE_DIR}
559    export TEST_NAME="REPRO_4_8"
560    . prepare_exe_dir.sh
561    JOB_FILE=${EXE_DIR}/run_job.sh
562    NPROC=32
563    \rm $JOB_FILE
564    cd ${EXE_DIR}
565    set_namelist namelist nn_it000 1
566    set_namelist namelist nn_itend 576
567    set_namelist namelist nn_fwb 0
568    set_namelist namelist ln_ctl .false.
569    set_namelist namelist nn_dyn2d 2
570    set_namelist namelist nn_tra_dta 0
571    set_namelist namelist ln_clobber .true.
572    set_namelist namelist jpni 4
573    set_namelist namelist jpnj 8
574    set_namelist namelist jpnij 32
575    cd ${SETTE_DIR}
576   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
577    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
578    cd ${SETTE_DIR}
579    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG
580fi
581
582if [ ${config} -eq 8 ] ;  then
583    ## Restartability tests for AMM12
584    export TEST_NAME="LONG"
585    cd ${SETTE_DIR}
586    . ../CONFIG/makenemo -m ${CMP_NAM} -n AMM12_LONG -r AMM12 -j 8 add_key "key_mpp_rep"
587    cd ${SETTE_DIR}
588    . param.cfg
589    . all_functions.sh
590    . prepare_exe_dir.sh
591    JOB_FILE=${EXE_DIR}/run_job.sh
592    NPROC=32
593    \rm $JOB_FILE
594    cd ${EXE_DIR}
595    set_namelist namelist nn_it000 1
596    set_namelist namelist nn_itend 12
597    set_namelist namelist nn_stock 6
598    set_namelist namelist nn_fwb 0
599    set_namelist namelist ln_ctl .false.
600    set_namelist namelist ln_clobber .true.
601    set_namelist namelist nn_dyn2d 2
602    set_namelist namelist nn_tra_dta 0
603    set_namelist namelist jpni 8
604    set_namelist namelist jpnj 4
605    set_namelist namelist jpnij 32
606    cd ${SETTE_DIR}
607   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
608    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
609    cd ${SETTE_DIR}
610    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
611
612    cd ${SETTE_DIR}
613    export TEST_NAME="SHORT"
614    . prepare_exe_dir.sh
615    cd ${EXE_DIR}
616    set_namelist namelist nn_it000 7
617    set_namelist namelist nn_itend 12
618    set_namelist namelist nn_fwb 0
619    set_namelist namelist ln_ctl .false.
620    set_namelist namelist ln_clobber .true.
621    set_namelist namelist nn_dyn2d 2
622    set_namelist namelist nn_tra_dta 0
623    set_namelist namelist jpni 8
624    set_namelist namelist jpnj 4
625    set_namelist namelist jpnij 32
626    set_namelist namelist ln_rstart .true.
627    set_namelist namelist nn_rstctl 2
628    set_namelist namelist cn_ocerst_in \"../LONG/AMM12_00000006_restart\"
629    cd ${SETTE_DIR}
630   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
631    . ./prepare_job.sh input_AMM12.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
632    cd ${SETTE_DIR}
633    . ./fcm_job.sh $NPROC $JOB_FILE $INTERACT_FLAG $MPIRUN_FLAG 
634fi
635
636# TEST FOR ORCA2_LIM_AGRIF : simple test of running AGRIF (no restartability neither reproducibility tests)
637if [ ${config} -eq 9 ] ;  then
638    ## ORCA2_LIM with Agulhas AGRIF zoom in MPI
639    export TEST_NAME="SHORT"
640    cd ${SETTE_DIR}
641    . ../CONFIG/makenemo -m ${CMP_NAM} -n ORCA2AGUL_1_2 -r ORCA2_LIM -j 8 add_key "key_mpp_rep key_mpp_mpi key_agrif" del_key "key_zdftmx"
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=2
648    \rm $JOB_FILE
649    cd ${EXE_DIR}
650    set_namelist namelist nn_it000 1
651    set_namelist namelist nn_itend 75
652    set_namelist namelist ln_ctl .false.
653    set_namelist namelist ln_clobber .true.
654    set_namelist namelist jpni 1
655    set_namelist namelist jpnj 2
656    set_namelist namelist jpnij 2
657    set_namelist 1_namelist nn_it000 1
658    set_namelist 1_namelist nn_itend 150
659    set_namelist 1_namelist ln_ctl .false.
660    set_namelist 1_namelist ln_clobber .true.
661    cd ${SETTE_DIR}
662   cp BATCH_TEMPLATE/batch-${COMPILER} job_batch_template || exit
663    . ./prepare_job.sh input_ORCA2_LIM_AGRIF.cfg $NPROC ${TEST_NAME} $MPIRUN_FLAG $JOB_FILE
664    cd ${SETTE_DIR}
665    . ./fcm_job.sh $NPROC $JOB_FILE  $INTERACT_FLAG $MPIRUN_FLAG
666fi
667
668done
Note: See TracBrowser for help on using the repository browser.