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

Diff of /MITgcm_contrib/ocean_inversion_project/README

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

revision 1.1 by dimitri, Wed Sep 17 21:45:51 2003 UTC revision 1.16 by dimitri, Tue Oct 28 00:37:28 2003 UTC
# Line 3  Ocean Inversion Project Line 3  Ocean Inversion Project
3    
4  Instructions for using pkg/ptracers to compute tracer  Instructions for using pkg/ptracers to compute tracer
5  Green's functions for Gruber's ocean inversion project  Green's functions for Gruber's ocean inversion project
6  (http://quercus.igpp.ucla.edu/OceanInversion/).  (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    
 To run a pkg/ptracers test case using salt initial and boundary conditions:  
15    
16    ===============================================
17    First check that pkg/ptracers works OK by using
18   cd MITgcm/bin  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/* .   cp ../verification/global_with_exf/code/* .
36   cp ../code/.genmakerc .   cp ../ocean_inversion_project/code/* .
37   cp ../code/* .   rm ptracers_*.F PTRACERS_OPTIONS.h
38   cp ../code/ptracers_forcing.F.test ptracers_forcing.F   ../tools/genmake2
39   cp ../code/ptracers_init.F.test ptracers_init.F     (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
  cp ../code/ptracers_read_mask.F.test ptracers_read_mask.F  
  ../tools/genmake  
40   make depend   make depend
41   make   make
  cd ../exe  
  cp ../verification/global_with_exf/input/* .  
  cp ../input/* .  
  cp ../input/data.ptracers.test data.ptracers  
  mitgcmuv > output .txt  
   
 ===> check that PTRACER output is identical to salinity output  
   
  diff PTRACER30.0000000020.001.001.data PTRACER01.0000000020.001.001.data  
  diff PTRACER30.0000000020.001.001.data S.0000000020.001.001.data  
42    
43  ===> examine interpolation output for 30-region mask  4 ===> execute
44    
45   matlab   cd ../exe
46   mask=zeros(94,44,30);   cp ../verification/global_with_exf/input/eedata .
47   load fort.10   cp ../verification/global_with_exf/input/data.* .
48   for i=1:length(fort)   cp ../verification/global_with_exf/input/POLY3.COEFFS .
49    mask(fort(i,2)+2,fort(i,3)+2,fort(i,1))=fort(i,4);   ln -sf ../verification/global_with_exf/input/*.bin .
50   end   cp ../ocean_inversion_project/input/* .
51   for i=1:30   cp data.test data
52    mypcolor(mask(3:92,3:42,i)');   cp data.ptracers.test data.ptracers
53    colorbar,title(i),pause   mitgcmuv > output.txt
54   end    
55   mypcolor(sum(mask,3)'); colorbar  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  Global ocean experiment with ptracers  ==========================================================
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     mpirun -np 24 dplace -s1 -c3-38 mitgcmuv < /dev/null > & ! errlog &
90    
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     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  ===> set up and integrate 30-tracer computation  ### need customized option file; example below is for nireas
139     ../tools/genmake2 -of linux_ia32_g77_netcdf
140    
  cd MITgcm/bin  
  cp ../verification/global_with_exf/code/* .  
  cp ../code/.genmakerc .  
  cp ../code/* .  
  ../tools/genmake  
141   make depend   make depend
142   make   make
143   cd ../exe   cd ../exe
144   cp ../verification/global_with_exf/input/* .   cp ../verification/global_with_exf/input/eedata .
145   cp ../input/* .   cp ../verification/global_with_exf/input/data.* .
146   mitgcmuv > output .txt   cp ../verification/global_with_exf/input/POLY3.COEFFS .
147     ln -sf ../verification/global_with_exf/input/*.bin .
148  ===> look at output   cp ../ocean_inversion_project/input/* .
149     cp data.1765-2005 data
150   matlab   ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
151   for i=1:30   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
152    tr=readbin(['PTRACER' myint2str(i) ...   ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
153                '.0000000020.001.001.data'],[90 40 15],1);   mitgcmuv > output .txt &
154    mypcolor(tr(:,:,2)'), colorbar, pause(1)  
155    
156    ======================================================
157    
158    % 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    salt=readbin('S.0000000020.001.001.data',[90 40 15],1);
171    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    mypcolor(
179    
180    
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    mask=readbin('hFacC.001.001.data',[90 40 15],1);
186    tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
187    for i=1:30, mydisp(i)
188     fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
189     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
190     for j=1:length(lat)
191      for k=1:length(thk)
192       sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
193                      thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
194      end
195   end   end
196    end
197    plot(1:30,0*sumtracer,1:30,sumtracer)

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.16

  ViewVC Help
Powered by ViewVC 1.1.22