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

Annotation of /MITgcm_contrib/ocean_inversion_project/README

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


Revision 1.15 - (hide annotations) (download)
Tue Oct 28 00:35:54 2003 UTC (21 years, 8 months ago) by dimitri
Branch: MAIN
Changes since 1.14: +1 -1 lines
Modified README

1 dimitri 1.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 dimitri 1.3 (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 dimitri 1.1
15    
16 dimitri 1.2 ===============================================
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 dimitri 1.15 cvs co -P MITgcm -r checkpoint51n_branch
26 dimitri 1.2
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 dimitri 1.3 3 ===> compile and link
33 dimitri 1.2
34     cd bin
35     cp ../verification/global_with_exf/code/* .
36     cp ../ocean_inversion_project/code/* .
37 dimitri 1.12 rm ptracers_*.F PTRACERS_OPTIONS.h
38 dimitri 1.11 ../tools/genmake2
39     (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
40 dimitri 1.2 make depend
41     make
42    
43     4 ===> execute
44    
45     cd ../exe
46 dimitri 1.3 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 dimitri 1.2 cp ../ocean_inversion_project/input/* .
51 dimitri 1.3 cp data.test data
52     cp data.ptracers.test data.ptracers
53 dimitri 1.4 mitgcmuv > output.txt
54 dimitri 1.2
55 dimitri 1.5 5 ===> check that PTRACER output and salinity output are identical.
56 dimitri 1.2
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 dimitri 1.14 diff PTRtave30.0000000020.001.001.data Stave.0000000020.001.001.data
60     diff PTRtave30.0000000020.001.001.data Stave.0000000020.001.001.data
61 dimitri 1.3
62 dimitri 1.1
63 dimitri 1.8 ==========================================================
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 dimitri 1.12 rm PTRACERS_OPTIONS.h
75 dimitri 1.8 cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
76     cp SIZE.h_mpi SIZE.h
77 dimitri 1.11 ../tools/genmake2
78     (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
79 dimitri 1.8 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 dimitri 1.14 mpirun -np 24 dplace -s1 -c3-38 mitgcmuv < /dev/null > & ! errlog &
90 dimitri 1.12
91    
92     ==========================================================
93     Instructions for carrying out time-dependent, 1765-2005,
94     anthropogenic carbon perturbation tracer experiments using
95     the global_ocean.90x40x15 configuration.
96     ==========================================================
97    
98     cd MITgcm/exe
99     rm *
100     cd ../bin
101     rm *
102     cp ../verification/global_with_exf/code/* .
103     cp ../ocean_inversion_project/code/* .
104     ../tools/genmake2
105     (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
106 dimitri 1.13 make depend
107     make
108     cd ../exe
109     cp ../verification/global_with_exf/input/eedata .
110     cp ../verification/global_with_exf/input/data.* .
111     cp ../verification/global_with_exf/input/POLY3.COEFFS .
112     ln -sf ../verification/global_with_exf/input/*.bin .
113     cp ../ocean_inversion_project/input/* .
114     cp data.1765-2005 data
115     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
116     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
117     ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
118     mitgcmuv > output .txt &
119    
120    
121     ==========================================================
122     Instructions for carrying out time-dependent, 1765-2005,
123     anthropogenic carbon perturbation tracer experiments using
124     global_ocean.90x40x15 configuration and netcdf output.
125     This assumes that the appropriate libnetcdf.a exists
126     and that it be specified in the genmake2 option file.
127     ==========================================================
128    
129     cd MITgcm/exe
130     rm *
131     cd ../bin
132     rm *
133     cp ../verification/global_with_exf/code/* .
134     cp ../ocean_inversion_project/code/* .
135     cp PTRACERS_OPTIONS.h.netcdf PTRACERS_OPTIONS.h
136     cp ../ocean_inversion_project/write_netCDF/* .
137    
138     ### need customized option file; example below is for nireas
139     ../tools/genmake2 -of linux_ia32_g77_netcdf
140    
141 dimitri 1.12 make depend
142     make
143     cd ../exe
144     cp ../verification/global_with_exf/input/eedata .
145     cp ../verification/global_with_exf/input/data.* .
146     cp ../verification/global_with_exf/input/POLY3.COEFFS .
147     ln -sf ../verification/global_with_exf/input/*.bin .
148     cp ../ocean_inversion_project/input/* .
149     cp data.1765-2005 data
150     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
151     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
152     ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
153     mitgcmuv > output .txt &
154 dimitri 1.8
155    
156 dimitri 1.3 ======================================================
157 dimitri 1.1
158 dimitri 1.3 % some matlab code for looking at fort.10 debug files
159     load fort.10
160     tak=zeros(90,40,12);
161     for n=1:length(fort)
162     m=fort(n,1); i=fort(n,2); j=fort(n,3);
163     if i>0&i<91&j>0&j<41, tak(i,j,m)=fort(n,4); end
164     end
165     lon=2:4:360; lat=-78:4:78;
166     clf, contourf(lon,lat,mean(tak(:,:,1),3)',-10:10)
167     caxis([-6 6]), colorbar, plotland
168    
169     % some matlab code for looking at PTRACER output files
170 dimitri 1.4 salt=readbin('S.0000000020.001.001.data',[90 40 15],1);
171 dimitri 1.3 tracer=zeros(90,40,15,30);
172     for i=1:30
173     fn=['PTRACER' myint2str(i) '.0000000020.001.001.data'];
174     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
175     clf, mypcolor(tracer(:,:,1,i)'); pause(1)
176     end
177     tmp=sum(tracer,4); clf, mypcolor(tmp(:,:,1)')
178 dimitri 1.4 mypcolor(
179    
180 dimitri 1.3
181     % some matlab code for checking that one year's worth of
182     % tracer uptake is approximately 1e18 mols.
183     lon=2:4:360; lat=-78:4:78;
184     thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];
185 dimitri 1.7 mask=readbin('hFacC.001.001.data',[90 40 15],1);
186 dimitri 1.3 tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
187     for i=1:30, mydisp(i)
188 dimitri 1.7 fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
189 dimitri 1.3 tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
190     for j=1:length(lat)
191     for k=1:length(thk)
192 dimitri 1.7 sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
193 dimitri 1.3 thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
194     end
195 dimitri 1.1 end
196 dimitri 1.3 end
197 dimitri 1.4 plot(1:30,0*sumtracer,1:30,sumtracer)

  ViewVC Help
Powered by ViewVC 1.1.22