1 |
Instructions for setting up a cube-sphere integration with sea-ice. |
2 |
Date last tested: February 13, 2004. |
3 |
This is the code used for cube4, the third 1992-2002 510x510x6 |
4 |
cube-sphere integration. |
5 |
|
6 |
|
7 |
########################################################################## |
8 |
########################################################################## |
9 |
# getting the code from anonymous CVS server |
10 |
|
11 |
setenv CVSROOT :pserver:cvsanon@mitgcm.org:/u/u0/gcmpack |
12 |
cvs login ( CVS password: cvsanon ) |
13 |
cvs co -r hrcube4 MITgcm_contrib/high_res_cube/README_ice |
14 |
cvs co -r hrcube4 MITgcm_contrib/high_res_cube/code-mods |
15 |
cvs co -r hrcube4 MITgcm_contrib/high_res_cube/matlab-grid-converter |
16 |
cvs co -r hrcube4 MITgcm_contrib/high_res_cube/input |
17 |
cvs co -r hrcube4 MITgcm_contrib/high_res_cube/results |
18 |
cvs co -r hrcube4 MITgcm_code |
19 |
cvs co -r hrcube4 MITgcm/verification/global_ocean.cs32x15 |
20 |
|
21 |
|
22 |
########################################################################## |
23 |
########################################################################## |
24 |
# 32*32*6*15, 1-cpu cube sphere |
25 |
|
26 |
cd MITgcm/verification/global_ocean.cs32x15/code |
27 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
28 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s12t_16x32/* . |
29 |
|
30 |
cd ../build |
31 |
../../../tools/genmake2 -mods=../code |
32 |
make depend |
33 |
make |
34 |
|
35 |
cd .. |
36 |
mkdir run |
37 |
cd run |
38 |
\cp ../input/* . |
39 |
\cp ../../../../MITgcm_contrib/high_res_cube/matlab-grid-converter/tile00* . |
40 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
41 |
../build/mitgcmuv >& output.txt |
42 |
|
43 |
comparison output is in: |
44 |
../../../../MITgcm_contrib/high_res_cube/results/output.txt |
45 |
|
46 |
to use matlab to look at the output |
47 |
matlab |
48 |
|
49 |
for fld={'Eta','VICE','UICE','HEFF','AREA','Qsw','Qnet','FV','FU','EmPmR'} |
50 |
tmp=permute(readbin([fld{1} '.0000000020.data'],[32,6,32]),[1 3 2]); |
51 |
cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause |
52 |
end |
53 |
|
54 |
heff=permute(readbin(['HEFF.0000000020.data'],[32,6,32]),[1 3 2]); |
55 |
mask=0*heff; mask(find(heff>.001))=1; |
56 |
uice=mask.*permute(readbin(['UICE.0000000020.data'],[32,6,32]),[1 3 2]); |
57 |
vice=mask.*permute(readbin(['VICE.0000000020.data'],[32,6,32]),[1 3 2]); |
58 |
clf |
59 |
subplot(221), mypcolor(uice(:,:,3)'), colorbar, title('uice, tile 3') |
60 |
subplot(222), mypcolor(uice(:,:,6)'), colorbar, title('uice, tile 6') |
61 |
subplot(223), mypcolor(vice(:,:,3)'), colorbar, title('vice, tile 3') |
62 |
subplot(224), mypcolor(vice(:,:,6)'), colorbar, title('vice, tile 6') |
63 |
|
64 |
|
65 |
########################################################################## |
66 |
########################################################################## |
67 |
# 32*32*6*15, 2-cpu cube sphere on the altices with efc |
68 |
|
69 |
cd MITgcm/verification/global_ocean.cs32x15/code |
70 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
71 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s12t_16x32/* . |
72 |
\cp SIZE.h_mpi SIZE.h |
73 |
|
74 |
cd ../build |
75 |
\rm * |
76 |
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_efc+mpi |
77 |
make depend |
78 |
make |
79 |
|
80 |
cd .. |
81 |
mkdir run |
82 |
cd run |
83 |
\rm * |
84 |
\cp ../input/* . |
85 |
\cp ../../../../MITgcm_contrib/high_res_cube/matlab-grid-converter/tile00* . |
86 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
87 |
mpirun -np 2 ../build/mitgcmuv |
88 |
|
89 |
|
90 |
########################################################################## |
91 |
########################################################################## |
92 |
# 510*510*6*50, 54-cpu cube sphere on the altices with efc |
93 |
# requires input files in sudirectories run_template and ncep_rgau |
94 |
# presently residing under orion:/tmp1/dmenem/cube |
95 |
|
96 |
cd MITgcm/verification/global_ocean.cs32x15/code |
97 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
98 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
99 |
\cp SIZE.h_54 SIZE.h |
100 |
\cp packages.conf_hr packages.conf |
101 |
|
102 |
cd ../build |
103 |
\rm * |
104 |
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_efc+mpi |
105 |
make depend |
106 |
make |
107 |
|
108 |
cd .. |
109 |
mkdir run |
110 |
cd run |
111 |
\rm * |
112 |
\cp ../input/* . |
113 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
114 |
qsub job_orion |
115 |
|
116 |
|
117 |
########################################################################## |
118 |
########################################################################## |
119 |
# 510*510*6*50, 205-tile, 41-cpu cube sphere on the altices with efc |
120 |
# requires input files in sudirectories run_template and ncep_rgau |
121 |
# presently residing under orion:/tmp1/dmenem/cube |
122 |
|
123 |
cd MITgcm/verification/global_ocean.cs32x15/code |
124 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
125 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s205t_85x85/* . |
126 |
\cp SIZE.h_41 SIZE.h |
127 |
\cp packages.conf_hr packages.conf |
128 |
|
129 |
cd ../build |
130 |
\rm * |
131 |
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_efc+mpi |
132 |
make depend |
133 |
make |
134 |
|
135 |
cd .. |
136 |
mkdir run |
137 |
cd run |
138 |
\rm * |
139 |
\cp ../input/* . |
140 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
141 |
qsub job_orion41 |
142 |
|
143 |
|
144 |
########################################################################## |
145 |
########################################################################## |
146 |
# 510*510*6*50, 216-cpu cube sphere on altix with efc |
147 |
# requires input files in sudirectories run_template and ncep_rgau |
148 |
# these can be obained from lou:/u/menemenl/cube |
149 |
|
150 |
cd MITgcm/verification/global_ocean.cs32x15/code |
151 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/* . |
152 |
\cp ../../../../MITgcm_contrib/high_res_cube/code-mods/s216t_85x85/* . |
153 |
\cp SIZE.h_216 SIZE.h |
154 |
\cp packages.conf_hr packages.conf |
155 |
|
156 |
cd ../build |
157 |
\rm * |
158 |
../../../tools/genmake2 -mods=../code -of ../../../tools/build_options/linux_ia64_efc+mpi_altix |
159 |
make depend |
160 |
make |
161 |
|
162 |
cd .. |
163 |
mkdir run |
164 |
cd run |
165 |
\rm * |
166 |
\cp ../input/* . |
167 |
\cp ../../../../MITgcm_contrib/high_res_cube/input/* . |
168 |
qsub job_altix |
169 |
|
170 |
|
171 |
########################################################################## |
172 |
########################################################################## |
173 |
# matlab script for generating pChkptFreq |
174 |
|
175 |
nTimeSteps=26352; |
176 |
for niter0=216:26352:(26352*11) |
177 |
pChkptFreq=(niter0+nTimeSteps)*1200; |
178 |
day=pChkptFreq/24/60/60; |
179 |
disp(['niter0=' int2str(niter0) ',day=' int2str(day) ', ' ... |
180 |
datestr(datenum(1992,1,1)+day) ', pChkptFreq=' int2str(pChkptFreq)]) |
181 |
end |
182 |
|
183 |
niter0 = 216 , day = 369 , 04-Jan-1993, pChkptFreq = 31881600 |
184 |
niter0 = 26568 , day = 735 , 05-Jan-1994, pChkptFreq = 63504000 |
185 |
niter0 = 52920 , day = 1101, 06-Jan-1995, pChkptFreq = 95126400 |
186 |
niter0 = 79272 , day = 1467, 07-Jan-1996, pChkptFreq = 126748800 |
187 |
niter0 = 105624, day = 1833, 07-Jan-1997, pChkptFreq = 158371200 |
188 |
niter0 = 131976, day = 2199, 08-Jan-1998, pChkptFreq = 189993600 |
189 |
niter0 = 158328, day = 2565, 09-Jan-1999, pChkptFreq = 221616000 |
190 |
niter0 = 184680, day = 2931, 10-Jan-2000, pChkptFreq = 253238400 |
191 |
niter0 = 211032, day = 3297, 10-Jan-2001, pChkptFreq = 284860800 |
192 |
niter0 = 237384, day = 3663, 11-Jan-2002, pChkptFreq = 316483200 |
193 |
niter0 = 263736, day = 4029, 12-Jan-2003, pChkptFreq = 348105600 |