1 |
! ========================================================== |
2 |
! | CPL_MPMICE |
3 |
! | Declare MPI tags for each variable to be exchanged |
4 |
! | between MITgcm and MPMice |
5 |
! |---------------------------------------------------------- |
6 |
! | Note: North/South/East/West and zonal/meridional below |
7 |
! | refer to grid, not geographical coordinates. |
8 |
! ========================================================== |
9 |
|
10 |
! TimeIntervalTag |
11 |
! time interval between communications (s): scalar Real*8 |
12 |
|
13 |
! OceanTimeTag |
14 |
! ocean model time (s): scalar Real*8 |
15 |
|
16 |
! IceTimeTag |
17 |
! ice model time (s): scalar Real*8 |
18 |
|
19 |
! OceanGridsizeTag |
20 |
! ocean model Nx and Ny dimensions: 2 integers |
21 |
|
22 |
! xGtag |
23 |
! longitude East of SouthWest corner |
24 |
! Nx * Ny Real*8 array |
25 |
|
26 |
! yGtag |
27 |
! latitude North of SouthWest corner |
28 |
! Nx * Ny Real*8 array |
29 |
|
30 |
! dxGtag |
31 |
! distance in m between SouthWest and SouthEast corner |
32 |
! Nx * Ny Real*8 array |
33 |
|
34 |
! dyGtag |
35 |
! distance in m between SouthWest and NorthEast corner |
36 |
! Nx * Ny Real*8 array |
37 |
|
38 |
! hFacCtag |
39 |
! landmask of center of grid cell, 0 is land, >0 is ocean |
40 |
! Nx * Ny Real*8 array |
41 |
|
42 |
! AreaBcTag |
43 |
! open boundary ice area (fractional: 0-1) at the tracer points |
44 |
! 2*(Nx+Ny)-4 Real*8 array |
45 |
! i=[1:Nx Nx*ones(1,Ny-1) (Nx-1):-1:1 ones(1,Ny-2)]; |
46 |
! j=[ones(1,Nx) 2:Ny Ny*ones(1,Nx-1) (Ny-1):-1:2 ]; |
47 |
|
48 |
! HeffBcTag |
49 |
! open boundary effective ice thickness (m) at the tracer points |
50 |
! actual ice thickness for single-class ice is: Heff / Area |
51 |
! 2*(Nx+Ny)-4 Real*8 array |
52 |
! i=[1:Nx Nx*ones(1,Ny-1) (Nx-1):-1:1 ones(1,Ny-2)]; |
53 |
! j=[ones(1,Nx) 2:Ny Ny*ones(1,Nx-1) (Ny-1):-1:2 ]; |
54 |
|
55 |
! HsnowBcTag |
56 |
! open boundary effective snow thickness (m) at the tracer points |
57 |
! actual snow thickness is: Hsnow / Area |
58 |
! 2*(Nx+Ny)-4 Real*8 array |
59 |
! i=[1:Nx Nx*ones(1,Ny-1) (Nx-1):-1:1 ones(1,Ny-2)]; |
60 |
! j=[ones(1,Nx) 2:Ny Ny*ones(1,Nx-1) (Ny-1):-1:2 ]; |
61 |
|
62 |
! HsaltBcTag |
63 |
! open boundary effective sea ice salinity (g/m2) at the tracer points |
64 |
! actual salinity in g/kg is: Hsalt / Heff / rhoIce |
65 |
! where rhoice = 910 kg / m^3 |
66 |
! 2*(Nx+Ny)-4 Real*8 array |
67 |
! i=[1:Nx Nx*ones(1,Ny-1) (Nx-1):-1:1 ones(1,Ny-2)]; |
68 |
! j=[ones(1,Nx) 2:Ny Ny*ones(1,Nx-1) (Ny-1):-1:2 ]; |
69 |
|
70 |
! UiceBcTag |
71 |
! open boundary zonal velocity (m/s) |
72 |
! specified at the inside edge of the outer grid cells |
73 |
! southwest C-grid locations for normal component and at the |
74 |
! southwest C-grid locations for tangential |
75 |
! >0 from West to East |
76 |
! 2*(Nx+Ny)-6 Real*8 array |
77 |
! i=[2:Nx Nx*ones(1,Ny-1) (Nx-1):-1:2 2*ones(1,Ny-2)]; |
78 |
! j=[ones(1,Nx-1) 2:Ny Ny*ones(1,Nx-2) (Ny-1):-1:2 ]; |
79 |
|
80 |
! ViceBcTag |
81 |
! open boundary meridional velocity (m/s) |
82 |
! specified at the inside edge of the outer grid cells |
83 |
! southwest C-grid locations for normal component and at the |
84 |
! southwest C-grid locations for tangential |
85 |
! >0 from South to North |
86 |
! 2*(Nx+Ny)-6 Real*8 array |
87 |
! i=[1:Nx Nx*ones(1,Ny-2) (Nx-1):-1:1 ones(1,Ny-3)]; |
88 |
! j=[2*ones(1,Nx) 3:Ny Ny*ones(1,Nx-1) (Ny-1):-1:3 ]; |
89 |
|
90 |
! AreaTag |
91 |
! ice area (fractional: 0-1) at the tracer points |
92 |
! Nx * Ny Real*8 array |
93 |
|
94 |
! HeffTag |
95 |
! effective ice thickness (mean thickness in the grid box in m) |
96 |
! at the tracer points |
97 |
! actual ice thickness for single-class ice is: Heff / Area |
98 |
! Nx * Ny Real*8 array |
99 |
|
100 |
! HsnowTag |
101 |
! effective snow thickness (mean thickness in the grid box in m) |
102 |
! at the tracer points |
103 |
! actual snow thickness is: Hsnow / Area |
104 |
! Nx * Ny Real*8 array |
105 |
|
106 |
! HsaltTag |
107 |
! effective sea ice salinity (g/m2) at the tracer points |
108 |
! actual salinity in g/kg is: Hsalt / Heff / rhoIce |
109 |
! where rhoice = 910 kg / m^3 |
110 |
! Nx * Ny Real*8 array |
111 |
|
112 |
! UiceTag |
113 |
! zonal ice velocity in m/s at South-West C-grid U point |
114 |
! >0 from West to East |
115 |
! Nx * Ny Real*8 array |
116 |
|
117 |
! ViceTag |
118 |
! meridional ice velocity in m/s at South-West C-grid V point |
119 |
! >0 from South to North |
120 |
! Nx * Ny Real*8 array |
121 |
|
122 |
! UwindTag |
123 |
! 10-m u-wind at the tracer points (m/s) |
124 |
! >0 from West to East |
125 |
! Nx * Ny Real*8 array |
126 |
|
127 |
! VwindTag |
128 |
! 10-m v-wind at the tracer points (m/s) |
129 |
! >0 from South to North |
130 |
! Nx * Ny Real*8 array |
131 |
|
132 |
! LwDownTag |
133 |
! downward longwave at the tracer points (W/m2) |
134 |
! > 0 for increase in theta (ocean warming) |
135 |
! Nx * Ny Real*8 array |
136 |
|
137 |
! SwDownTag |
138 |
! downward shortwave at the tracer points (W/m2) |
139 |
! > 0 for increase in theta (ocean warming) |
140 |
! Nx * Ny Real*8 array |
141 |
|
142 |
! AtempTag |
143 |
! 2-m air temperature at the tracer points (deg K) |
144 |
! Nx * Ny Real*8 array |
145 |
|
146 |
! AqhTag |
147 |
! 2-m specific humidity at the tracer points (kg/kg) |
148 |
! Nx * Ny Real*8 array |
149 |
|
150 |
! PrecipTag |
151 |
! precipitation at the tracer points (m/s) |
152 |
! > 0 for decrease in salt (ocean salinity) |
153 |
! Nx * Ny Real*8 array |
154 |
|
155 |
! SstTag |
156 |
! sea surface temperature at the tracer points (deg C) |
157 |
! Nx * Ny Real*8 array |
158 |
|
159 |
! SssTag |
160 |
! sea surface salinity at the tracer points (g/kg) |
161 |
! Nx * Ny Real*8 array |
162 |
|
163 |
! UvelTag |
164 |
! sea surface zonal velocity (m/s) |
165 |
! at southwest c-grid locations |
166 |
! Nx * Ny Real*8 array |
167 |
|
168 |
! VvelTag |
169 |
! sea surface meridional velocity (m/s) |
170 |
! at southwest c-grid locations |
171 |
! Nx * Ny Real*8 array |
172 |
|
173 |
! UstressTag |
174 |
! zonal stress under ice at southwest c-grid locations (N/m^2) |
175 |
! Ustress is computed for ice-covered area only |
176 |
! > 0 increases ocean surface velocity in the U direction |
177 |
! Nx * Ny Real*8 array |
178 |
|
179 |
! VstressTag |
180 |
! meridional stress under ice at southwest c-grid locations (N/m^2) |
181 |
! Vstress is computed for ice-covered area only |
182 |
! > 0 increases ocean surface velocity in the V direction |
183 |
! Nx * Ny Real*8 array |
184 |
|
185 |
! SwResidTag |
186 |
! residual shortwave under ice at tracer point (W/m2) |
187 |
! SwResid is computed for ice-covered area only |
188 |
! > 0 for increase in theta (ocean warming) |
189 |
! Nx * Ny Real*8 array |
190 |
|
191 |
! HeatFluxTag |
192 |
! heat flux (less shortwave) at tracer point (W/m2) |
193 |
! HeatFlux is computed for ice-covered area only |
194 |
! > 0 for increase in theta (ocean warming) |
195 |
! Nx * Ny Real*8 array |
196 |
|
197 |
! WaterFluxTag |
198 |
! freshwater flux at tracer point ( kg/m^2/s ) |
199 |
! WaterFlux is computed for ice-covered area only |
200 |
! > 0 for decrease in ocean salinity |
201 |
! Nx * Ny Real*8 array |
202 |
|
203 |
! SaltFluxTag |
204 |
! salt flux at tracer point (g/m^2/s) |
205 |
! SaltFlux is computed for ice-covered area only |
206 |
! > 0 for increase in ocean salinity |
207 |
! Nx * Ny Real*8 array |
208 |
|
209 |
INTEGER TimeIntervalTag |
210 |
INTEGER OceanTimeTag |
211 |
INTEGER IceTimeTag |
212 |
INTEGER OceanGridsizeTag |
213 |
INTEGER xGtag |
214 |
INTEGER yGtag |
215 |
INTEGER dxGtag |
216 |
INTEGER dxGtag |
217 |
INTEGER hFacCtag |
218 |
INTEGER AreaBcTag |
219 |
INTEGER HeffBcTag |
220 |
INTEGER HsnowBcTag |
221 |
INTEGER HsaltBcTag |
222 |
INTEGER UiceBcTag |
223 |
INTEGER ViceBcTag |
224 |
INTEGER AreaTag |
225 |
INTEGER HeffTag |
226 |
INTEGER HsnowTag |
227 |
INTEGER HsaltTag |
228 |
INTEGER UiceTag |
229 |
INTEGER ViceTag |
230 |
INTEGER UwindTag |
231 |
INTEGER VwindTag |
232 |
INTEGER LwDownTag |
233 |
INTEGER SwDownTag |
234 |
INTEGER AtempTag |
235 |
INTEGER AqhTag |
236 |
INTEGER PrecipTag |
237 |
INTEGER SstTag |
238 |
INTEGER SssTag |
239 |
INTEGER UvelTag |
240 |
INTEGER VvelTag |
241 |
INTEGER UstressTag |
242 |
INTEGER VstressTag |
243 |
INTEGER SwResidTag |
244 |
INTEGER HeatFluxTag |
245 |
INTEGER WaterFluxTag |
246 |
INTEGER SaltFluxTag |
247 |
|
248 |
PARAMETER ( TimeIntervalTag = 10001000 ) |
249 |
PARAMETER ( OceanTimeTag = 10001001 ) |
250 |
PARAMETER ( IceTimeTag = 10001002 ) |
251 |
PARAMETER ( OceanGridsizeTag = 10002001 ) |
252 |
PARAMETER ( xGtag = 10002002 ) |
253 |
PARAMETER ( yGtag = 10002003 ) |
254 |
PARAMETER ( dxGtag = 10002004 ) |
255 |
PARAMETER ( dxGtag = 10002005 ) |
256 |
PARAMETER ( hFacCtag = 10002006 ) |
257 |
PARAMETER ( AreaBcTag = 10003001 ) |
258 |
PARAMETER ( HeffBcTag = 10003002 ) |
259 |
PARAMETER ( HsnowBcTag = 10003003 ) |
260 |
PARAMETER ( HsaltBcTag = 10003004 ) |
261 |
PARAMETER ( UiceBcTag = 10003005 ) |
262 |
PARAMETER ( ViceBcTag = 10003006 ) |
263 |
PARAMETER ( AreaTag = 10004001 ) |
264 |
PARAMETER ( HeffTag = 10004002 ) |
265 |
PARAMETER ( HsnowTag = 10004003 ) |
266 |
PARAMETER ( HsaltTag = 10004004 ) |
267 |
PARAMETER ( UiceTag = 10004005 ) |
268 |
PARAMETER ( ViceTag = 10004006 ) |
269 |
PARAMETER ( UwindTag = 10005001 ) |
270 |
PARAMETER ( VwindTag = 10005002 ) |
271 |
PARAMETER ( LwDownTag = 10005101 ) |
272 |
PARAMETER ( SwDownTag = 10005102 ) |
273 |
PARAMETER ( AtempTag = 10005103 ) |
274 |
PARAMETER ( AqhTag = 10005104 ) |
275 |
PARAMETER ( PrecipTag = 10005105 ) |
276 |
PARAMETER ( SstTag = 10005201 ) |
277 |
PARAMETER ( SssTag = 10005202 ) |
278 |
PARAMETER ( UvelTag = 10005203 ) |
279 |
PARAMETER ( VvelTag = 10005204 ) |
280 |
PARAMETER ( UstressTag = 10006001 ) |
281 |
PARAMETER ( VstressTag = 10006002 ) |
282 |
PARAMETER ( SwResidTag = 20006101 ) |
283 |
PARAMETER ( HeatFluxTag = 20006102 ) |
284 |
PARAMETER ( WaterFluxTag = 20006103 ) |
285 |
PARAMETER ( SaltFluxTag = 20006104 ) |