/[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.9 by dimitri, Fri Oct 10 16:30:39 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 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/.genmakerc .
37   cp ../code/* .   cp ../ocean_inversion_project/code/* .
38   cp ../code/ptracers_forcing.F.test ptracers_forcing.F   rm ptracers_*.F
  cp ../code/ptracers_init.F.test ptracers_init.F  
  cp ../code/ptracers_read_mask.F.test ptracers_read_mask.F  
39   ../tools/genmake   ../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  
   
 ===> examine interpolation output for 30-region mask  
42    
43   matlab  4 ===> execute
  mask=zeros(94,44,30);  
  load fort.10  
  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  
   
 =====================================  
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  Global ocean experiment with ptracers   diff PTRACER01.0000000020.001.001.data S.0000000020.001.001.data
58  =====================================   diff PTRACER30.0000000020.001.001.data S.0000000020.001.001.data
59    
 ===> set up and integrate 30-tracer computation  
60    
61   cd MITgcm/bin  ==========================================================
62    Instructions for carrying out a 3000-year quasi-stationary
63    integration using the global_ocean.90x40x15 configuration.
64    ==========================================================
65    
66    1 ===> compile, link, and execute
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/.genmakerc .
74     cp ../ocean_inversion_project/code/* .
75     ../tools/genmake
76     make depend
77     make
78     cd ../exe
79     cp ../verification/global_with_exf/input/eedata .
80     cp ../verification/global_with_exf/input/data.* .
81     cp ../verification/global_with_exf/input/POLY3.COEFFS .
82     ln -sf ../verification/global_with_exf/input/*.bin .
83     cp ../ocean_inversion_project/input/* .
84     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
85     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
86     mitgcmuv > output .txt &
87    
88    
89    ==========================================================
90    MPI instructions for carrying out a 3000-year quasi-stationary
91    integration using the global_ocean.90x40x15 configuration.
92    ==========================================================
93    
94    1 ===> compile, link, and execute
95    
96     cd MITgcm/exe
97     rm *
98     cd ../bin
99     rm *
100   cp ../verification/global_with_exf/code/* .   cp ../verification/global_with_exf/code/* .
101   cp ../code/.genmakerc .   cp ../ocean_inversion_project/code/.genmakerc .
102   cp ../code/* .   cp ../ocean_inversion_project/code/* .
103     cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
104     cp SIZE.h_mpi SIZE.h
105   ../tools/genmake   ../tools/genmake
106   make depend   make depend
107   make   make
108   cd ../exe   cd ../exe
109   cp ../verification/global_with_exf/input/* .   cp ../verification/global_with_exf/input/eedata .
110   cp ../input/* .   cp ../verification/global_with_exf/input/data.* .
111   mitgcmuv > output .txt   cp ../verification/global_with_exf/input/POLY3.COEFFS .
112     ln -sf ../verification/global_with_exf/input/*.bin .
113  ===> look at output   cp ../ocean_inversion_project/input/* .
114     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
115   matlab   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
116   for i=1:30   mpirun -np 36 dplace -s1 -c3-38 mitgcmuv < /dev/null > & ! errlog &
117    tr=readbin(['PTRACER' myint2str(i) ...  
118                '.0000000020.001.001.data'],[90 40 15],1);  
119    mypcolor(tr(:,:,2)'), colorbar, pause(1)  ======================================================
120    
121    % some matlab code for looking at fort.10 debug files
122    load fort.10
123    tak=zeros(90,40,12);
124    for n=1:length(fort)
125     m=fort(n,1); i=fort(n,2); j=fort(n,3);
126     if i>0&i<91&j>0&j<41, tak(i,j,m)=fort(n,4); end
127    end
128    lon=2:4:360; lat=-78:4:78;
129    clf, contourf(lon,lat,mean(tak(:,:,1),3)',-10:10)
130    caxis([-6 6]), colorbar, plotland
131    
132    % some matlab code for looking at PTRACER output files
133    salt=readbin('S.0000000020.001.001.data',[90 40 15],1);
134    tracer=zeros(90,40,15,30);
135    for i=1:30
136     fn=['PTRACER' myint2str(i) '.0000000020.001.001.data'];
137     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
138     clf, mypcolor(tracer(:,:,1,i)'); pause(1)
139    end
140    tmp=sum(tracer,4); clf, mypcolor(tmp(:,:,1)')
141    mypcolor(
142    
143    
144    % some matlab code for checking that one year's worth of
145    % tracer uptake is approximately 1e18 mols.
146    lon=2:4:360; lat=-78:4:78;
147    thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];
148    mask=readbin('hFacC.001.001.data',[90 40 15],1);
149    tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
150    for i=1:30, mydisp(i)
151     fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
152     tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
153     for j=1:length(lat)
154      for k=1:length(thk)
155       sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
156                      thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
157      end
158   end   end
159    end
160    plot(1:30,0*sumtracer,1:30,sumtracer)

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

  ViewVC Help
Powered by ViewVC 1.1.22