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