/[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.4 by dimitri, Wed Sep 24 04:52:38 2003 UTC revision 1.30 by dimitri, Wed Aug 24 20:59:54 2005 UTC
# Line 12  have been converted to binary format in Line 12  have been converted to binary format in
12  having to link netcdf library with MITgcm code.  See  having to link netcdf library with MITgcm code.  See
13  respective README files in each directory for details.  respective README files in each directory for details.
14    
15    Instructions for CFC-11 computations are in
16    cvs co -r release1_50yr MITgcm
17    MITgcm/verification/global_with_CFC11/README
18    
19    
20    Notes and problems:
21    ===================
22    
23    there is problem generating ECCO_MaskAreaBathy.nc on columbia
24    works OK on nireas
25    
26    variable global_mean_conc in 0D output from mk_output.F is
27    screwed up
28    
29    
30    
31  ===============================================  ===============================================
32  First check that pkg/ptracers works OK by using  First check that pkg/ptracers works OK by using
# Line 20  salinity initial and boundary conditions Line 35  salinity initial and boundary conditions
35    
36  1 ===> get MITgcm code from cvs repository  1 ===> get MITgcm code from cvs repository
37    
38   CVSROOT=:pserver:cvsanon@mitgcm.org:/u/u0/gcmpack   cvs co -r checkpoint51n_branch MITgcm_code
39   cvs login ( CVS password: cvsanon )   cvs co -r checkpoint51n_branch MITgcm/verification/testreport
40   cvs co MITgcm   cvs co -r checkpoint51n_branch MITgcm/verification/global_with_exf
41    
42  2 ===> put MITgcm_contrib/ocean_inversion_project in MITgcm directory  2 ===> put MITgcm_contrib/ocean_inversion_project in MITgcm directory
43    
# Line 31  salinity initial and boundary conditions Line 46  salinity initial and boundary conditions
46    
47  3 ===> compile and link  3 ===> compile and link
48    
49     mkdir bin exe
50   cd bin   cd bin
51     \cp ../verification/global_with_exf/code/* .
52     \cp ../ocean_inversion_project/code/* .
53     \rm ptracers_*.F PTRACERS_OPTIONS.h
54     ../tools/genmake2
55       (on orion:    ../tools/genmake2 -of linux_ia64_efc+mpi       )
56       (on columbia: ../tools/genmake2 -of linux_ia64_efc+mpi_altix )
57     make depend
58     make -j 16
59    
60    4 ===> execute
61    
62     cd ../exe
63     \cp ../verification/global_with_exf/input/eedata .
64     \cp ../verification/global_with_exf/input/data.* .
65     \cp ../verification/global_with_exf/input/POLY3.COEFFS .
66     \ln -sf ../verification/global_with_exf/input/*.bin .
67     \cp ../ocean_inversion_project/input/* .
68     \cp data.test data
69     \cp data.ptracers.test data.ptracers
70     ./mitgcmuv >! output.txt
71    
72    5 ===> check that PTRACER output and salinity output are identical.
73    
74     diff PTRACER01.0000000020.001.001.data S.0000000020.001.001.data
75     diff PTRACER30.0000000020.001.001.data S.0000000020.001.001.data
76     diff PTRtave30.0000000020.001.001.data Stave.0000000020.001.001.data
77     diff PTRtave30.0000000020.001.001.data Stave.0000000020.001.001.data
78    
79    
80    ==========================================================
81    MPI instructions for carrying out a 3000-year quasi-stationary
82    integration using the global_ocean.90x40x15 configuration.
83    ==========================================================
84    
85     cd MITgcm/exe
86     rm *
87     cd ../bin
88     rm *
89   cp ../verification/global_with_exf/code/* .   cp ../verification/global_with_exf/code/* .
  cp ../ocean_inversion_project/code/.genmakerc .  
90   cp ../ocean_inversion_project/code/* .   cp ../ocean_inversion_project/code/* .
91   rm ptracers_init.F ptracers_forcing_surf.F PTRACERS.h   rm PTRACERS_OPTIONS.h
92   rm ptracers_read_mask.F ptracers_read_takahashi.F   cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
93   ../tools/genmake   cp SIZE.h_mpi SIZE.h
94     ../tools/genmake2
95       (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
96   make depend   make depend
97   make   make
98     cd ../exe
99     cp ../verification/global_with_exf/input/eedata .
100     cp ../verification/global_with_exf/input/data.* .
101     cp ../verification/global_with_exf/input/POLY3.COEFFS .
102     ln -sf ../verification/global_with_exf/input/*.bin .
103     cp ../ocean_inversion_project/input/* .
104     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
105     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
106     cp data.stationary.1 data
107     mpirun -np 24 dplace -s1 mitgcmuv < /dev/null > & ! errlog &
108       (on orion: qsub job.orion)
109    
 4 ===> execute  
110    
111    ==========================================================
112    MPI instructions for carrying out time-dependent, 1765-2005,
113    anthropogenic carbon perturbation tracer experiments using
114    the global_ocean.90x40x15 configuration.
115    ==========================================================
116    
117     cd MITgcm/exe
118     rm *
119     cd ../bin
120     rm *
121     cp ../verification/global_with_exf/code/* .
122     cp ../ocean_inversion_project/code/* .
123     cp CPP_EEOPTIONS.h_mpi CPP_EEOPTIONS.h
124     cp SIZE.h_mpi SIZE.h
125     ../tools/genmake2
126       (on orion: ../tools/genmake2 -of linux_ia64_efc+mpi)
127     make depend
128     make
129   cd ../exe   cd ../exe
130   cp ../verification/global_with_exf/input/eedata .   cp ../verification/global_with_exf/input/eedata .
131   cp ../verification/global_with_exf/input/data.* .   cp ../verification/global_with_exf/input/data.* .
132   cp ../verification/global_with_exf/input/POLY3.COEFFS .   cp ../verification/global_with_exf/input/POLY3.COEFFS .
133   ln -sf ../verification/global_with_exf/input/*.bin .   ln -sf ../verification/global_with_exf/input/*.bin .
134   cp ../ocean_inversion_project/input/* .   cp ../ocean_inversion_project/input/* .
135   cp data.test data   cp data.1765-2005 data
136   cp data.ptracers.test data.ptracers   ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
137   mitgcmuv > output.txt   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
138       ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
139  5 ===> check that PTRACER output and salinity output   mpirun -np 24 dplace -s1 mitgcmuv < /dev/null > & ! errlog &
140    ===> are identical.     (on orion: qsub job.orion.td)
   
  diff PTRACER01.0000000020.001.001.data S.0000000020.001.001.data  
  diff PTRACER30.0000000020.001.001.data S.0000000020.001.001.data  
141    
142    
143  ==========================================================  ==========================================================
144  Instructions for carrying out a 3000-year quasi-stationary  Instructions for carrying out time-dependent, 1765-2005,
145  integration using the global_ocean.90x40x15 configuration.  anthropogenic carbon perturbation tracer experiments using
146    global_ocean.90x40x15 configuration and netcdf output.
147    This assumes that the appropriate libnetcdf.a exists
148    and that it be specified in the genmake2 option file.
149  ==========================================================  ==========================================================
150    
 1 ===> compile, link, and execute  
   
151   cd MITgcm/exe   cd MITgcm/exe
152   rm *   rm *
153   cd ../bin   cd ../bin
154   rm *   rm *
155   cp ../verification/global_with_exf/code/* .   cp ../verification/global_with_exf/code/* .
  cp ../ocean_inversion_project/code/.genmakerc .  
156   cp ../ocean_inversion_project/code/* .   cp ../ocean_inversion_project/code/* .
157   ../tools/genmake   cp PTRACERS_OPTIONS.h.netcdf PTRACERS_OPTIONS.h
158     cp ../ocean_inversion_project/write_netCDF/*  .
159     \rm mk_output.F
160    
161    ### need customized option file; example below is for nireas
162     ../tools/genmake2 -of linux_ia32_g77_netcdf
163    
164   make depend   make depend
165   make   make
166   cd ../exe   cd ../exe
# Line 83  integration using the global_ocean.90x40 Line 169  integration using the global_ocean.90x40
169   cp ../verification/global_with_exf/input/POLY3.COEFFS .   cp ../verification/global_with_exf/input/POLY3.COEFFS .
170   ln -sf ../verification/global_with_exf/input/*.bin .   ln -sf ../verification/global_with_exf/input/*.bin .
171   cp ../ocean_inversion_project/input/* .   cp ../ocean_inversion_project/input/* .
172     cp data.1765-2005.1 data
173   ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .   ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
174   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .   ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
175     ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
176   mitgcmuv > output .txt &   mitgcmuv > output .txt &
177    
178    
179    ==========================================================
180    Instructions for carrying out time-dependent, 1765-2005,
181    anthropogenic carbon perturbation tracer experiments using
182    the ecco1x1 configuration and netcdf output on columbia.
183    This assumes that the appropriate libnetcdf.a exists
184    and that it be specified in the genmake2 option file.
185    It also assumes that surface forcing files are available
186    in MITgcm/../iter69
187    ==========================================================
188    
189     cd MITgcm/exe
190     \rm *
191     cd ../bin
192     \rm *
193     \cp ../ocean_inversion_project/code_ecco1x1/* .
194     \cp ../ocean_inversion_project/write_netCDF/*  .
195     \rm mk_output.F
196     \cp SIZE.h.96 SIZE.h
197     ../tools/genmake2 -of linux_ia64_efc+mpi_altix
198     make depend
199     make -j 16
200     cd ../exe
201     \cp ../ocean_inversion_project/input_ecco1x1/* .
202     ln -sf ../../iter69/* .
203     ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
204     ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
205     ln -sf ../ocean_inversion_project/atm_co2/splco2_cis92a.dat .
206     qsub job01
207    
208    
209    ==========================================================
210    Instructions for carrying out 3000-year quasi-stationary
211    integration using the ecco1x1 configuration and netcdf
212    output on columbia.
213    This assumes that the appropriate libnetcdf.a exists
214    and that it be specified in the genmake2 option file.
215    It also assumes that surface forcing files are available
216    in MITgcm/../iter69
217    ==========================================================
218    
219     cd MITgcm/exe
220     \rm *
221     cd ../bin
222     \rm *
223     \cp ../ocean_inversion_project/code_ecco1x1/* .
224     \cp ../ocean_inversion_project/write_netCDF/*  .
225     \rm mk_output.F
226     \cp SIZE.h.96 SIZE.h
227     \cp PTRACERS_OPTIONS.h.stationary PTRACERS_OPTIONS.h
228     ../tools/genmake2 -of linux_ia64_efc+mpi_altix
229     make depend
230     make -j 16
231     cd ../exe
232     \cp ../ocean_inversion_project/input_ecco1x1/* .
233     \ln -sf ../../iter69/* .
234     \ln -sf ../ocean_inversion_project/region_mask/30reg_regionmask.bin .
235     \ln -sf ../ocean_inversion_project/takahashi/taka02_montlhy.bin .
236     qsub job01s
237    
238    
239    ==========================================================
240    Instructions for generating netcdf output files on columbia
241    ==========================================================
242    
243    cd ocean_inversion_project/write_netCDF
244    setenv F_UFMTENDIAN big
245    
246    (check that defaults in  mk_output.F are appropriate)
247    
248    ifort -assume byterecl -W0 -WB mk_output.F write_nc_phys.F nc_util.F \
249         handle_errors.F write_nc_basisfnctns.F \
250         write_nc_diag_0D.F write_nc_diag_2D.F \
251         -I/u/menemenl/software/netcdf-3.5.0/include \
252         -L/u/menemenl/software/netcdf-3.5.0/lib -lnetcdf
253    ./a.out
254    
255    
256    ==========================================================
257    Instructions for generating netcdf output files on orion
258    ==========================================================
259    
260    cd ocean_inversion_project/write_netCDF
261    setenv F_UFMTENDIAN big
262    
263    (check that defaults in  mk_output.F are appropriate)
264    
265    efc -W0 -WB mk_output.F write_nc_phys.F nc_util.F \
266         handle_errors.F write_nc_basisfnctns.F \
267         write_nc_diag_0D.F write_nc_diag_2D.F \
268         -I/u2/dmenem/software/netcdf-3.5.0/include \
269         -L/u2/dmenem/software/netcdf-3.5.0/lib -lnetcdf
270    ./a.out
271    
272    
273  ======================================================  ======================================================
274    
275  % some matlab code for looking at fort.10 debug files  % some matlab code for looking at fort.10 debug files
# Line 117  mypcolor( Line 299  mypcolor(
299  % tracer uptake is approximately 1e18 mols.  % tracer uptake is approximately 1e18 mols.
300  lon=2:4:360; lat=-78:4:78;  lon=2:4:360; lat=-78:4:78;
301  thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];  thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];
302  tracer=zeros(90,40,15,30); sumtracer1=zeros(30,1);  mask=readbin('hFacC.001.001.data',[90 40 15],1);
303    tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);
304  for i=1:30, mydisp(i)  for i=1:30, mydisp(i)
305   fn=['PTRACER' myint2str(i) '.0000000180.001.001.data'];   fn=['PTRACER' myint2str(i) '.0000001800.001.001.data'];
306   tracer(:,:,:,i)=readbin(fn,[90 40 15],1);   tracer(:,:,:,i)=readbin(fn,[90 40 15],1);
307   for x=1:length(lon)   for j=1:length(lat)
308    for y=1:length(lat)    for k=1:length(thk)
309     for z=1:length(thk)     sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i).*mask(:,j,k)) * ...
310      sumtracer1(i) = sumtracer1(i) + tracer(x,y,z,i) * ...                    thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
                     thk(z) * (4*1.113195e+05)^2 * cos(pi*lat(y)/180);  
    end  
311    end    end
312   end   end
313  end  end
314    plot(1:30,0*sumtracer,1:30,sumtracer)
315    
316  % some matlab code for checking that one year's worth of  
317  % tracer uptake is approximately 1e18 mols.  % check that tracer flux is 1e18 mols / year
318    nb_seconds_per_year=31556880;
319  lon=2:4:360; lat=-78:4:78;  lon=2:4:360; lat=-78:4:78;
320  thk=[50 70 100 140 190 240 290 340 390 440 490 540 590 640 690];  mask=readbin('hFacC.data',[90 40 15],1);
321  tracer=zeros(90,40,15,30); sumtracer=zeros(30,1);  tracer=zeros(90,40,30); sumtracer=zeros(30,1);
322  for i=1:30, mydisp(i)  for i=1:30, mydisp(i)
323   fn=['PTRACER' myint2str(i) '.0000003600.001.001.data'];   fn=['PtrFlux' myint2str(i) '.0000000180.data'];
324   tracer(:,:,:,i)=readbin(fn,[90 40 15],1);   tracer(:,:,i)=readbin(fn,[90 40],1);
325   for j=1:length(lat)   for j=1:length(lat)
326    for k=1:length(thk)      sumtracer(i) = sumtracer(i) + sum(tracer(:,j,i).*mask(:,j,1)) * ...
327     sumtracer(i) = sumtracer(i) + sum(tracer(:,j,k,i)) * ...          nb_seconds_per_year* (4*1.113195e+05)^2 * cos(pi*lat(j)/180);
                   thk(k) * (4*1.113195e+05)^2 * cos(pi*lat(j)/180);  
328    end    end
  end  
329  end  end
330  plot(1:30,0*sumtracer,1:30,sumtracer)  plot(1:30,0*sumtracer,1:30,sumtracer-mmean(sumtracer))

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.30

  ViewVC Help
Powered by ViewVC 1.1.22