1 |
daInstructions for setting up a cube-sphere integration with sea-ice. |
Instructions for setting up a cube-sphere integration with sea-ice. |
2 |
Date last updated: February 17, 2005 |
|
3 |
Code and input used for integrating cube22. |
================= |
4 |
|
UPDATES |
5 |
|
|
6 |
|
October 15, 2006: 216-CPU code for cube40 |
7 |
|
|
8 |
|
September 28, 2006: 216-CPU code for cube38 |
9 |
|
|
10 |
|
September 4, 2006 |
11 |
|
Modified 32*32*6*15 experiments to use grid_cs32.* files from |
12 |
|
verification/tutorial_held_suarez_cs/input instead of |
13 |
|
tile* files from verification/global_ocean.cs32x15/input |
14 |
|
|
15 |
|
August 8, 2006: 216-CPU code and input used for cube37 |
16 |
|
using "June 10, 2006" MITgcm code. |
17 |
|
|
18 |
|
for online T/S profile diagnostics all that is needed is |
19 |
|
profiles_init_fixed |
20 |
|
profiles_inloop |
21 |
|
see pkg/ecco/ecco_cost_init_fixed.F |
22 |
|
pkg/ecco/cost_averagesfields.F |
23 |
|
|
24 |
|
|
25 |
########################################################################## |
########################################################################## |
26 |
########################################################################## |
########################################################################## |
27 |
# getting the code from anonymous CVS server |
# getting the code from anonymous CVS server |
28 |
|
# |
29 |
|
|
30 |
|
bash or sh shell: |
31 |
|
$ export CVSROOT=':pserver:cvsanon@mitgcm.org:/u/gcmpack' |
32 |
|
$ cvs login |
33 |
|
( enter the CVS password: "cvsanon" ) |
34 |
|
|
35 |
|
tcsh or csh shell: |
36 |
|
$ setenv CVSROOT ':pserver:cvsanon@mitgcm.org:/u/gcmpack' |
37 |
|
$ cvs login |
38 |
|
( enter the CVS password: "cvsanon" ) |
39 |
|
|
40 |
cvs co MITgcm_contrib/high_res_cube/README_ice |
cvs co MITgcm_contrib/high_res_cube/README_ice |
41 |
cvs co MITgcm_contrib/high_res_cube/code-mods |
cvs co MITgcm_contrib/high_res_cube/code-mods |
43 |
cvs co MITgcm_contrib/high_res_cube/results |
cvs co MITgcm_contrib/high_res_cube/results |
44 |
cvs co MITgcm_code |
cvs co MITgcm_code |
45 |
cvs co MITgcm/verification/global_ocean.cs32x15 |
cvs co MITgcm/verification/global_ocean.cs32x15 |
46 |
cvs co MITgcm/verification/testreport |
cvs co MITgcm/verification/tutorial_held_suarez_cs/input |
47 |
|
|
48 |
|
|
49 |
|
########################################################################## |
50 |
|
########################################################################## |
51 |
|
# 510*510*6*50, 216-cpu cube sphere on altix with ifort and pkg/diagnostics |
52 |
|
# requires input files in sudirectories run_template and ncep_rgau |
53 |
|
# these can be obained from lou:/u/menemenl/cube |
54 |
|
|
55 |
|
cd MITgcm/verification/global_ocean.cs32x15/code |
56 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
57 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
58 |
|
\cp SIZE.h_216 SIZE.h |
59 |
|
\cp packages.conf_hr packages.conf |
60 |
|
|
61 |
|
cd ../build |
62 |
|
\rm * |
63 |
|
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_ifort+mpi_altix_nas |
64 |
|
make depend |
65 |
|
make -j |
66 |
|
|
67 |
|
cd .. |
68 |
|
mkdir run |
69 |
|
cd run |
70 |
|
\rm * |
71 |
|
\cp ../input/* . |
72 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
73 |
|
ln -sf ../../../../run_template/* . |
74 |
|
\rm pickup* eedata.mth data.pkg data.seaice data.exf_clim data.exf data.mnc data pr* |
75 |
|
\rm bathy_Hmin50.bin *192_94* *cs32* *.m lev* tren* job_c* job_altix150 job_altix92_54t |
76 |
|
ln -sf ../../../../run_template/pickup.0000000216.cube38 pickup.0000000216 |
77 |
|
ln -sf ../../../../run_template/pickup_seaice.0000000216.cube38 pickup_seaice.0000000216 |
78 |
|
\cp ../build/mitgcmuv . |
79 |
|
qsub job_altix |
80 |
|
|
81 |
|
|
82 |
########################################################################## |
########################################################################## |
95 |
mkdir run |
mkdir run |
96 |
cd run |
cd run |
97 |
\rm * |
\rm * |
98 |
|
\cp ../../tutorial_held_suarez_cs/input/grid* . |
99 |
\cp ../input/* . |
\cp ../input/* . |
100 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
101 |
../build/mitgcmuv >& output.txt |
../build/mitgcmuv >& output.txt |
106 |
to use matlab to look at the output |
to use matlab to look at the output |
107 |
matlab |
matlab |
108 |
|
|
109 |
for fld={'Eta','VICE','UICE','HEFF','AREA','Qsw','Qnet','FV','FU','EmPmR'} |
for fld={'VICEtave','UICEtave','HEFFtave','AREAtave','QSWtave', ... |
110 |
|
'QNETtave','FVtave','FUtave','EmPmRtave'} |
111 |
tmp=permute(readbin([fld{1} '.0000000020.data'],[32,6,32]),[1 3 2]); |
tmp=permute(readbin([fld{1} '.0000000020.data'],[32,6,32]),[1 3 2]); |
112 |
cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause |
cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause |
113 |
end |
end |
114 |
|
|
115 |
heff=permute(readbin(['HEFF.0000000020.data'],[32,6,32]),[1 3 2]); |
heff=permute(readbin(['HEFFtave.0000000020.data'],[32,6,32]),[1 3 2]); |
116 |
mask=0*heff; mask(find(heff>.001))=1; |
mask=0*heff; mask(find(heff>.001))=1; |
117 |
uice=mask.*permute(readbin(['UICE.0000000020.data'],[32,6,32]),[1 3 2]); |
uice=mask.*permute(readbin(['UICEtave.0000000020.data'],[32,6,32]),[1 3 2]); |
118 |
vice=mask.*permute(readbin(['VICE.0000000020.data'],[32,6,32]),[1 3 2]); |
vice=mask.*permute(readbin(['VICEtave.0000000020.data'],[32,6,32]),[1 3 2]); |
119 |
clf |
clf |
120 |
subplot(221), mypcolor(uice(:,:,3)'), colorbar, title('uice, tile 3') |
subplot(221), mypcolor(uice(:,:,3)'); colorbar, title('uice, tile 3') |
121 |
subplot(222), mypcolor(uice(:,:,6)'), colorbar, title('uice, tile 6') |
subplot(222), mypcolor(uice(:,:,6)'); colorbar, title('uice, tile 6') |
122 |
subplot(223), mypcolor(vice(:,:,3)'), colorbar, title('vice, tile 3') |
subplot(223), mypcolor(vice(:,:,3)'); colorbar, title('vice, tile 3') |
123 |
subplot(224), mypcolor(vice(:,:,6)'), colorbar, title('vice, tile 6') |
subplot(224), mypcolor(vice(:,:,6)'); colorbar, title('vice, tile 6') |
124 |
|
|
125 |
|
|
126 |
########################################################################## |
########################################################################## |
139 |
mkdir run |
mkdir run |
140 |
cd run |
cd run |
141 |
\rm * |
\rm * |
142 |
|
\cp ../../tutorial_held_suarez_cs/input/grid* . |
143 |
\cp ../input/* . |
\cp ../input/* . |
144 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
145 |
../build/mitgcmuv >& output.txt |
../build/mitgcmuv >& output.txt |
146 |
|
|
|
comparison output is in: |
|
|
../../../../MITgcm_contrib/high_res_cube/results/output.txt |
|
|
|
|
|
to use matlab to look at the output |
|
|
matlab |
|
|
|
|
|
for fld={'Eta','VICE','UICE','HEFF','AREA','Qsw','Qnet','FV','FU','EmPmR'} |
|
|
tmp=permute(readbin([fld{1} '.0000000020.data'],[32,6,32]),[1 3 2]); |
|
|
cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause |
|
|
end |
|
|
|
|
|
heff=permute(readbin(['HEFF.0000000020.data'],[32,6,32]),[1 3 2]); |
|
|
mask=0*heff; mask(find(heff>.001))=1; |
|
|
uice=mask.*permute(readbin(['UICE.0000000020.data'],[32,6,32]),[1 3 2]); |
|
|
vice=mask.*permute(readbin(['VICE.0000000020.data'],[32,6,32]),[1 3 2]); |
|
|
clf |
|
|
subplot(221), mypcolor(uice(:,:,3)'), colorbar, title('uice, tile 3') |
|
|
subplot(222), mypcolor(uice(:,:,6)'), colorbar, title('uice, tile 6') |
|
|
subplot(223), mypcolor(vice(:,:,3)'), colorbar, title('vice, tile 3') |
|
|
subplot(224), mypcolor(vice(:,:,6)'), colorbar, title('vice, tile 6') |
|
|
|
|
147 |
|
|
148 |
########################################################################## |
########################################################################## |
149 |
########################################################################## |
########################################################################## |
150 |
# 32*32*6*15, 2-cpu cube sphere on the altices with efc |
# 32*32*6*15, 2-cpu cube sphere on the altices with ifort |
151 |
|
|
152 |
cd MITgcm/verification/global_ocean.cs32x15/code |
cd MITgcm/verification/global_ocean.cs32x15/code |
153 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
156 |
|
|
157 |
cd ../build |
cd ../build |
158 |
\rm * |
\rm * |
159 |
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_efc+mpi_altix |
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_ifort+mpi_altix_nas |
160 |
make depend |
make depend |
161 |
make -j |
make -j |
162 |
|
|
164 |
mkdir run |
mkdir run |
165 |
cd run |
cd run |
166 |
\rm * |
\rm * |
167 |
|
\cp ../../tutorial_held_suarez_cs/input/grid* . |
168 |
\cp ../input/* . |
\cp ../input/* . |
169 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
170 |
mpirun -np 2 ../build/mitgcmuv |
mpirun -np 2 ../build/mitgcmuv |
198 |
|
|
199 |
########################################################################## |
########################################################################## |
200 |
########################################################################## |
########################################################################## |
201 |
# 510*510*6*50, 216-cpu cube sphere on altix with ifort and pkg/diagnostics |
# 510*510*6*50, 1500-tile, 150-cpu, excludes land |
202 |
# requires input files in sudirectories run_template and ncep_rgau |
# uses s1500t_17x51 configuration |
|
# these can be obained from lou:/u/menemenl/cube |
|
203 |
|
|
204 |
cd MITgcm/verification/global_ocean.cs32x15/code |
cd MITgcm/verification/global_ocean.cs32x15/code |
205 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
206 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s1500t_17x51/* . |
207 |
\cp SIZE.h_216 SIZE.h |
\cp SIZE.h_150 SIZE.h |
208 |
\cp packages.conf_hr packages.conf |
\cp packages.conf_hr packages.conf |
209 |
|
|
210 |
cd ../build |
cd ../build |
221 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
222 |
ln -sf ../../../../run_template/* . |
ln -sf ../../../../run_template/* . |
223 |
\rm pickup* |
\rm pickup* |
224 |
ln -sf ../../../../run_template/pickup.0000316440.cube20 pickup.0000000216.data |
ln -sf ../../../../run_template/pickup.0000316440.cube19 pickup.0000000216 |
225 |
ln -sf ../../../../run_template/pickup_seaice.0000316440.cube20 pickup_seaice.0000000216.data |
ln -sf ../../../../run_template/pickup_seaice.0000316440.cube19 pickup_seaice.0000000216 |
226 |
\cp ../build/mitgcmuv . |
\cp ../build/mitgcmuv mitgcmuv150 |
227 |
qsub job_altix92 |
qsub job_altix150 |
228 |
|
|
229 |
|
|
230 |
|
########################################################################## |
231 |
|
########################################################################## |
232 |
|
# 510*510*6*50, 1500-tile, 375-cpu, excludes land |
233 |
|
# uses s1500t_17x51 configuration |
234 |
|
# example for running on c17-c20 using arrayd |
235 |
|
|
236 |
|
cd MITgcm/verification/global_ocean.cs32x15/code |
237 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
238 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s1500t_17x51/* . |
239 |
|
\cp SIZE.h_375 SIZE.h |
240 |
|
\cp packages.conf_hr packages.conf |
241 |
|
|
242 |
|
cd ../build |
243 |
|
\rm * |
244 |
|
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_ifort+mpi_altix_nas |
245 |
|
make depend |
246 |
|
make -j |
247 |
|
|
248 |
|
cd .. |
249 |
|
mkdir run |
250 |
|
cd run |
251 |
|
\rm * |
252 |
|
\cp ../input/* . |
253 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
254 |
|
ln -sf ../../../../run_template/* . |
255 |
|
\rm pickup* |
256 |
|
ln -sf ../../../../run_template/pickup.0000316440.cube19 pickup.0000000216 |
257 |
|
ln -sf ../../../../run_template/pickup_seaice.0000316440.cube19 pickup_seaice.0000000216 |
258 |
|
\cp ../build/mitgcmuv . |
259 |
|
job_c20_375cpu < /dev/null >&! output.run & |
260 |
|
|
261 |
|
|
262 |
|
########################################################################## |
263 |
|
########################################################################## |
264 |
|
# 510*510*6*50, 1500-tile, 375-cpu, excludes land |
265 |
|
# uses s1500t_17x51 configuration |
266 |
|
# example for running on c17-c20 using arrayd |
267 |
|
|
268 |
|
cd MITgcm/verification/global_ocean.cs32x15/code |
269 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
270 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s1500t_17x51/* . |
271 |
|
\cp SIZE.h_375 SIZE.h |
272 |
|
\cp packages.conf_hr packages.conf |
273 |
|
|
274 |
|
cd ../build |
275 |
|
\rm * |
276 |
|
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_ifort+mpi_altix_nas |
277 |
|
make depend |
278 |
|
make -j |
279 |
|
|
280 |
|
cd .. |
281 |
|
mkdir run |
282 |
|
cd run |
283 |
|
\rm * |
284 |
|
\cp ../input/* . |
285 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
286 |
|
ln -sf ../../../../run_template/* . |
287 |
|
\rm pickup* |
288 |
|
ln -sf ../../../../run_template/pickup.0000316440.cube19 pickup.0000000216 |
289 |
|
ln -sf ../../../../run_template/pickup_seaice.0000316440.cube19 pickup_seaice.0000000216 |
290 |
|
\cp ../build/mitgcmuv . |
291 |
|
job_c20_375cpu < /dev/null >&! output.run & |
292 |
|
|
293 |
|
|
294 |
|
########################################################################## |
295 |
|
########################################################################## |
296 |
|
# 510*510*6*50, 1500-tile, 500-cpu, excludes land |
297 |
|
# uses s1500t_17x51 configuration |
298 |
|
# example for running on c17-c20 using arrayd |
299 |
|
|
300 |
|
cd MITgcm/verification/global_ocean.cs32x15/code |
301 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
302 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s1500t_17x51/* . |
303 |
|
\cp SIZE.h_500 SIZE.h |
304 |
|
\cp packages.conf_hr packages.conf |
305 |
|
|
306 |
|
cd ../build |
307 |
|
\rm * |
308 |
|
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_ifort+mpi_altix_nas |
309 |
|
make depend |
310 |
|
make -j |
311 |
|
|
312 |
|
cd .. |
313 |
|
mkdir run |
314 |
|
cd run |
315 |
|
\rm * |
316 |
|
\cp ../input/* . |
317 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
318 |
|
ln -sf ../../../../run_template/* . |
319 |
|
\rm pickup* |
320 |
|
ln -sf ../../../../run_template/pickup.0000316440.cube19 pickup.0000000216 |
321 |
|
ln -sf ../../../../run_template/pickup_seaice.0000316440.cube19 pickup_seaice.0000000216 |
322 |
|
\cp ../build/mitgcmuv . |
323 |
|
job_c19_500cpu < /dev/null >&! output.run & |
324 |
|
|
325 |
|
|
326 |
|
########################################################################## |
327 |
|
########################################################################## |
328 |
|
# 510*510*6*50, 216-cpu cube sphere on cosmos |
329 |
|
|
330 |
|
cd MITgcm/verification/global_ocean.cs32x15/code |
331 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
332 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
333 |
|
\cp SIZE.h_216 SIZE.h |
334 |
|
\cp packages.conf_hr packages.conf |
335 |
|
|
336 |
|
module unload latest_intel80 |
337 |
|
module unload mpich-gm-intel80 |
338 |
|
module load latest_intel81 |
339 |
|
module load mpich-gm-intel81 |
340 |
|
|
341 |
|
cd ../build |
342 |
|
\rm * |
343 |
|
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia32_ifort+mpi_cosmos |
344 |
|
make depend |
345 |
|
make -j |
346 |
|
|
347 |
|
cd .. |
348 |
|
mkdir run |
349 |
|
cd run |
350 |
|
\rm * |
351 |
|
\cp ../input/* . |
352 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
353 |
|
ln -sf ../../../../run_template/* . |
354 |
|
\rm pickup* |
355 |
|
ln -sf ../../../../run_template/pickup.0000316440.cube19 pickup.0000000216 |
356 |
|
ln -sf ../../../../run_template/pickup_seaice.0000316440.cube19 pickup_seaice.0000000216 |
357 |
|
\cp ../build/mitgcmuv . |
358 |
|
bsub < job_cosmos |
359 |
|
|
360 |
|
|
361 |
########################################################################## |
########################################################################## |
437 |
\cp ../input/* . |
\cp ../input/* . |
438 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
439 |
qsub job_orion |
qsub job_orion |
|
|
|
|
|
|
|
########################################################################## |
|
|
########################################################################## |
|
|
# matlab script for generating pChkptFreq |
|
|
|
|
|
nTimeSteps=26352; |
|
|
for niter0=216:26352:(26352*12) |
|
|
pChkptFreq=(niter0+nTimeSteps)*1200; |
|
|
day=pChkptFreq/24/60/60; |
|
|
disp(['niter0=' int2str(niter0) ',day=' int2str(day) ', ' ... |
|
|
datestr(datenum(1992,1,1)+day) ', pChkptFreq=' int2str(pChkptFreq)]) |
|
|
end |
|
|
|
|
|
niter0 = 216 , day = 369 , 04-Jan-1993, pChkptFreq = 31881600 |
|
|
niter0 = 26568 , day = 735 , 05-Jan-1994, pChkptFreq = 63504000 |
|
|
niter0 = 52920 , day = 1101, 06-Jan-1995, pChkptFreq = 95126400 |
|
|
niter0 = 79272 , day = 1467, 07-Jan-1996, pChkptFreq = 126748800 |
|
|
niter0 = 105624, day = 1833, 07-Jan-1997, pChkptFreq = 158371200 |
|
|
niter0 = 131976, day = 2199, 08-Jan-1998, pChkptFreq = 189993600 |
|
|
niter0 = 158328, day = 2565, 09-Jan-1999, pChkptFreq = 221616000 |
|
|
niter0 = 184680, day = 2931, 10-Jan-2000, pChkptFreq = 253238400 |
|
|
niter0 = 211032, day = 3297, 10-Jan-2001, pChkptFreq = 284860800 |
|
|
niter0 = 237384, day = 3663, 11-Jan-2002, pChkptFreq = 316483200 |
|
|
niter0 = 263736, day = 4029, 12-Jan-2003, pChkptFreq = 348105600 |
|
|
niter0 = 290088, day = 4395, 13-Jan-2004, pChkptFreq = 379728000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#!/bin/csh |
|
|
\cp data.pkg_hr data.pkg |
|
|
\cp data.seaice_hr data.seaice |
|
|
\cp data.exf_clim_hr data.exf_clim |
|
|
|
|
|
\cp data_hr92 data |
|
|
./modpickup |
|
|
\cp data.exf_hr92 data.exf |
|
|
/opt/sgi/mpt/1.11-85/bin/mpirun.real -v -a a2k c20 216 runon 221-436 mitgcmuv |
|
|
mkdir out.1992 |
|
|
\mv STDOUT.0000 *.data pickup*.meta out.1992 |
|
|
\cp data* out.1992 |
|
|
\rm STD* *.meta |
|
|
|
|