41 |
platforms. For example, testscript comparisons between g77 (Linux) |
platforms. For example, testscript comparisons between g77 (Linux) |
42 |
and f77 (SGI) generated output gives: |
and f77 (SGI) generated output gives: |
43 |
|
|
44 |
T S U V |
T S U V |
45 |
C D M c m s m s m s m s |
C D M c m s m s m s m s |
46 |
n p a R g m m e . m m e . m m e . m m e . |
n p a R g m m e . m m e . m m e . m m e . |
47 |
f n k u 2 i a a d i a a d i a a d i a a d |
f n k u 2 i a a d i a a d i a a d i a a d |
48 |
g d e n d n x n . n x n . n x n . n x n . |
g d e n d n x n . n x n . n x n . n x n . |
49 |
|
|
50 |
Y Y Y Y 5 5 7 7 7 8 10 9 6 6 6 6 7 5 7 5 7 FAIL lab_sea |
Y Y Y Y 8 10 9 11 10 9 11 13 10 9 8 8 9 8 9 8 9 FAIL lab_sea |
51 |
|
|
52 |
|
|
53 |
Instructions for generating 1-CPU and 2-CPU executables |
Instructions for generating 1-CPU and 2-CPU executables |
54 |
======================================================= |
======================================================= |
55 |
|
|
56 |
Generating 1-CPU executable: |
Generating 1-CPU executable: |
57 |
cd ../verification/lab_sea/input |
cd verification/lab_sea/input |
58 |
ln -sf ../code/SIZE.h . |
ln -sf ../code/SIZE.h . |
|
ln -sf ../code/CPP_OPTIONS.h . |
|
59 |
ln -sf ../code/CPP_EEOPTIONS.h . |
ln -sf ../code/CPP_EEOPTIONS.h . |
60 |
|
ln -sf ../code/CPP_OPTIONS.NOEXF.h CPP_OPTIONS.h |
61 |
|
rm -f SEAICE_OPTIONS.h |
62 |
../../../tools/genmake -makefile |
../../../tools/genmake -makefile |
63 |
==> on alhena use: |
==> on alhena use: |
64 |
../../../tools/genmake -platform=o2k_noopt -makefile |
../../../tools/genmake -platform=o2k_noopt -makefile |
66 |
make depend |
make depend |
67 |
make |
make |
68 |
mv mitgcmuv mitgcmuv_1 |
mv mitgcmuv mitgcmuv_1 |
69 |
|
|
70 |
|
Generating 1-CPU executable with SEAICE_EXTERNAL_FORCING: |
71 |
|
cd ../../../verification/lab_sea/input |
72 |
|
ln -sf ../code/SIZE.h . |
73 |
|
ln -sf ../code/CPP_EEOPTIONS.h . |
74 |
|
ln -sf ../code/CPP_OPTIONS.h . |
75 |
|
ln -sf ../code/ECCO_CPPOPTIONS.h . |
76 |
|
ln -sf ../code/SEAICE_OPTIONS.h . |
77 |
|
../../../tools/genmake -makefile |
78 |
|
==> on alhena use: |
79 |
|
../../../tools/genmake -platform=o2k_noopt -makefile |
80 |
|
make clean |
81 |
|
make depend |
82 |
|
make |
83 |
|
mv mitgcmuv mitgcmuv_exf_forcing |
84 |
|
|
85 |
|
Generating 1-CPU executable with SEAICE_EXTERNAL_FLUXES: |
86 |
|
cd ../../../verification/lab_sea/input |
87 |
|
ln -sf ../code/SIZE.h . |
88 |
|
ln -sf ../code/CPP_EEOPTIONS.h . |
89 |
|
ln -sf ../code/CPP_OPTIONS.h . |
90 |
|
ln -sf ../code/ECCO_CPPOPTIONS.BULK.h ECCO_CPPOPTIONS.h |
91 |
|
ln -sf ../code/SEAICE_OPTIONS.EXF_FLUXES.h SEAICE_OPTIONS.h |
92 |
|
../../../tools/genmake -makefile |
93 |
|
==> on alhena use: |
94 |
|
../../../tools/genmake -platform=o2k_noopt -makefile |
95 |
|
make clean |
96 |
|
make depend |
97 |
|
make |
98 |
|
mv mitgcmuv mitgcmuv_exf_fluxes |
99 |
|
|
100 |
Generating 2-CPU executable: |
Generating 2-CPU executable: |
101 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
102 |
ln -sf ../code/SIZE_2x1.h SIZE.h |
ln -sf ../code/SIZE.2x1.h SIZE.h |
103 |
ln -sf ../code/CPP_OPTIONS.h . |
ln -sf ../code/CPP_EEOPTIONS.MPI.h CPP_EEOPTIONS.h |
104 |
ln -sf ../code/CPP_EEOPTIONS_MPI.h CPP_EEOPTIONS.h |
ln -sf ../code/CPP_OPTIONS.NOEXF.h CPP_OPTIONS.h |
105 |
|
rm -f SEAICE_OPTIONS.h |
106 |
../../../tools/genmake -mpi -makefile |
../../../tools/genmake -mpi -makefile |
107 |
==> on alhena for comparison purposes use: |
==> on alhena for comparison purposes use: |
108 |
../../../tools/genmake -mpi -platform=o2k_noopt -makefile |
../../../tools/genmake -mpi -platform=o2k_noopt -makefile |
123 |
|
|
124 |
To run Experiment 1: |
To run Experiment 1: |
125 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
126 |
ln -sf data.10hours data |
ln -sf DATA.10hours data |
127 |
ln -sf data.seaice.adi data.seaice |
ln -sf DATA.SEAICE.adi data.seaice |
128 |
mitgcmuv_1 >&! output.txt |
mitgcmuv_1 >&! output.txt |
129 |
mkdir exp1 |
mkdir exp1 |
130 |
mv *tave.0000000010.data exp1 |
mv *tave.0000000010.data exp1 |
131 |
|
|
132 |
Use matlab script lookat_exp1.m to compare the output |
Use matlab script lookat_exp1.m to compare the output |
133 |
of exp1 with that from release1_patch5 sea-ice code: |
of exp1 with that from release1_p10 sea-ice code: |
134 |
cd ../../../verification/lab_sea/matlab |
cd ../../../verification/lab_sea/matlab |
135 |
matlab |
matlab |
136 |
lookat_exp1 |
lookat_exp1 |
144 |
|
|
145 |
To run Experiment 2: |
To run Experiment 2: |
146 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
147 |
ln -sf data.10hours data |
ln -sf DATA.10hours data |
148 |
ln -sf data.seaice.lsr data.seaice |
ln -sf DATA.SEAICE.lsr data.seaice |
149 |
mitgcmuv_1 >&! output.txt |
mitgcmuv_1 >&! output.txt |
150 |
mkdir exp2 |
mkdir exp2 |
151 |
mv *tave.0000000010.data exp2 |
mv *tave.0000000010.data exp2 |
167 |
|
|
168 |
To run Experiment 3: |
To run Experiment 3: |
169 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
170 |
ln -sf data.1hour data |
ln -sf DATA.1hour data |
171 |
ln -sf data.seaice.testadi data.seaice |
ln -sf DATA.SEAICE.testadi data.seaice |
172 |
mitgcmuv_1 >&! output.txt |
mitgcmuv_1 >&! output.txt |
173 |
mkdir exp3a |
mkdir exp3a |
174 |
mv *tave.0000000001.data exp3a |
mv *tave.0000000001.data exp3a |
175 |
ln -sf data.seaice.testlsr data.seaice |
ln -sf DATA.SEAICE.testlsr data.seaice |
176 |
mitgcmuv_1 >&! output.txt |
mitgcmuv_1 >&! output.txt |
177 |
mkdir exp3b |
mkdir exp3b |
178 |
mv *tave.0000000001.data exp3b |
mv *tave.0000000001.data exp3b |
197 |
|
|
198 |
To run Experiment 4: |
To run Experiment 4: |
199 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
200 |
ln -sf data.10hours data |
ln -sf DATA.10hours data |
201 |
ln -sf data.seaice.adi data.seaice |
ln -sf DATA.SEAICE.adi data.seaice |
202 |
mpirun -np 2 mitgcmuv_2x1 |
mpirun -np 2 mitgcmuv_2x1 |
203 |
mkdir exp4 |
mkdir exp4 |
204 |
mv *tave.0000000010.data exp4 |
mv *tave.0000000010.data exp4 |
225 |
|
|
226 |
To run Experiment 5: |
To run Experiment 5: |
227 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
228 |
ln -sf data.2years data |
ln -sf DATA.2years data |
229 |
ln -sf data.seaice.adi data.seaice |
ln -sf DATA.SEAICE.adi data.seaice |
230 |
ln -sf evap.labsea1979 evap.labsea1980 |
ln -sf evap.labsea1979 evap.labsea1980 |
231 |
ln -sf flo.labsea1979 flo.labsea1980 |
ln -sf flo.labsea1979 flo.labsea1980 |
232 |
ln -sf fsh.labsea1979 fsh.labsea1980 |
ln -sf fsh.labsea1979 fsh.labsea1980 |
256 |
|
|
257 |
To run Experiment 6: |
To run Experiment 6: |
258 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
259 |
ln -sf data.10hours data |
ln -sf DATA.10hours data |
260 |
ln -sf data.seaice.nodynamics data.seaice |
ln -sf DATA.SEAICE.nodynamics data.seaice |
261 |
mitgcmuv_1 >&! output.txt |
mitgcmuv_1 >&! output.txt |
262 |
mkdir exp6 |
mkdir exp6 |
263 |
mv *tave.0000000010.data exp6 |
mv *tave.0000000010.data exp6 |
277 |
|
|
278 |
To run Experiment 7: |
To run Experiment 7: |
279 |
cd ../../../verification/lab_sea/input |
cd ../../../verification/lab_sea/input |
280 |
ln -sf data.10hours data |
ln -sf DATA.10hours data |
281 |
ln -sf data.seaice.nodynamics data.seaice |
ln -sf DATA.SEAICE.nodynamics data.seaice |
282 |
mpirun -np 2 mitgcmuv_2x1 |
mpirun -np 2 mitgcmuv_2x1 |
283 |
mkdir exp7 |
mkdir exp7 |
284 |
mv *tave.0000000010.data exp7 |
mv *tave.0000000010.data exp7 |
288 |
cd ../verification/lab_sea/matlab |
cd ../verification/lab_sea/matlab |
289 |
matlab |
matlab |
290 |
lookat_exp7 |
lookat_exp7 |
291 |
|
|
292 |
|
|
293 |
|
Instructions for running Experiment 8 |
294 |
|
===================================== |
295 |
|
|
296 |
|
This is the default experiment which is executed by |
297 |
|
verification/testscript. It is a 1-cpu, 10-hour integration |
298 |
|
used to test CPP option SEAICE_EXTERNAL_FORCING. Atmospheric |
299 |
|
state is read-in using pkg/exf, rather than pkg/seaice routines. |
300 |
|
This experiment uses pkg/gmredi, pkg/kpp, pkg/seaice, and pkg/exf. |
301 |
|
|
302 |
|
To run Experiment 8: |
303 |
|
cd ../../../verification/lab_sea/input |
304 |
|
ln -sf DATA.10hours_exf data |
305 |
|
ln -sf DATA.SEAICE.adi_exf data.seaice |
306 |
|
mitgcmuv_exf_forcing >&! output.txt |
307 |
|
mkdir exp8 |
308 |
|
mv *tave.0000000010.data exp8 |
309 |
|
|
310 |
|
Use matlab script lookat_exp8.m to compare |
311 |
|
the output of exp8 to that of exp1: |
312 |
|
cd ../../../verification/lab_sea/matlab |
313 |
|
matlab |
314 |
|
lookat_exp8 |
315 |
|
|
316 |
|
|
317 |
|
Instructions for running Experiment 9 |
318 |
|
===================================== |
319 |
|
|
320 |
|
This is a 1-cpu, 10-hour integration used to test CPP option |
321 |
|
SEAICE_EXTERNAL_FLUXES. Atmospheric state and open-water surface |
322 |
|
fluxes are computed by pkg/exf, rather than pkg/seaice routines. |
323 |
|
|
324 |
|
To run Experiment 9: |
325 |
|
cd ../../../verification/lab_sea/input |
326 |
|
ln -sf DATA.10hours_exf data |
327 |
|
ln -sf DATA.SEAICE.adi_exf data.seaice |
328 |
|
mitgcmuv_exf_fluxes >&! output.txt |
329 |
|
mkdir exp9 |
330 |
|
mv *tave.0000000010.data exp9 |
331 |
|
|
332 |
|
Use matlab script lookat_exp9.m to compare |
333 |
|
the output of exp9 to that of exp8: |
334 |
|
cd ../../../verification/lab_sea/matlab |
335 |
|
matlab |
336 |
|
lookat_exp9 |