| 1 | 
 May 19, 2004 | 
 last changed June 8, 2004 | 
| 2 | 
  | 
  | 
| 3 | 
 OSSE is a configuration to simulate running an deterministic  | 
 OBSERVATION SYSTEM SIMULATION EXPERIMENT | 
 | 
 ensemble Kalman filter on a rotating tank with an ice bucket  | 
  | 
 | 
 at the center.   | 
  | 
| 4 | 
  | 
  | 
| 5 | 
 code/ contains the modifications to MITgcm to run in cyclindrical | 
 OSSE is an MITgcm configuration to simulate data assimilation with a | 
| 6 | 
 coordinates.  At the time of this writing, it requires  | 
 deterministic ensemble Kalman filter and a model of a rotating tank of | 
| 7 | 
 checkpoint48 to compile and run. | 
 water with an ice bucket at the center. | 
| 8 | 
  | 
  | 
| 9 | 
  | 
 INSTALLATION  | 
| 10 | 
  | 
  | 
| 11 | 
  | 
 At the time of this writing, the OSSE requires MITgcm checkpoint48 to | 
| 12 | 
  | 
 compile and run.  MITgcm can be obtained from | 
| 13 | 
  | 
 <http://mitgcm.org/source_code.html>.  If downloading from the CVS | 
| 14 | 
  | 
 server, use the command | 
| 15 | 
  | 
  | 
| 16 | 
  | 
 cvs co -r 'checkpoint48' MITgcm | 
| 17 | 
  | 
  | 
| 18 | 
  | 
 in order to specify the correct version.  Read the instructions on the | 
| 19 | 
  | 
 the webpage before trying to use the CVS server. | 
| 20 | 
  | 
  | 
| 21 | 
  | 
 The OSSE directory tree can be obtained from the MITgcm CVS repository | 
| 22 | 
  | 
 with the command | 
| 23 | 
  | 
  | 
| 24 | 
  | 
 cvs co MITgcm_contrib/osse | 
| 25 | 
  | 
  | 
| 26 | 
  | 
 The code and its revision history can be browsed at  | 
| 27 | 
  | 
  | 
| 28 | 
  | 
 <http://dev.mitgcm.org/cgi-bin/viewcvs.cgi/MITgcm_contrib/osse/> | 
| 29 | 
  | 
  | 
| 30 | 
  | 
 A good place to put the osse directory tree is in MITgcm/verification, | 
| 31 | 
  | 
 where examples and test examples of MITgcm configurations are kept. | 
| 32 | 
  | 
  | 
| 33 | 
  | 
 CONTENTS | 
| 34 | 
  | 
  | 
| 35 | 
  | 
 code: modifications to MITgcm to run in cyclindrical coordinates.  At | 
| 36 | 
  | 
 the time of this writing, it requires checkpoint48 to compile and run. | 
| 37 | 
  | 
  | 
| 38 | 
  | 
 input: initialization and input files for MITgcm | 
| 39 | 
  | 
  | 
| 40 | 
  | 
 filter: source and data files to run the data assimilation and Kalman | 
| 41 | 
  | 
 filter. | 
| 42 | 
  | 
  | 
| 43 | 
  | 
 utils: assorted Matlab m-files  | 
| 44 | 
  | 
  | 
| 45 | 
  | 
 EnKF: empty | 
| 46 | 
  | 
  | 
| 47 | 
  | 
 run: empty | 
| 48 | 
  | 
  | 
| 49 | 
  | 
  | 
| 50 | 
  | 
 COMPILING AND RUNNING THE MODEL | 
| 51 | 
  | 
  | 
| 52 | 
  | 
 The following series of commands creates the MITgcm executable.   | 
| 53 | 
  | 
  | 
| 54 | 
  | 
 From the MITgcm root: | 
| 55 | 
  | 
  | 
| 56 | 
  | 
 cd verification/osse | 
| 57 | 
  | 
 mkdir build   # directory name is arbitrary   | 
| 58 | 
  | 
 cd build | 
| 59 | 
  | 
 ../../../tools/genmake -mods=../code  # creates makefile | 
| 60 | 
  | 
 make depend       # contructs Fortran code from model codebase | 
| 61 | 
  | 
 make              # makes executable mitgcmuv | 
| 62 | 
  | 
  | 
| 63 | 
  | 
 Try a test run, while redirecting the standard output to a file.  The | 
| 64 | 
  | 
 input directory contains files that should be present in the working | 
| 65 | 
  | 
 directory when you run mitgcmuv.  It is recommended that you copy the | 
| 66 | 
  | 
 input contents to a different directory for running -- mitgcmuv does | 
| 67 | 
  | 
 not change them, but they can be lost in the multitudes of output | 
| 68 | 
  | 
 files. | 
| 69 | 
  | 
  | 
| 70 | 
  | 
 The data assimilation code is made by typing ``make'' in the filter | 
| 71 | 
  | 
 directory. | 
| 72 | 
  | 
  | 
 | 
 EnKF/ contains the source and data files to run the Kalman filter. | 
  | 
| 73 | 
  | 
  |