| 1 |
afe |
1.3 |
last changed June 8, 2004 |
| 2 |
afe |
1.1 |
|
| 3 |
afe |
1.3 |
OBSERVATION SYSTEM SIMULATION EXPERIMENT |
| 4 |
afe |
1.2 |
|
| 5 |
afe |
1.3 |
OSSE is an MITgcm configuration to simulate data assimilation with a |
| 6 |
|
|
deterministic ensemble Kalman filter and a model of a rotating tank of |
| 7 |
|
|
water with an ice bucket at the center. |
| 8 |
afe |
1.1 |
|
| 9 |
afe |
1.3 |
INSTALLATION |
| 10 |
afe |
1.1 |
|
| 11 |
afe |
1.3 |
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 |
afe |
1.6 |
EnKF: empty |
| 36 |
|
|
|
| 37 |
|
|
build: handy place to compile MITgcm |
| 38 |
|
|
|
| 39 |
afe |
1.3 |
code: modifications to MITgcm to run in cyclindrical coordinates. At |
| 40 |
|
|
the time of this writing, it requires checkpoint48 to compile and run. |
| 41 |
|
|
|
| 42 |
afe |
1.6 |
codemod: modification to MITgcm to run with checkpoint 54. Not quite |
| 43 |
|
|
ready for prime time. |
| 44 |
|
|
|
| 45 |
|
|
da: location for ensemble members and initialization and input files |
| 46 |
|
|
|
| 47 |
|
|
input: initialization and input files for running MITgcm |
| 48 |
afe |
1.4 |
|
| 49 |
afe |
1.3 |
filter: source and data files to run the data assimilation and Kalman |
| 50 |
|
|
filter. |
| 51 |
afe |
1.4 |
|
| 52 |
afe |
1.6 |
run: empty |
| 53 |
|
|
|
| 54 |
afe |
1.4 |
utils: assorted Matlab m-files |
| 55 |
|
|
|
| 56 |
|
|
|
| 57 |
afe |
1.6 |
COMPILING AND TESTING THE MODEL |
| 58 |
afe |
1.4 |
|
| 59 |
|
|
The following series of commands creates the MITgcm executable. |
| 60 |
|
|
|
| 61 |
|
|
From the MITgcm root: |
| 62 |
|
|
|
| 63 |
afe |
1.5 |
cd verification/osse/build |
| 64 |
afe |
1.4 |
../../../tools/genmake -mods=../code # creates makefile |
| 65 |
|
|
make depend # contructs Fortran code from model codebase |
| 66 |
|
|
make # makes executable mitgcmuv |
| 67 |
|
|
|
| 68 |
|
|
Try a test run, while redirecting the standard output to a file. The |
| 69 |
|
|
input directory contains files that should be present in the working |
| 70 |
afe |
1.6 |
directory when you run mitgcmuv. Assuming that you compiled the |
| 71 |
|
|
MITgcm executable in the build/ directory, you would run |
| 72 |
|
|
``../build/mitgcmuv >& output.txt'' It is recommended that you copy the |
| 73 |
|
|
contents of the directory input/ to a different directory for running |
| 74 |
|
|
-- mitgcmuv does not change them, but they can be lost in the multitudes |
| 75 |
|
|
of output files. |
| 76 |
afe |
1.4 |
|
| 77 |
|
|
The data assimilation code is made by typing ``make'' in the filter |
| 78 |
afe |
1.6 |
directory, which creates an executable named ``osse''. |
| 79 |
afe |
1.5 |
|
| 80 |
|
|
Before running osse, the initial ensemble needs to be set up by |
| 81 |
|
|
running the mkens script in verification/osse/da. mkens creates the |
| 82 |
|
|
directories, symbolically links files necessary to run the model, and |
| 83 |
|
|
copies in the initial ensemble files. osse should be run from the |
| 84 |
|
|
directory verification/osse/da/inits since it expects the ensemble |
| 85 |
|
|
members to be one directory above. It also expects to have in its |
| 86 |
|
|
working directory the file iobsloc-003.txt, which contains the |
| 87 |
|
|
locations of the observations. This file is located in |
| 88 |
|
|
verification/osse/da/inits. |