1 |
Instructions 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: June 10, 2006 |
|
3 |
216-CPU code and input used for integrating cube37. |
Forcing fields and other input files needed for the CS510 |
4 |
|
configuration can be obtained from |
5 |
|
http://ecco2.org/products/model_setups/cs510.html |
6 |
|
|
7 |
|
================= |
8 |
|
UPDATES |
9 |
|
|
10 |
|
January 5, 2006: cube51, like cube50 but with bottomDragQuadratic = 0.0012 |
11 |
|
|
12 |
|
January 5, 2006: cube50, like cube48 but with snow advection |
13 |
|
|
14 |
|
December 30, 2006: updates for cube49, the first |
15 |
|
"blend" integration. |
16 |
|
|
17 |
|
December 11, 2006: preparing for cube47, same as cube43 |
18 |
|
but with Arctic monthly river runoff climatology. |
19 |
|
|
20 |
|
December 5, 2006: 216-CPU code for cube46 |
21 |
|
Changed diagnostics to accomodate JMCs latest and some |
22 |
|
changes to code-mods/CPP_EEOPTIONS.h and W2_OPTIONS.h |
23 |
|
to speed up code. |
24 |
|
|
25 |
|
November 7, 2006: 216-CPU code for cube43 |
26 |
|
Bug fixes in growth.F routine and new set of diagnostics |
27 |
|
|
28 |
|
October 15, 2006: 216-CPU code for cube40 |
29 |
|
|
30 |
|
September 28, 2006: 216-CPU code for cube38 |
31 |
|
|
32 |
|
September 4, 2006 |
33 |
|
Modified 32*32*6*15 experiments to use grid_cs32.* files from |
34 |
|
verification/tutorial_held_suarez_cs/input instead of |
35 |
|
tile* files from verification/global_ocean.cs32x15/input |
36 |
|
|
37 |
|
August 8, 2006: 216-CPU code and input used for cube37 |
38 |
|
using "June 10, 2006" MITgcm code. |
39 |
|
|
40 |
|
for online T/S profile diagnostics all that is needed is |
41 |
|
profiles_init_fixed |
42 |
|
profiles_inloop |
43 |
|
see pkg/ecco/ecco_cost_init_fixed.F |
44 |
|
pkg/ecco/cost_averagesfields.F |
45 |
|
|
46 |
|
########################################################################## |
47 |
|
########################################################################## |
48 |
|
# Get forcing files, etc. |
49 |
|
# Example below is for cube46 on /nobackup2a/menemenl |
50 |
|
|
51 |
|
cd /nobackup2a/menemenl |
52 |
|
mkdir cube47 |
53 |
|
cd cube47 |
54 |
|
ln -sf ../run_template . |
55 |
|
ln -sf ../ncep_rgau . |
56 |
|
|
57 |
|
|
58 |
########################################################################## |
########################################################################## |
59 |
########################################################################## |
########################################################################## |
60 |
# getting the code from anonymous CVS server |
# getting the code from anonymous CVS server |
61 |
|
|
62 |
|
bash or sh shell: |
63 |
|
$ export CVSROOT=':pserver:cvsanon@mitgcm.org:/u/gcmpack' |
64 |
|
$ cvs login |
65 |
|
( enter the CVS password: "cvsanon" ) |
66 |
|
|
67 |
|
tcsh or csh shell: |
68 |
|
$ setenv CVSROOT ':pserver:cvsanon@mitgcm.org:/u/gcmpack' |
69 |
|
$ cvs login |
70 |
|
( enter the CVS password: "cvsanon" ) |
71 |
|
|
72 |
cvs co MITgcm_contrib/high_res_cube/README_ice |
cvs co MITgcm_contrib/high_res_cube/README_ice |
73 |
cvs co MITgcm_contrib/high_res_cube/code-mods |
cvs co MITgcm_contrib/high_res_cube/code-mods |
74 |
cvs co MITgcm_contrib/high_res_cube/input |
cvs co MITgcm_contrib/high_res_cube/input |
75 |
cvs co MITgcm_contrib/high_res_cube/results |
cvs co MITgcm_contrib/high_res_cube/results |
76 |
cvs co MITgcm_code |
cvs co MITgcm_code |
77 |
cvs co MITgcm/verification/global_ocean.cs32x15 |
cvs co MITgcm/verification/global_ocean.cs32x15 |
78 |
|
cvs co MITgcm/verification/tutorial_held_suarez_cs/input |
79 |
|
|
80 |
|
|
81 |
|
########################################################################## |
82 |
|
########################################################################## |
83 |
|
# 510*510*6*50, 216-cpu cube sphere on altix with ifort and pkg/diagnostics |
84 |
|
|
85 |
|
cd MITgcm/verification/global_ocean.cs32x15/code |
86 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
87 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
88 |
|
\cp SIZE.h_216 SIZE.h |
89 |
|
\cp packages.conf_hr packages.conf |
90 |
|
|
91 |
|
cd ../build |
92 |
|
\rm * |
93 |
|
../../../tools/genmake2 -mods=../code -of ../code/linux_ia64_ifort+mpi_altix_nas |
94 |
|
make depend |
95 |
|
make -j |
96 |
|
|
97 |
|
cd .. |
98 |
|
mkdir run |
99 |
|
cd run |
100 |
|
\rm * |
101 |
|
\cp ../input/* . |
102 |
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
103 |
|
ln -sf ../../../../run_template/* . |
104 |
|
\rm pickup* eedata.mth data.pkg data.seaice data.exf_clim data.exf data.mnc data pr* |
105 |
|
\rm bathy_Hmin50.bin *192_94* *cs32* *.m lev* tren* job_c* job_altix150 job_altix92_54t |
106 |
|
ln -sf ../../../../run_template/pickup.0000000216.cube49 pickup.0000000216 |
107 |
|
ln -sf ../../../../run_template/pickup_seaice.0000000216.cube48 pickup_seaice.0000000216 |
108 |
|
\cp ../build/mitgcmuv . |
109 |
|
qsub job_altix |
110 |
|
|
111 |
|
|
112 |
########################################################################## |
########################################################################## |
125 |
mkdir run |
mkdir run |
126 |
cd run |
cd run |
127 |
\rm * |
\rm * |
128 |
|
\cp ../../tutorial_held_suarez_cs/input/grid* . |
129 |
\cp ../input/* . |
\cp ../input/* . |
130 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
131 |
../build/mitgcmuv >& output.txt |
../build/mitgcmuv >& output.txt |
136 |
to use matlab to look at the output |
to use matlab to look at the output |
137 |
matlab |
matlab |
138 |
|
|
139 |
for fld={'VICEtave','UICEtave','HEFFtave','AREAtave','QSWtave', ... |
for fld={'SIuice','SIvice','SIheff','SIarea','oceQsw', ... |
140 |
'QNETtave','FVtave','FUtave','EmPmRtave'} |
'surForcT','oceTAUX','oceTAUY','surForcS'} |
141 |
tmp=permute(readbin([fld{1} '.0000000020.data'],[32,6,32]),[1 3 2]); |
tmp=permute(readbin([fld{1} '.0000000072.data'],[32,6,32]),[1 3 2]); |
142 |
cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause |
cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause |
143 |
end |
end |
144 |
|
|
145 |
heff=permute(readbin(['HEFFtave.0000000020.data'],[32,6,32]),[1 3 2]); |
heff=permute(readbin(['SIheff.0000000072.data'],[32,6,32]),[1 3 2]); |
146 |
mask=0*heff; mask(find(heff>.001))=1; |
mask=0*heff; mask(find(heff>.001))=1; |
147 |
uice=mask.*permute(readbin(['UICEtave.0000000020.data'],[32,6,32]),[1 3 2]); |
uice=mask.*permute(readbin(['SIuice.0000000072.data'],[32,6,32]),[1 3 2]); |
148 |
vice=mask.*permute(readbin(['VICEtave.0000000020.data'],[32,6,32]),[1 3 2]); |
vice=mask.*permute(readbin(['SIvice.0000000072.data'],[32,6,32]),[1 3 2]); |
149 |
clf |
clf |
150 |
subplot(221), mypcolor(uice(:,:,3)'); colorbar, title('uice, tile 3') |
subplot(221), mypcolor(uice(:,:,3)'); colorbar, title('uice, tile 3') |
151 |
subplot(222), mypcolor(uice(:,:,6)'); colorbar, title('uice, tile 6') |
subplot(222), mypcolor(uice(:,:,6)'); colorbar, title('uice, tile 6') |
169 |
mkdir run |
mkdir run |
170 |
cd run |
cd run |
171 |
\rm * |
\rm * |
172 |
|
\cp ../../tutorial_held_suarez_cs/input/grid* . |
173 |
\cp ../input/* . |
\cp ../input/* . |
174 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
175 |
../build/mitgcmuv >& output.txt |
../build/mitgcmuv >& output.txt |
194 |
mkdir run |
mkdir run |
195 |
cd run |
cd run |
196 |
\rm * |
\rm * |
197 |
|
\cp ../../tutorial_held_suarez_cs/input/grid* . |
198 |
\cp ../input/* . |
\cp ../input/* . |
199 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
200 |
mpirun -np 2 ../build/mitgcmuv |
mpirun -np 2 ../build/mitgcmuv |
228 |
|
|
229 |
########################################################################## |
########################################################################## |
230 |
########################################################################## |
########################################################################## |
|
# 510*510*6*50, 216-cpu cube sphere on altix with ifort and pkg/diagnostics |
|
|
# requires input files in sudirectories run_template and ncep_rgau |
|
|
# these can be obained from lou:/u/menemenl/cube |
|
|
|
|
|
cd MITgcm/verification/global_ocean.cs32x15/code |
|
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
|
|
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
|
|
\cp SIZE.h_216 SIZE.h |
|
|
\cp packages.conf_hr packages.conf |
|
|
|
|
|
cd ../build |
|
|
\rm * |
|
|
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_ifort+mpi_altix_nas |
|
|
make depend |
|
|
make -j |
|
|
|
|
|
cd .. |
|
|
mkdir run |
|
|
cd run |
|
|
\rm * |
|
|
\cp ../input/* . |
|
|
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
|
|
ln -sf ../../../../run_template/* . |
|
|
\rm pickup* data.pkg data.seaice data.exf_clim data.exf data |
|
|
\rm *192_94* *cs32* *.m lev* tren* job_c* job_altix150 job_altix92_54t |
|
|
ln -sf ../../../../run_template/pickup.0000000216.cube27 pickup.0000000216 |
|
|
ln -sf ../../../../run_template/pickup_seaice.0000000216.cube27 pickup_seaice.0000000216 |
|
|
\cp ../build/mitgcmuv . |
|
|
qsub job_altix |
|
|
|
|
|
|
|
|
########################################################################## |
|
|
########################################################################## |
|
231 |
# 510*510*6*50, 1500-tile, 150-cpu, excludes land |
# 510*510*6*50, 1500-tile, 150-cpu, excludes land |
232 |
# uses s1500t_17x51 configuration |
# uses s1500t_17x51 configuration |
233 |
|
|
257 |
qsub job_altix150 |
qsub job_altix150 |
258 |
|
|
259 |
|
|
|
|
|
|
|
|
260 |
########################################################################## |
########################################################################## |
261 |
########################################################################## |
########################################################################## |
262 |
# 510*510*6*50, 1500-tile, 375-cpu, excludes land |
# 510*510*6*50, 1500-tile, 375-cpu, excludes land |
289 |
job_c20_375cpu < /dev/null >&! output.run & |
job_c20_375cpu < /dev/null >&! output.run & |
290 |
|
|
291 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
292 |
########################################################################## |
########################################################################## |
293 |
########################################################################## |
########################################################################## |
294 |
# 510*510*6*50, 1500-tile, 375-cpu, excludes land |
# 510*510*6*50, 1500-tile, 375-cpu, excludes land |
353 |
job_c19_500cpu < /dev/null >&! output.run & |
job_c19_500cpu < /dev/null >&! output.run & |
354 |
|
|
355 |
|
|
|
|
|
|
|
|
|
|
|
356 |
########################################################################## |
########################################################################## |
357 |
########################################################################## |
########################################################################## |
358 |
# 510*510*6*50, 216-cpu cube sphere on cosmos |
# 510*510*6*50, 216-cpu cube sphere on cosmos |
388 |
bsub < job_cosmos |
bsub < job_cosmos |
389 |
|
|
390 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
391 |
########################################################################## |
########################################################################## |
392 |
########################################################################## |
########################################################################## |
393 |
# 510*510*6*50, 216-tile, 54-cpu cube sphere on the altices with efc |
# 510*510*6*50, 216-tile, 54-cpu cube sphere on the altices with efc |