/[MITgcm]/MITgcm_contrib/ocean_inversion_project/README
ViewVC logotype

Contents of /MITgcm_contrib/ocean_inversion_project/README

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.19 - (show annotations) (download)
Thu Dec 18 03:17:56 2003 UTC (21 years, 6 months ago) by dimitri
Branch: MAIN
Changes since 1.18: +25 -3 lines
Modified Files ocean_inversion_project/*

1 Ocean Inversion Project
2 =======================
3
4 Instructions for using pkg/ptracers to compute tracer
5 Green's functions for Gruber's ocean inversion project
6 (see quercus.igpp.ucla.edu/OceanInversion/ for details).
7
8 Preprocessed OceanInversion input files are available
9 under directories region_mask, takahashi, and
10 atm_co2 in this package. All netcdf input files
11 have been converted to binary format in order to avoid
12 having to link netcdf library with MITgcm code. See
13 respective README files in each directory for details.
14
15
16 ===============================================
17 First check that pkg/ptracers works OK by using
18 salinity initial and boundary conditions
19 ===============================================
20
21 1 ===> get MITgcm code from cvs repository
22
23 CVSROOT=:pserver:cvsanon@mitgcm.org:/u/u0/gcmpack
24 cvs login ( CVS password: cvsanon )
25 cvs co -r checkpoint51n_branch MITgcm
26
27 2 ===> put MITgcm_contrib/ocean_inversion_project in MITgcm directory
28
29 cd MITgcm
30 cvs co -d ocean_inversion_project MITgcm_contrib/ocean_inversion_project
31
32 3 ===> compile and link
33
34 cd bin
35 cp ../verification/global_with_exf/code/* .
36 cp ../ocean_inversion_project/code/* .
37 rm ptracers_*.F PTRACERS_OPTIONS.h
38 ../tools/genmake2
39 (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
40 make depend
41 make
42
43 4 ===> execute
44
45 cd ../exe
46 cp ../verification/global_with_exf/input/eedata .
47 cp ../verification/global_with_exf/input/data.* .
48 cp ../verification/global_with_exf/input/POLY3.COEFFS .
49 ln -sf ../verification/global_with_exf/input/*.bin .
50 cp ../ocean_inversion_project/input/* .
51 cp data.test data
52 cp data.ptracers.test data.ptracers
53 mitgcmuv > output.txt
54
55 5 ===> check that PTRACER output and salinity output are identical.
56
57 diff PTRACER01.0000000020.001.001.data S.0000000020.001.001.data
58 diff PTRACER30.0000000020.001.001.data S.0000000020.001.001.data
59 diff PTRtave30.0000000020.001.001.data Stave.0000000020.001.001.data
60 diff PTRtave30.0000000020.001.001.data Stave.0000000020.001.001.data
61
62
63 ==========================================================
64 MPI instructions for carrying out a 3000-year quasi-stationary
65 integration using the global_ocean.90x40x15 configuration.
66 ==========================================================
67
68 cd MITgcm/exe
69 rm *
70 cd ../bin
71 rm *
72 cp ../verification/global_with_exf/code/* .
73 cp ../ocean_inversion_project/code/* .
74 rm PTRACERS_OPTIONS.h
75 cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
76 cp SIZE.h_mpi SIZE.h
77 ../tools/genmake2
78 (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
79 make depend
80 make
81 cd ../exe
82 cp ../verification/global_with_exf/input/eedata .
83 cp ../verification/global_with_exf/input/data.* .
84 cp ../verification/global_with_exf/input/POLY3.COEFFS .
85 ln -sf ../verification/global_with_exf/input/*.bin .
86 cp ../ocean_inversion_project/input/* .
87 ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
88 ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
89 cp data.stationary.1 data
90 mpirun -np 24 dplace -s1 mitgcmuv < /dev/null > & ! errlog &
91 (on orion: qsub job.orion)
92
93 ==========================================================
94 MPI instructions for carrying out time-dependent, 1765-2005,
95 anthropogenic carbon perturbation tracer experiments using
96 the global_ocean.90x40x15 configuration.
97 ==========================================================
98
99 cd MITgcm/exe
100 rm *
101 cd ../bin
102 rm *
103 cp ../verification/global_with_exf/code/* .
104 cp ../ocean_inversion_project/code/* .
105 cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
106 cp SIZE.h_mpi SIZE.h
107 ../tools/genmake2
108 (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
109 make depend
110 make
111 cd ../exe
112 cp ../verification/global_with_exf/input/eedata .
113 cp ../verification/global_with_exf/input/data.* .
114 cp ../verification/global_with_exf/input/POLY3.COEFFS .
115 ln -sf ../verification/global_with_exf/input/*.bin .
116 cp ../ocean_inversion_project/input/* .
117 cp data.1765-2005 data
118 ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
119 ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
120 ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
121 mpirun -np 24 dplace -s1 mitgcmuv < /dev/null > & ! errlog &
122 (on orion: qsub job.orion.td)
123
124
125 ==========================================================
126 Instructions for carrying out time-dependent, 1765-2005,
127 anthropogenic carbon perturbation tracer experiments using
128 global_ocean.90x40x15 configuration and netcdf output.
129 This assumes that the appropriate libnetcdf.a exists
130 and that it be specified in the genmake2 option file.
131 ==========================================================
132
133 cd MITgcm/exe
134 rm *
135 cd ../bin
136 rm *
137 cp ../verification/global_with_exf/code/* .
138 cp ../ocean_inversion_project/code/* .
139 cp PTRACERS_OPTIONS.h.netcdf PTRACERS_OPTIONS.h
140 cp ../ocean_inversion_project/write_netCDF/* .
141
142 ### need customized option file; example below is for nireas
143 ../tools/genmake2 -of linux_ia32_g77_netcdf
144
145 make depend
146 make
147 cd ../exe
148 cp ../verification/global_with_exf/input/eedata .
149 cp ../verification/global_with_exf/input/data.* .
150 cp ../verification/global_with_exf/input/POLY3.COEFFS .
151 ln -sf ../verification/global_with_exf/input/*.bin .
152 cp ../ocean_inversion_project/input/* .
153 cp data.1765-2005.1 data
154 ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
155 ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
156 ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
157 mitgcmuv > output .txt &
158
159
160 ======================================================
161
162 ==========================================================
163 Instructions for generating netcdf output files on orion
164 ==========================================================
165
166 cd ocean_inversion_project/write_netCDF
167 setenv F_UFMTENDIAN big
168
169 (check that defaults in mk_output.F are appropriate)
170
171 efc -W0 -WB mk_output.F write_nc_phys.F nc_util.F \
172 handle_errors.F write_nc_basisfnctns.F \
173 write_nc_diag_0D.F write_nc_diag_2D.F \
174 -I/u2/dmenem/software/netcdf-3.5.0/include \
175 -L/u2/dmenem/software/netcdf-3.5.0/lib -lnetcdf
176 a.out
177
178
179 ======================================================
180
181 % some matlab code for looking at fort.10 debug files
182 load fort.10
183 tak=zeros(90,40,12);
184 for n=1:length(fort)
185 m=fort(n,1); i=fort(n,2); j=fort(n,3);
186 if i>0&i<91&j>0&j<41, tak(i,j,m)=fort(n,4); end
187 end
188 lon=2:4:360; lat=-78:4:78;
189 clf, contourf(lon,lat,mean(tak(:,:,1),3)',-10:10)
190 caxis([-6 6]), colorbar, plotland
191
192 % some matlab code for looking at PTRACER output files
193 salt=readbin('S.0000000020.001.001.data',[90 40 15],1);
194 tracer=zeros(90,40,15,30);
195 for i=1:30
196 fn=['PTRACER' myint2str(i) '.0000000020.001.001.data'];
197 tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
198 clf, mypcolor(tracer(:,:,1,i)'); pause(1)
199 end
200 tmp=sum(tracer,4); clf, mypcolor(tmp(:,:,1)')
201 mypcolor(
202
203
204 % some matlab code for checking that one year's worth of
205 % tracer uptake is approximately 1e18 mols.
206 lon=2:4:360; lat=-78:4:78;
207 thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];
208 mask=readbin('hFacC.001.001.data',[90 40 15],1);
209 tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
210 for i=1:30, mydisp(i)
211 fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
212 tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
213 for j=1:length(lat)
214 for k=1:length(thk)
215 sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
216 thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
217 end
218 end
219 end
220 plot(1:30,0*sumtracer,1:30,sumtracer)

  ViewVC Help
Powered by ViewVC 1.1.22