1 | #!/bin/bash |
---|
2 | |
---|
3 | echo CREATE A NEW FLEXPART DISTRIBUTION |
---|
4 | |
---|
5 | #define version number |
---|
6 | githash=$(git rev-parse --short --verify HEAD) |
---|
7 | echo githash $githash |
---|
8 | |
---|
9 | version=10.3.1_$githash |
---|
10 | echo version $version |
---|
11 | |
---|
12 | # define tarball name |
---|
13 | targetdir=../flexpart_distribution/ |
---|
14 | echo targetdir $targetdir |
---|
15 | |
---|
16 | distribution_name=flexpart_v$version |
---|
17 | |
---|
18 | tarball_tmp=${targetdir}flexpart_v$version |
---|
19 | echo tarball_tmp $tarball_tmp |
---|
20 | |
---|
21 | #tarball=${targetdir}flexpart_v$version.tar |
---|
22 | tarball=${tarball_tmp}.tar |
---|
23 | echo tarball $tarball |
---|
24 | |
---|
25 | # clean old package |
---|
26 | if [ -d $tarball_tmp ]; then |
---|
27 | echo |
---|
28 | echo clean old tarball |
---|
29 | hora=$(date +"%Y-%m-%d_%H%M%S") |
---|
30 | tarball_tmp_bk=$tarball_tmp$tarball_tmp_$hora |
---|
31 | echo tarball_tmp=$tarball_tmp exists: move to tarball_tmp_bk=$tarball_tmp_bk #and exit |
---|
32 | mkdir $tarball_tmp_bk |
---|
33 | mv $tarball_tmp $tarball_tmp_bk/ |
---|
34 | mv $tarball $tarball_tmp_bk/ |
---|
35 | #exit |
---|
36 | echo old files moved to tarball_tmp_bk=$tarball_tmp_bk |
---|
37 | echo |
---|
38 | fi |
---|
39 | |
---|
40 | echo --------------------------------------------------------- |
---|
41 | echo ')' create basis dir $tarball_tmp |
---|
42 | mkdir $tarball_tmp |
---|
43 | echo --------------------------------------------------------- |
---|
44 | |
---|
45 | echo |
---|
46 | |
---|
47 | echo --------------------------------------------------------- |
---|
48 | echo ')' copy pathnames |
---|
49 | #cp pathnames_distribution $tarball_tmp/pathnames |
---|
50 | cp pathnames $tarball_tmp/pathnames |
---|
51 | echo --------------------------------------------------------- |
---|
52 | |
---|
53 | echo |
---|
54 | |
---|
55 | echo --------------------------------------------------------- |
---|
56 | echo ')' copy src/ |
---|
57 | mkdir $tarball_tmp/src |
---|
58 | cp src/*.f90 $tarball_tmp/src |
---|
59 | cp -r src/gributils $tarball_tmp/src |
---|
60 | # echo '3)' copy makefile |
---|
61 | cp src/makefile $tarball_tmp/src |
---|
62 | #cp src/makefile.gfs $tarball_tmp/src |
---|
63 | echo --------------------------------------------------------- |
---|
64 | ################################################################ |
---|
65 | |
---|
66 | echo |
---|
67 | |
---|
68 | echo --------------------------------------------------------- |
---|
69 | echo ')' copy options/ |
---|
70 | # (for the distribution they work with the defult flex_ecmwf test winds) |
---|
71 | #cp -r options_flex_ecmwf_EA $tarball_tmp/options |
---|
72 | mkdir $tarball_tmp/options |
---|
73 | |
---|
74 | user_input_files="AGECLASSES COMMAND IGBP_int1.dat OUTGRID OUTGRID_NEST RECEPTORS RELEASES surfdata.t surfdepo.t" |
---|
75 | |
---|
76 | for i in $user_input_files |
---|
77 | do |
---|
78 | echo $i |
---|
79 | cp -r options/$i $tarball_tmp/options |
---|
80 | #echo copy $i to $tarball_tmp/options |
---|
81 | done |
---|
82 | |
---|
83 | |
---|
84 | mkdir $tarball_tmp/options/SPECIES |
---|
85 | cp options/SPECIES/SPECIES* $tarball_tmp/options/SPECIES/ |
---|
86 | cp options/SPECIES/specoverview.f90 $tarball_tmp/options/SPECIES/ |
---|
87 | echo copy options/SPECIES/ to $tarball_tmp/options/SPECIES/ |
---|
88 | |
---|
89 | echo --------------------------------------------------------- |
---|
90 | |
---|
91 | echo |
---|
92 | |
---|
93 | echo --------------------------------------------------------- |
---|
94 | echo ')' copy AVAILABLE |
---|
95 | #cp AVAILABLE_flex_ecmwf_EA $tarball_tmp/AVAILABLE |
---|
96 | cp AVAILABLE $tarball_tmp/AVAILABLE |
---|
97 | echo --------------------------------------------------------- |
---|
98 | |
---|
99 | echo |
---|
100 | |
---|
101 | echo --------------------------------------------------------- |
---|
102 | echo ')' create output/ # mkdir $tarball_tmp/output |
---|
103 | mkdir $tarball_tmp/output |
---|
104 | echo --------------------------------------------------------- |
---|
105 | ################################################################ |
---|
106 | |
---|
107 | echo |
---|
108 | |
---|
109 | echo --------------------------------------------------------- |
---|
110 | echo ')' preprocess/ |
---|
111 | mkdir $tarball_tmp/preprocess |
---|
112 | |
---|
113 | echo |
---|
114 | |
---|
115 | echo -----------------flex_extract------------------- |
---|
116 | #echo '6)' mkdir $tarball_tmp/flex_extract [a separate repository] |
---|
117 | #mkdir $tarball_tmp/preprocess |
---|
118 | #mkdir $tarball_tmp/preprocess/flex_ecmwf |
---|
119 | mkdir $tarball_tmp/preprocess/flex_extract |
---|
120 | |
---|
121 | #echo '7) add ECMWF retrieve routines (change EA wind files for latest source code)' |
---|
122 | #mkdir $tarball_tmp/preprocess/flex_extract |
---|
123 | #mkdir $tarball_tmp/preprocess/flex_extract/work |
---|
124 | #cp -r flex_ecmwf_src/* $tarball_tmp/preprocess/flex_ecmwf/ |
---|
125 | #cp -r flex_ecmwf_src/* $tarball_tmp/preprocess/flex_extract/ |
---|
126 | ## cp -r flex_extract/work/EA* $tarball_tmp/preprocess/flex_extract/work |
---|
127 | |
---|
128 | flex_extract=../flex_extract_v7.0.4/ |
---|
129 | echo include flex_extract v7.0.4 b7c1c04a204c91e53759ef590504bf52dfaece64 |
---|
130 | echo from $flex_extract [use git modules?] IP 3/2018 |
---|
131 | |
---|
132 | cp $flex_extract/README.md $tarball_tmp/preprocess/flex_extract |
---|
133 | cp -r $flex_extract/docs $tarball_tmp/preprocess/flex_extract |
---|
134 | cp -r $flex_extract/grib_templates $tarball_tmp/preprocess/flex_extract |
---|
135 | cp -r $flex_extract/python $tarball_tmp/preprocess/flex_extract |
---|
136 | cp -r $flex_extract/src $tarball_tmp/preprocess/flex_extract |
---|
137 | echo flex_extract copied |
---|
138 | echo --------------------------------------------------------- |
---|
139 | |
---|
140 | |
---|
141 | #echo '10)' cp example generating scripts [a separate repository] |
---|
142 | #echo moved below |
---|
143 | |
---|
144 | #mkdir $tarball_tmp/examples |
---|
145 | #cp -r examples/*.sh $tarball_tmp/examples/ |
---|
146 | #cp -r examples/Makefile $tarball_tmp/examples/ |
---|
147 | |
---|
148 | echo |
---|
149 | |
---|
150 | echo --------------------------------------------------------- |
---|
151 | ################################################################ |
---|
152 | echo ')' postprocess/ |
---|
153 | |
---|
154 | postprocess=postprocess |
---|
155 | mkdir $tarball_tmp/$postprocess |
---|
156 | echo -----------------flex_read_fortran------------------- |
---|
157 | #echo ')' directory for reading routines |
---|
158 | #echo '12)' add fortran reading routines [a separate repository] |
---|
159 | mkdir $tarball_tmp/$postprocess/flex_read_fortran |
---|
160 | cp $postprocess/flex_read_fortran/*.f $tarball_tmp/$postprocess/flex_read_fortran |
---|
161 | cp $postprocess/flex_read_fortran/*.f90 $tarball_tmp/$postprocess/flex_read_fortran |
---|
162 | cp $postprocess/flex_read_fortran/makefile $tarball_tmp/$postprocess/flex_read_fortran |
---|
163 | echo flex_read_fortran copied |
---|
164 | |
---|
165 | echo -----------------flex_read_matlab------------------- |
---|
166 | echo flex_read_fortran NOT copied |
---|
167 | |
---|
168 | # add matlab reading routines |
---|
169 | #mkdir $tarball_tmp/postprocess/flex_read_matlab |
---|
170 | #cp postprocess/flex_read_matlab/*.m $tarball_tmp/postprocess/flex_read_matlab |
---|
171 | echo --------------------------------------------------------- |
---|
172 | |
---|
173 | echo |
---|
174 | |
---|
175 | echo --------------------------------------------------------- |
---|
176 | echo ')' tests/ |
---|
177 | ############################################################### |
---|
178 | #echo '13) tests' |
---|
179 | mkdir $tarball_tmp/tests |
---|
180 | echo -----------------flex_read_fortran------------------- |
---|
181 | #echo 'b) ./tests/flex_read_fortran/' |
---|
182 | echo fixme |
---|
183 | #mkdir $tarball_tmp/tests/flex_read_fortran |
---|
184 | #cp tests/flex_read_fortran/test_read_default.sh $tarball_tmp/tests/flex_read_fortran |
---|
185 | |
---|
186 | |
---|
187 | ############################################################### |
---|
188 | echo -----------------examples------------------- |
---|
189 | |
---|
190 | #echo ') ./tests/examples/' |
---|
191 | mkdir $tarball_tmp/tests/examples |
---|
192 | echo ') scripts' |
---|
193 | cp -r ./tests/examples/*.sh $tarball_tmp/tests/examples/ |
---|
194 | echo ') makefile' |
---|
195 | cp -r ./tests/examples/Makefile $tarball_tmp/tests/examples/ |
---|
196 | |
---|
197 | # echo USAGE: ~/repos/flexpart/tests/examples'$' make run |
---|
198 | |
---|
199 | |
---|
200 | ############################################################### |
---|
201 | echo -----------------postprocess examples------------------- |
---|
202 | echo --read examples------------------- |
---|
203 | |
---|
204 | #echo '13 c) ./tests/read_examples/' |
---|
205 | mkdir $tarball_tmp/tests/read_examples |
---|
206 | cp tests/read_examples/read_grids.sh $tarball_tmp/tests/read_examples/ |
---|
207 | cp tests/read_examples/read_headers.sh $tarball_tmp/tests/read_examples/ |
---|
208 | |
---|
209 | # echo USAGE ~/repos/flexpart/tests/read_examples'$'./read_grids.sh |
---|
210 | |
---|
211 | ############################################################### |
---|
212 | echo --compare examples------------------- |
---|
213 | #echo tests/compare_examples.sh |
---|
214 | |
---|
215 | #mkdir $tarball_tmp/tests/compare_examples |
---|
216 | #cp tests/compare_examples/compare_grids.sh $tarball_tmp/tests/compare_examples |
---|
217 | cp tests/compare_grids.sh $tarball_tmp/tests/ |
---|
218 | # list of examples with units |
---|
219 | cp tests/declare_examples $tarball_tmp/tests/ |
---|
220 | |
---|
221 | echo |
---|
222 | |
---|
223 | # ~/repos/flexpart/tests$./compare_grids.sh |
---|
224 | |
---|
225 | #echo mkdir $tarball_tmp/tests/examples2/ |
---|
226 | #echo cp tests/examples2/setup.sh $tarball_tmp/tests/examples2/ |
---|
227 | # echo --repeat examples------------------- |
---|
228 | # echo FIXME |
---|
229 | |
---|
230 | ############################################################### |
---|
231 | #echo -----------------ctbto------------------- |
---|
232 | # mkdir $tarball_tmp/tests/ctbto |
---|
233 | |
---|
234 | # cp -r tests/NILU/test_1 $tarball_tmp/tests/ |
---|
235 | # cp -r tests/default_cases $tarball_tmp/tests/ |
---|
236 | |
---|
237 | echo --------------------------------------------------------- |
---|
238 | echo create tarball |
---|
239 | #tar cvf $tarball $tarball_tmp |
---|
240 | #tar cf $tarball $tarball_tmp |
---|
241 | #cd |
---|
242 | |
---|
243 | cd $targetdir |
---|
244 | tar cf $distribution_name.tar $distribution_name |
---|
245 | |
---|
246 | pwd |
---|
247 | |
---|
248 | |
---|
249 | echo tarball $tarball complete |
---|
250 | echo exported untarred files in $tarball_tmp |
---|
251 | exit |
---|
252 | #return |
---|
253 | ############################################################### |
---|
254 | |
---|
255 | # obtain $FLEXHOME (and set) |
---|
256 | #1 cd $FLEXHOME/src |
---|
257 | |
---|
258 | #2 compile |
---|
259 | # |
---|
260 | #[laptop] source /Users/ignacio/repos/flexpart/src/make_in_laptop.sh |
---|
261 | # [njord] make |
---|
262 | # ->created executable (FLEXPART) |
---|
263 | |
---|
264 | #3 execute in src (absolute paths) |
---|
265 | # |
---|
266 | #[laptop] cp /Users/ignacio/repos/flexpart/src/pathnames . |
---|
267 | #[njord] FIXME |
---|
268 | # |
---|
269 | # mkdir output |
---|
270 | # ./FLEXPART |
---|
271 | # ->created output in output/ |
---|
272 | |
---|
273 | #4 read output |
---|
274 | # cd $FLEXHOME/postprocess/flex_read_fortran/ |
---|
275 | # make |
---|
276 | # -> printheader* printgrid* flex_read_compare2* |
---|
277 | #/postprocess/flex_read_fortran$./printheader ../../src/output/ |
---|
278 | #/postprocess/flex_read_fortran$./printgrid ../../src/output/ conc |
---|
279 | # -> output in stdout (max: 11122924.0 sum: 90330784.0) |
---|
280 | |
---|
281 | #5 execute in $FLEXHOME |
---|
282 | # cd $FLEXHOME |
---|
283 | # get winds |
---|
284 | #[laptop] cp -r ~/repos/flex_winds/work/ ./preprocess/flex_extract/ |
---|
285 | #[njord] curl https://folk.nilu.no/~ignacio/FLEXPART/EA120101.tar --output EA120101.tar ; tar -xvf EA120101.tar ; mv flex_extract/work preprocess/flex_extract/ ; rmdir flex_extract |
---|
286 | |
---|
287 | # src/FLEXPART |
---|
288 | # -> output in $FLEXHOME/output/ |
---|
289 | |
---|
290 | #6 read output |
---|
291 | # postprocess/flex_read_fortran/printheader output/ |
---|
292 | # postprocess/flex_read_fortran/printgrid output/ conc |
---|
293 | # -> output in stdout ( max: 11578738.0 sum: 104058720.) |
---|
294 | |
---|
295 | #7 gnererate examples |
---|
296 | # cd $FLEXHOME/tests/examples |
---|
297 | |
---|
298 | #make run |
---|
299 | |
---|
300 | #make examples |
---|
301 | #make batch |
---|
302 | #./run_batch_cl.sh |
---|
303 | |
---|
304 | #make (set_default_example.sh) |
---|
305 | #tests/examples$../../src/FLEXPART |
---|
306 | #output |
---|
307 | |
---|
308 | #8 read examples: |
---|
309 | #cd $FLEXHOME/tests/read_examples |
---|
310 | # ./read_headers.sh |
---|
311 | # ./read_grids.sh |
---|
312 | |
---|
313 | #9 compare examples with reference |
---|