New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
sette.sh in trunk/NEMOGCM/SETTE – NEMO

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

Last change on this file since 3319 was 3294, checked in by rblod, 12 years ago

Merge of 3.4beta into the trunk

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