1 | #!/bin/bash |
---|
2 | |
---|
3 | # NEMO directory where to fetch compiled STATION_ASF nemo.exe + setup: |
---|
4 | NEMO_DIR=`pwd | sed -e "s|/tests/STATION_ASF/EXPREF||g"` |
---|
5 | |
---|
6 | echo "Using NEMO_DIR=${NEMO_DIR}" |
---|
7 | |
---|
8 | # what directory inside "tests" actually contains the compiled test-case? |
---|
9 | TC_DIR="STATION_ASF2" |
---|
10 | |
---|
11 | # => so the executable to use is: |
---|
12 | NEMO_EXE="${NEMO_DIR}/tests/${TC_DIR}/BLD/bin/nemo.exe" |
---|
13 | |
---|
14 | # Directory where to run the simulation: |
---|
15 | WORK_DIR="${HOME}/tmp/STATION_ASF" |
---|
16 | |
---|
17 | # DATA_IN_DIR => Directory containing sea-surface + atmospheric forcings |
---|
18 | # (get it there https://drive.google.com/file/d/1MxNvjhRHmMrL54y6RX7WIaM9-LGl--ZP/): |
---|
19 | if [ `hostname` = "merlat" ]; then |
---|
20 | DATA_IN_DIR="/MEDIA/data/STATION_ASF/input_data_STATION_ASF_2016-2018" |
---|
21 | elif [ `hostname` = "luitel" ]; then |
---|
22 | DATA_IN_DIR="/data/gcm_setup/STATION_ASF/input_data_STATION_ASF_2016-2018" |
---|
23 | elif [ `hostname` = "ige-meom-cal1" ]; then |
---|
24 | DATA_IN_DIR="/mnt/meom/workdir/brodeau/STATION_ASF/input_data_STATION_ASF_2016-2018" |
---|
25 | elif [ `hostname` = "salvelinus" ]; then |
---|
26 | DATA_IN_DIR="/opt/data/STATION_ASF/input_data_STATION_ASF_2016-2018" |
---|
27 | else |
---|
28 | echo "Oops! We don't know `hostname` yet! Define 'DATA_IN_DIR' in the script!"; exit |
---|
29 | fi |
---|
30 | |
---|
31 | |
---|
32 | if [ ! -f ${NEMO_EXE} ]; then echo " Mhhh, no compiled nemo.exe found into ${NEMO_DIR}/tests/STATION_ASF/BLD/bin !"; exit; fi |
---|
33 | |
---|
34 | # NEMOGCM root directory where to fetch compiled STATION_ASF nemo.exe + setup: |
---|
35 | NEMO_WRK_DIR=`pwd | sed -e "s|/tests/STATION_ASF/${expdir}||g"` |
---|
36 | |
---|
37 | # Directory where to run the simulation: |
---|
38 | PROD_DIR="${HOME}/tmp/STATION_ASF" |
---|
39 | |
---|
40 | |
---|
41 | ####### End of normal user configurable section ####### |
---|
42 | |
---|
43 | #================================================================================ |
---|
44 | |
---|
45 | # NEMO executable to use is: |
---|
46 | NEMO_EXE="${NEMO_WRK_DIR}/tests/${TC_DIR}/BLD/bin/nemo.exe" |
---|
47 | |
---|
48 | |
---|
49 | echo "###########################################################" |
---|
50 | echo "# S T A T I O N A i r - S e a F l u x #" |
---|
51 | echo "###########################################################" |
---|
52 | echo |
---|
53 | echo " We shall work in here: ${STATION_ASF_DIR}/" |
---|
54 | echo " NEMOGCM work depository is: ${NEMO_WRK_DIR}/" |
---|
55 | echo " ==> NEMO EXE to use: ${NEMO_EXE}" |
---|
56 | echo " Input forcing data into: ${DATA_IN_DIR}/" |
---|
57 | echo " Production will be done into: ${PROD_DIR}/" |
---|
58 | echo |
---|
59 | |
---|
60 | mkdir -p ${PROD_DIR} |
---|
61 | |
---|
62 | if [ ! -f ${NEMO_EXE} ]; then echo " Mhhh, no compiled 'nemo.exe' found into `dirname ${NEMO_EXE}` !"; exit; fi |
---|
63 | |
---|
64 | echo |
---|
65 | echo " *** Using the following NEMO executable:" |
---|
66 | echo " ${NEMO_EXE} " |
---|
67 | echo |
---|
68 | |
---|
69 | NEMO_EXPREF="${NEMO_WRK_DIR}/tests/STATION_ASF/EXPREF" |
---|
70 | if [ ! -d ${NEMO_EXPREF} ]; then echo " Mhhh, no EXPREF directory ${NEMO_EXPREF} !"; exit; fi |
---|
71 | |
---|
72 | rsync -avP ${NEMO_EXE} ${PROD_DIR}/ |
---|
73 | |
---|
74 | for ff in "context_nemo.xml" "domain_def_nemo.xml" "field_def_nemo-oce.xml" "file_def_nemo-oce.xml" "grid_def_nemo.xml" "iodef.xml" "namelist_ref"; do |
---|
75 | if [ ! -f ${NEMO_EXPREF}/${ff} ]; then echo " Mhhh, ${ff} not found into ${NEMO_EXPREF} !"; exit; fi |
---|
76 | rsync -avPL ${NEMO_EXPREF}/${ff} ${PROD_DIR}/ |
---|
77 | done |
---|
78 | |
---|
79 | # Copy forcing to work directory: |
---|
80 | rsync -avP ${DATA_IN_DIR}/Station_PAPA_50N-145W*.nc ${PROD_DIR}/ |
---|
81 | |
---|
82 | for CASE in "ECMWF" "COARE3p6" "NCAR" "ECMWF-noskin" "COARE3p6-noskin"; do |
---|
83 | |
---|
84 | echo ; echo |
---|
85 | echo "=============================" |
---|
86 | echo " Going for ${CASE} experiment" |
---|
87 | echo "=============================" |
---|
88 | echo |
---|
89 | |
---|
90 | scase=`echo "${CASE}" | tr '[:upper:]' '[:lower:]'` |
---|
91 | |
---|
92 | rm -f ${PROD_DIR}/namelist_cfg |
---|
93 | rsync -avPL ${NEMO_EXPREF}/namelist_${scase}_cfg ${PROD_DIR}/namelist_cfg |
---|
94 | |
---|
95 | cd ${PROD_DIR}/ |
---|
96 | echo |
---|
97 | echo "Launching NEMO !" |
---|
98 | ./nemo.exe 1>out_nemo.out 2>err_nemo.err |
---|
99 | echo "Done!" |
---|
100 | echo |
---|
101 | |
---|
102 | # Moving output files: |
---|
103 | mkdir -p output |
---|
104 | mv -f STATION_ASF-${CASE}_*_grid*.nc output/ |
---|
105 | |
---|
106 | # Saving logs: |
---|
107 | mkdir -p ${CASE}_log |
---|
108 | mv -f *.out *.err ocean.output output.namelist.dyn ${CASE}_log/ |
---|
109 | |
---|
110 | done |
---|