/[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.2 by dimitri, Thu Sep 18 02:33:38 2003 UTC revision 1.18 by dimitri, Fri Nov 28 18:16:32 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    
15    
16  ===============================================  ===============================================
# Line 15  salinity initial and boundary conditions Line 22  salinity initial and boundary conditions
22    
23   CVSROOT=:pserver:cvsanon@mitgcm.org:/u/u0/gcmpack   CVSROOT=:pserver:cvsanon@mitgcm.org:/u/u0/gcmpack
24   cvs login ( CVS password: cvsanon )   cvs login ( CVS password: cvsanon )
25   cvs co MITgcm   cvs co -r checkpoint51n_branch MITgcm
26    
27  2 ===> put MITgcm_contrib/ocean_inversion_project in MITgcm directory  2 ===> put MITgcm_contrib/ocean_inversion_project in MITgcm directory
28    
29   cd MITgcm   cd MITgcm
30   cvs co -d ocean_inversion_project MITgcm_contrib/ocean_inversion_project   cvs co -d ocean_inversion_project MITgcm_contrib/ocean_inversion_project
31    
32  3 ===> compile  3 ===> compile and link
33    
34   cd bin   cd bin
35   cp ../verification/global_with_exf/code/* .   cp ../verification/global_with_exf/code/* .
  cp ../ocean_inversion_project/code/.genmakerc .  
36   cp ../ocean_inversion_project/code/* .   cp ../ocean_inversion_project/code/* .
37   cp ../ocean_inversion_project/code/ptracers_forcing.F.test ptracers_forcing.F   rm ptracers_*.F PTRACERS_OPTIONS.h
38   cp ../ocean_inversion_project/code/ptracers_init.F.test ptracers_init.F   ../tools/genmake2
39   cp ../ocean_inversion_project/code/ptracers_read_mask.F.test ptracers_read_mask.F     (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
  ../tools/genmake  
40   make depend   make depend
41   make   make
42    
43  4 ===> execute  4 ===> execute
44    
45   cd ../exe   cd ../exe
46   cp ../verification/global_with_exf/input/* .   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/* .   cp ../ocean_inversion_project/input/* .
51   cp ../ocean_inversion_project/input/data.ptracers.test data.ptracers   cp data.test data
52   mitgcmuv > output .txt   cp data.ptracers.test data.ptracers
53     mitgcmuv > output.txt
54        
55  5 ===> check that PTRACER output for tracer 1 and tracer 30  5 ===> check that PTRACER output and salinity output are identical.
   ===> is identical to salinity output  
56    
57   diff PTRACER01.0000000020.001.001.data S.0000000020.001.001.data   diff PTRACER01.0000000020.001.001.data S.0000000020.001.001.data
58   diff PTRACER30.0000000020.001.001.data S.0000000020.001.001.data   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  Second generate binary input files.  netcdf files are not OK  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   cd MITgcm/bin   rm *
72   cp ../verification/global_with_exf/code/* .   cp ../verification/global_with_exf/code/* .
73   cp ../code/.genmakerc .   cp ../ocean_inversion_project/code/* .
74   cp ../code/* .   rm PTRACERS_OPTIONS.h
75   cp ../code/ptracers_forcing.F.test ptracers_forcing.F   cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
76   cp ../code/ptracers_init.F.test ptracers_init.F   cp SIZE.h_mpi SIZE.h
77   cp ../code/ptracers_read_mask.F.test ptracers_read_mask.F   ../tools/genmake2
78   ../tools/genmake     (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
79   make depend   make depend
80   make   make
81   cd ../exe   cd ../exe
82   cp ../verification/global_with_exf/input/* .   cp ../verification/global_with_exf/input/eedata .
83   cp ../input/* .   cp ../verification/global_with_exf/input/data.* .
84   cp ../input/data.ptracers.test data.ptracers   cp ../verification/global_with_exf/input/POLY3.COEFFS .
85   mitgcmuv > output .txt   ln -sf ../verification/global_with_exf/input/*.bin .
86     cp ../ocean_inversion_project/input/* .
87  ===> examine interpolation output for 30-region mask   ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
88     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
89   matlab   cp data.stationary.1 data
90   mask=zeros(94,44,30);   mpirun -np 24 dplace -s1 mitgcmuv < /dev/null > & ! errlog &
91   load fort.10  
92   for i=1:length(fort)  
93    mask(fort(i,2)+2,fort(i,3)+2,fort(i,1))=fort(i,4);  ==========================================================
94   end  Instructions for carrying out time-dependent, 1765-2005,
95   for i=1:30  anthropogenic carbon perturbation tracer experiments using
96    mypcolor(mask(3:92,3:42,i)');  the global_ocean.90x40x15 configuration.
97    colorbar,title(i),pause  ==========================================================
98   end  
99   mypcolor(sum(mask,3)'); colorbar   cd MITgcm/exe
100     rm *
101  =====================================   cd ../bin
102     rm *
103     cp ../verification/global_with_exf/code/* .
104  Global ocean experiment with ptracers   cp ../ocean_inversion_project/code/* .
105  =====================================   ../tools/genmake2
106       (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
107     make depend
108     make
109     cd ../exe
110     cp ../verification/global_with_exf/input/eedata .
111     cp ../verification/global_with_exf/input/data.* .
112     cp ../verification/global_with_exf/input/POLY3.COEFFS .
113     ln -sf ../verification/global_with_exf/input/*.bin .
114     cp ../ocean_inversion_project/input/* .
115     cp data.1765-2005 data
116     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
117     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
118     ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
119     mitgcmuv > output .txt &
120    
121    
122    ==========================================================
123    Instructions for carrying out time-dependent, 1765-2005,
124    anthropogenic carbon perturbation tracer experiments using
125    global_ocean.90x40x15 configuration and netcdf output.
126    This assumes that the appropriate libnetcdf.a exists
127    and that it be specified in the genmake2 option file.
128    ==========================================================
129    
130     cd MITgcm/exe
131     rm *
132     cd ../bin
133     rm *
134     cp ../verification/global_with_exf/code/* .
135     cp ../ocean_inversion_project/code/* .
136     cp PTRACERS_OPTIONS.h.netcdf PTRACERS_OPTIONS.h
137     cp ../ocean_inversion_project/write_netCDF/*  .
138    
139  ===> set up and integrate 30-tracer computation  ### need customized option file; example below is for nireas
140     ../tools/genmake2 -of linux_ia32_g77_netcdf
141    
  cd MITgcm/bin  
  cp ../verification/global_with_exf/code/* .  
  cp ../code/.genmakerc .  
  cp ../code/* .  
  ../tools/genmake  
142   make depend   make depend
143   make   make
144   cd ../exe   cd ../exe
145   cp ../verification/global_with_exf/input/* .   cp ../verification/global_with_exf/input/eedata .
146   cp ../input/* .   cp ../verification/global_with_exf/input/data.* .
147   mitgcmuv > output .txt   cp ../verification/global_with_exf/input/POLY3.COEFFS .
148     ln -sf ../verification/global_with_exf/input/*.bin .
149  ===> look at output   cp ../ocean_inversion_project/input/* .
150     cp data.1765-2005.1 data
151   matlab   ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
152   for i=1:30   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
153    tr=readbin(['PTRACER' myint2str(i) ...   ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
154                '.0000000020.001.001.data'],[90 40 15],1);   mitgcmuv > output .txt &
155    mypcolor(tr(:,:,2)'), colorbar, pause(1)  
  end  
156    
157    ======================================================
158    
159    % some matlab code for looking at fort.10 debug files
160    load fort.10
161    tak=zeros(90,40,12);
162    for n=1:length(fort)
163     m=fort(n,1); i=fort(n,2); j=fort(n,3);
164     if i>0&i<91&j>0&j<41, tak(i,j,m)=fort(n,4); end
165    end
166    lon=2:4:360; lat=-78:4:78;
167    clf, contourf(lon,lat,mean(tak(:,:,1),3)',-10:10)
168    caxis([-6 6]), colorbar, plotland
169    
170    % some matlab code for looking at PTRACER output files
171    salt=readbin('S.0000000020.001.001.data',[90 40 15],1);
172    tracer=zeros(90,40,15,30);
173    for i=1:30
174     fn=['PTRACER' myint2str(i) '.0000000020.001.001.data'];
175     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
176     clf, mypcolor(tracer(:,:,1,i)'); pause(1)
177    end
178    tmp=sum(tracer,4); clf, mypcolor(tmp(:,:,1)')
179    mypcolor(
180    
181    
182    % some matlab code for checking that one year's worth of
183    % tracer uptake is approximately 1e18 mols.
184    lon=2:4:360; lat=-78:4:78;
185    thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];
186    mask=readbin('hFacC.001.001.data',[90 40 15],1);
187    tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
188    for i=1:30, mydisp(i)
189     fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
190     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
191     for j=1:length(lat)
192      for k=1:length(thk)
193       sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
194                      thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
195      end
196     end
197    end
198    plot(1:30,0*sumtracer,1:30,sumtracer)

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.18

  ViewVC Help
Powered by ViewVC 1.1.22