/[MITgcm]/MITgcm/verification/lab_sea/README
ViewVC logotype

Contents of /MITgcm/verification/lab_sea/README

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1.2.1 - (show annotations) (download)
Mon Nov 11 22:03:47 2002 UTC (21 years, 5 months ago) by heimbach
Branch: release1
CVS Tags: release1_p8
Changes since 1.1: +221 -0 lines
Adding new verification experiment: lab_sea
to test new package pkg/seaice

1 Example: Labrador Sea Region with Sea-Ice
2 =========================================
3
4 This example sets up a small (20x16x23) Labrador Sea experiment
5 coupled to a dynamic thermodynamic sea-ice model.
6 A brief description of the sea-ice model is in "doc/seaice.ps".
7
8 The domain of integration spans 280E to 320E and 46N to 78N.
9 Horizontal grid spacing is 2 degrees.
10 The 23 vertical levels and the bathymetry file
11 bathyFile = 'bathy.labsea'
12 are obtained from the the 2-degree ECCO configuration.
13
14 Integration is initialized from annual-mean Levitus climatology
15 hydrogThetaFile = 'LevCli_temp.labsea'
16 hydrogSaltFile = 'LevCli_salt.labsea'
17
18 Surface salinity relaxation is to the monthly mean Levitus climatology
19 saltClimFile = 'SSS.labsea'
20
21 Forcing files are a 1979-1999 monthly climatology computed from the
22 NCEP reanalysis (see pkg/seaice/SEAICE_FFIELDS.h for units and signs)
23 gairxFile = 'u10m.labsea79' # 10-m zonal wind
24 gairyFile = 'v10m.labsea79' # 10-m meridional wind
25 tairFile = 'tair.labsea1979' # 2-m air temperature
26 qaFile = 'qa.labsea1979' # 2-m specific humidity
27 floFile = 'flo.labsea1979' # longwave radiation
28 fshFile = 'fsh.labsea1979' # shortwave radiation
29 rainFile = 'prate.labsea1979' # precipitation
30 evapFile = 'evap.labsea1979' # evaporation
31
32
33 Instructions for running Experiment 1
34 =====================================
35
36 This is a 1-cpu, 10-hour integration used to make sure that all the
37 files are available and that the model compiles and integrates.
38
39 To configure and compile the code:
40 cd MITgcmUV
41 mkdir bin exe
42 cd bin
43 ln -sf ../verification/lab_sea/code/SIZE.h .
44 ln -sf ../verification/lab_sea/code/CPP_OPTIONS.h .
45 ln -sf ../verification/lab_sea/code/CPP_EEOPTIONS.h .
46 ../tools/genmake -makefile
47 make depend
48 make
49
50 To run:
51 cd ../exe
52 cp ../verification/lab_sea/input/* .
53 ln -sf data.10hours data
54 ln -sf data.seaice.adi data.seaice
55 mv mitgcmuv mitgcmuv1
56 mitgcmuv1 >&! output.txt
57 mkdir exp1
58 mv *tave.0000000010.data exp1
59
60 There is comparison output in:
61 diff output.txt ../verification/lab_sea/results/output.txt | more
62
63 Use the matlab script lookat_exp1.m to compare the output
64 of exp1 with that from release1_beta1 sea-ice code:
65 cd ../verification/lab_sea/matlab
66 matlab
67 lookat_exp1
68
69 Instructions for running Experiment 2
70 =====================================
71
72 This is a 1-cpu test of the LSR solver. The solution is
73 compared to that of experiment 1, which used the ADI solver.
74 1-CPU executable from experiment 1 is required.
75
76 To run:
77 cd ../exe
78 cp ../verification/lab_sea/input/* .
79 ln -sf data.10hours data
80 ln -sf data.seaice.lsr data.seaice
81 mitgcmuv1 >&! output.txt
82 mkdir exp2
83 mv *tave.0000000010.data exp2
84
85 Use the matlab script lookat_exp2.m to compare
86 the output of exp2 to that of exp1:
87 cd ../verification/lab_sea/matlab
88 matlab
89 lookat_exp2
90
91 Instructions for running Experiment 3
92 =====================================
93
94 This is a test of periodic boundary conditions for LSR
95 and ADI solvers. The domain has a flat bottom and
96 is periodic both in the x and the y directions.
97 All forcing files are null or constant
98 (u10m = v10m = 5 m/s).
99
100 1-CPU executable from experiment 1 is required.
101
102 To run:
103 cd ../exe
104 cp ../verification/lab_sea/input/* .
105 ln -sf data.1hour data
106 ln -sf data.seaice.testadi data.seaice
107 mitgcmuv1 >&! output.txt
108 mkdir exp3a
109 mv *tave.0000000001.data exp3a
110 ln -sf data.seaice.testlsr data.seaice
111 mitgcmuv1 >&! output.txt
112 mkdir exp3b
113 mv *tave.0000000001.data exp3b
114
115 Use the matlab script lookat_exp3.m to compare
116 the output of exp2 to that of exp1:
117 cd ../verification/lab_sea/matlab
118 matlab
119 lookat_exp3
120
121 If the dynamic ice solvers are correct, they should converge to a
122 constant solution. The tests above show that both the ADI and the LSR
123 solver are unable to handle periodic domains and therefore that they
124 cannot be "correctly" parallelized.
125
126 Instructions for running Experiment 4
127 =====================================
128
129 This is a 2-cpu, 10-hour integration used to test
130 tile edges for sea-ice dynamic solvers.
131
132 To configure and compile the code:
133 cd ../bin
134 rm -rf *.f
135 rm -rf *.o
136 ln -sf ../verification/lab_sea/code/SIZE_2x1.h SIZE.h
137 ln -sf ../verification/lab_sea/code/CPP_OPTIONS.h .
138 ln -sf ../verification/lab_sea/code/CPP_EEOPTIONS_MPI.h CPP_EEOPTIONS.h
139 ../tools/genmake -mpi -makefile
140 ( on alhena use: ../tools/genmake -mpi -platform=o2k -makefile )
141 make depend
142 make
143
144 To run:
145 cd ../exe
146 cp ../verification/lab_sea/input/* .
147 ln -sf data.10hours data
148 ln -sf data.seaice.adi data.seaice
149 mv mitgcmuv mitgcmuv_2x1
150 mpirun -np 2 mitgcmuv_2x1
151 mkdir exp4
152 mv *tave.0000000010.data exp4
153
154 Use the matlab script lookat_exp4.m to compare
155 the 2-cpu output to that of exp1:
156 cd ../verification/lab_sea/matlab
157 matlab
158 lookat_exp4
159
160 The inaccuracy at the tile boundary can be decreased by increasing
161 NPSEUDO in data.seaice at the expense of computation time.
162 Also as sea-ice ages (thickens) the difference at the tiles becomes
163 increasingly small. For solver pkg/seaice/adi.F a value of NPSEUDO=10
164 appears adequate for forward integrations but cannot be used for sea-ice
165 adjoint model. Work is underway to fix this problem.
166
167
168 Instructions for running Experiment 5
169 =====================================
170
171 This is a 2-cpu, 2-year, test integration. It illustrates
172 convention used for forcing data files by seaice_get_forcing.F.
173
174 To run:
175 cd ../exe
176 cp ../verification/lab_sea/input/* .
177 cp eedata_mpi eedata
178 ln -sf data.2years data
179 ln -sf data.seaice.adi data.seaice
180 ln -sf evap.labsea1979 evap.labsea1980
181 ln -sf flo.labsea1979 flo.labsea1980
182 ln -sf fsh.labsea1979 fsh.labsea1980
183 ln -sf prate.labsea1979 prate.labsea1980
184 ln -sf qa.labsea1979 qa.labsea1980
185 ln -sf tair.labsea1979 tair.labsea1980
186 ln -sf u10m.labsea79 u10m.labsea80
187 ln -sf v10m.labsea79 v10m.labsea80
188 mpirun -np 2 mitgcmuv_2x1
189
190 Use the matlab script lookat_exp3.m to compare
191 the 2-cpu output to SMMR-SSM/I data:
192 cd ../verification/lab_sea/matlab
193 matlab
194 lookat_exp5
195
196 Disclaimer:
197 The comparison here is just for fun, not really supposed
198 to look anything like the data.
199 Otherwise it would put a lot of people out of business :-)
200
201 Instructions for running Experiment 6
202 =====================================
203
204 This is a 1-cpu test of sea-ice thermodynamics (no dynamics).
205 The solution is compared to that of experiment 1.
206 1-CPU executable from experiment 1 is required.
207
208 To run:
209 cd ../exe
210 cp ../verification/lab_sea/input/* .
211 ln -sf data.10hours data
212 ln -sf data.seaice.nodynamics data.seaice
213 mitgcmuv1 >&! output.txt
214 mkdir exp6
215 mv *tave.0000000010.data exp6
216
217 Use the matlab script lookat_exp6.m to compare
218 the output of exp2 to that of exp1:
219 cd ../verification/lab_sea/matlab
220 matlab
221 lookat_exp6

  ViewVC Help
Powered by ViewVC 1.1.22