/[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.20 by dimitri, Thu Dec 18 06:11:14 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     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     \rm mk_output.F
142    
143  ======================================================  ### need customized option file; example below is for nireas
144  ======================================================   ../tools/genmake2 -of linux_ia32_g77_netcdf
 ======================================================  
 ======================================================  
145    
  cd MITgcm/bin  
  cp ../verification/global_with_exf/code/* .  
  cp ../code/.genmakerc .  
  cp ../code/* .  
  cp ../code/ptracers_forcing.F.test ptracers_forcing.F  
  cp ../code/ptracers_init.F.test ptracers_init.F  
  cp ../code/ptracers_read_mask.F.test ptracers_read_mask.F  
  ../tools/genmake  
146   make depend   make depend
147   make   make
148   cd ../exe   cd ../exe
149   cp ../verification/global_with_exf/input/* .   cp ../verification/global_with_exf/input/eedata .
150   cp ../input/* .   cp ../verification/global_with_exf/input/data.* .
151   cp ../input/data.ptracers.test data.ptracers   cp ../verification/global_with_exf/input/POLY3.COEFFS .
152   mitgcmuv > output .txt   ln -sf ../verification/global_with_exf/input/*.bin .
153     cp ../ocean_inversion_project/input/* .
154  ===> examine interpolation output for 30-region mask   cp data.1765-2005.1 data
155     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
156   matlab   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
157   mask=zeros(94,44,30);   ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
158   load fort.10   mitgcmuv > output .txt &
  for i=1:length(fort)  
   mask(fort(i,2)+2,fort(i,3)+2,fort(i,1))=fort(i,4);  
  end  
  for i=1:30  
   mypcolor(mask(3:92,3:42,i)');  
   colorbar,title(i),pause  
  end  
  mypcolor(sum(mask,3)'); colorbar  
159    
 =====================================  
160    
161    ======================================================
162    
163  Global ocean experiment with ptracers  ==========================================================
164  =====================================  Instructions for generating netcdf output files on orion
165    ==========================================================
166    
167    cd ocean_inversion_project/write_netCDF
168    setenv F_UFMTENDIAN big
169    
170    (check that defaults in  mk_output.F are appropriate)
171    
172    efc -W0 -WB mk_output.F write_nc_phys.F nc_util.F \
173         handle_errors.F write_nc_basisfnctns.F \
174         write_nc_diag_0D.F write_nc_diag_2D.F \
175         -I/u2/dmenem/software/netcdf-3.5.0/include \
176         -L/u2/dmenem/software/netcdf-3.5.0/lib -lnetcdf
177    a.out
178    
 ===> set up and integrate 30-tracer computation  
179    
180   cd MITgcm/bin  ======================================================
  cp ../verification/global_with_exf/code/* .  
  cp ../code/.genmakerc .  
  cp ../code/* .  
  ../tools/genmake  
  make depend  
  make  
  cd ../exe  
  cp ../verification/global_with_exf/input/* .  
  cp ../input/* .  
  mitgcmuv > output .txt  
   
 ===> look at output  
   
  matlab  
  for i=1:30  
   tr=readbin(['PTRACER' myint2str(i) ...  
               '.0000000020.001.001.data'],[90 40 15],1);  
   mypcolor(tr(:,:,2)'), colorbar, pause(1)  
  end  
181    
182    % some matlab code for looking at fort.10 debug files
183    load fort.10
184    tak=zeros(90,40,12);
185    for n=1:length(fort)
186     m=fort(n,1); i=fort(n,2); j=fort(n,3);
187     if i>0&i<91&j>0&j<41, tak(i,j,m)=fort(n,4); end
188    end
189    lon=2:4:360; lat=-78:4:78;
190    clf, contourf(lon,lat,mean(tak(:,:,1),3)',-10:10)
191    caxis([-6 6]), colorbar, plotland
192    
193    % some matlab code for looking at PTRACER output files
194    salt=readbin('S.0000000020.001.001.data',[90 40 15],1);
195    tracer=zeros(90,40,15,30);
196    for i=1:30
197     fn=['PTRACER' myint2str(i) '.0000000020.001.001.data'];
198     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
199     clf, mypcolor(tracer(:,:,1,i)'); pause(1)
200    end
201    tmp=sum(tracer,4); clf, mypcolor(tmp(:,:,1)')
202    mypcolor(
203    
204    
205    % some matlab code for checking that one year's worth of
206    % tracer uptake is approximately 1e18 mols.
207    lon=2:4:360; lat=-78:4:78;
208    thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];
209    mask=readbin('hFacC.001.001.data',[90 40 15],1);
210    tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
211    for i=1:30, mydisp(i)
212     fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
213     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
214     for j=1:length(lat)
215      for k=1:length(thk)
216       sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
217                      thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
218      end
219     end
220    end
221    plot(1:30,0*sumtracer,1:30,sumtracer)

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

  ViewVC Help
Powered by ViewVC 1.1.22