/[MITgcm]/MITgcm_contrib/torge/itd/code/SEAICE.h
ViewVC logotype

Contents of /MITgcm_contrib/torge/itd/code/SEAICE.h

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


Revision 1.4 - (show annotations) (download)
Mon Dec 10 22:19:49 2012 UTC (12 years, 7 months ago) by torge
Branch: MAIN
Changes since 1.3: +19 -3 lines
File MIME type: text/plain
include updates from main branch

1 C $Header: /u/gcmpack/MITgcm/pkg/seaice/SEAICE.h,v 1.68 2012/11/09 14:01:49 mlosch Exp $
2 C $Name: $
3
4 CBOP
5 C !ROUTINE: SEAICE.h
6
7 C !DESCRIPTION: \bv
8 C *==========================================================*
9 C | SEAICE.h
10 C | o Basic header for sea ice model.
11 C | Contains most sea ice field declarations.
12 C *==========================================================*
13 C
14 C UICE :: zonal ice velocity in m/s at South-West B-grid
15 C (or C-grid #ifdef SEAICE_CGRID) U point
16 C >0 from West to East
17 C VICE :: meridional ice velocity in m/s at South-West B-grid
18 C (or C-grid #ifdef SEAICE_CGRID) V point
19 C >0 from South to North
20 C note: the South-West B-grid U and V points are on
21 C the lower, left-hand corner of each grid cell
22 C AREA :: fractional ice-covered area in m^2/m^2
23 C at center of grid, i.e., tracer point
24 C 0 is no cover, 1 is 100% cover
25 C HEFF :: effective ice thickness in m
26 C at center of grid, i.e., tracer point
27 C note: for non-zero AREA, actual ice thickness is HEFF / AREA
28 C HSNOW :: effective snow thickness in m
29 C at center of grid, i.e., tracer point
30 C note: for non-zero AREA, actual snow thickness is HSNOW / AREA
31 C HSALT :: effective sea ice salinity in g/m^2
32 C at center of grid, i.e., tracer point
33 C \ev
34 CEOP
35
36 C-- Grid variables for seaice
37 COMMON/ARRAY/HEFFM
38 _RL HEFFM (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
39 #ifdef SEAICE_CGRID
40 COMMON/ARRAYC/ seaiceMaskU, seaiceMaskV
41 _RL seaiceMaskU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
42 _RL seaiceMaskV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
43 C k1/2AtZ :: coefficients at C and Z points
44 C k1/2AtC for metric terms in U/V ice equations.
45 COMMON/ARRAYCMETRIC/ k1AtC, k1AtZ, k2AtC, k2AtZ
46 _RS k1AtC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
47 _RS k1AtZ (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
48 _RS k2AtC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
49 _RS k2AtZ (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
50 #else
51 COMMON/ARRAYB/ UVM
52 _RS UVM (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
53 C k1/2AtC/U/V :: coefficients at C, U, and V points
54 C for metric terms in U/V ice equations.
55 COMMON/ARRAYBMETRIC/
56 & k1AtC, k1AtU, k1AtV, k2AtC, k2AtU, k2AtV
57 _RS k1AtC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
58 _RS k1AtU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
59 _RS k1AtV (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
60 _RS k2AtC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
61 _RS k2AtU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
62 _RS k2AtV (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
63 #endif /* SEAICE_CGRID */
64
65 C-- Dynamical variables
66 CToM<<<
67 #ifdef SEAICE_ITD
68 COMMON/SEAICE_DYNVARS_1/AREA,HEFF,HSNOW,UICE,VICE,
69 & AREAITD,HEFFITD,HSNOWITD
70 #else
71 COMMON/SEAICE_DYNVARS_1/AREA,HEFF,HSNOW,UICE,VICE
72 #endif
73 C>>>ToM
74 _RL AREA (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
75 _RL HEFF (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
76 _RL HSNOW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
77 _RL UICE (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
78 _RL VICE (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
79 CToM<<<
80 #ifdef SEAICE_ITD
81 _RL AREAITD (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
82 _RL HEFFITD (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
83 _RL HSNOWITD (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
84 #endif
85 C>>>ToM
86
87 #ifdef SEAICE_GROWTH_LEGACY
88 COMMON/SEAICE_DYNVARS_2/ areaNm1, hEffNm1
89 _RL areaNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
90 _RL hEffNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
91 #endif /* SEAICE_GROWTH_LEGACY */
92
93 C uIceC :: average of UICE between last two time steps
94 C vIceC :: average of VICE between last two time steps
95 COMMON/SEAICE_DYNVARS_3/
96 & ETA,etaZ,ZETA,PRESS, e11, e22, e12,
97 & FORCEX,FORCEY,
98 & uIceC, vIceC, uIceNm1, vIceNm1
99 _RL ETA (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
100 _RL etaZ (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
101 _RL ZETA (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
102 C ice strength/pressure term
103 _RL PRESS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
104 C strain rate tensor
105 _RL e11 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
106 _RL e22 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
107 _RL e12 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
108 C
109 _RL FORCEX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
110 _RL FORCEY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
111 _RL uIceC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
112 _RL vIceC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
113 _RL uIceNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
114 _RL vIceNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
115
116 #if (defined (ALLOW_MEAN_SFLUX_COST_CONTRIBUTION) || defined (ALLOW_SSH_GLOBMEAN_COST_CONTRIBUTION))
117 C-- Dynamical variables
118 COMMON/SEAICE_DYNVARS_COST/ AREAforAtmFW, frWtrAtm
119 _RL AREAforAtmFW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
120 _RL frWtrAtm (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
121 #endif
122
123 #ifndef SEAICE_CGRID
124 COMMON/SEAICE_DYNVARS_BGRID/ AMASS, DAIRN
125 _RL AMASS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
126 _RL DAIRN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
127 #else
128 COMMON/SEAICE_DYNVARS_CGRID/
129 & seaiceMassC, seaiceMassU, seaiceMassV
130 _RL seaiceMassC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
131 _RL seaiceMassU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
132 _RL seaiceMassV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
133 #endif
134
135 COMMON/SEAICE_DYNVARS_4/
136 & DWATN, PRESS0, FORCEX0, FORCEY0, ZMAX, ZMIN
137 _RL DWATN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
138 _RL PRESS0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
139 _RL FORCEX0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
140 _RL FORCEY0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
141 _RL ZMAX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
142 _RL ZMIN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
143
144 #ifdef SEAICE_VARIABLE_SALINITY
145 COMMON/SEAICE_SALINITY_R/HSALT
146 _RL HSALT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
147 #endif
148
149 C saltWtrIce contains m of salty ice melted (<0) or created (>0)
150 C frWtrIce contains m of freshwater ice melted (<0) or created (>0)
151 C that is, ice due to precipitation or snow
152 C frWtrAtm contains freshwater flux from the atmosphere
153 COMMON/ICEFLUX/ saltWtrIce, frWtrIce
154 _RL saltWtrIce (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
155 _RL frWtrIce (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
156
157 COMMON/MULTICATEGORY/TICES
158 _RL TICES (1-OLx:sNx+OLx,1-OLy:sNy+OLy,MULTDIM,nSx,nSy)
159
160 C TICE :: Seaice/snow surface temperature
161 COMMON/SEAICE_TEMPERATURE/ TICE
162 _RL TICE (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
163
164 #if (defined (SEAICE_CGRID) && defined (SEAICE_ALLOW_FREEDRIFT))
165 COMMON /SEAICE_FD_FIELDS/
166 & uice_fd, vice_fd
167 _RL uice_fd (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
168 _RL vice_fd (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
169 #endif
170
171 #if (defined (SEAICE_CGRID) && defined (SEAICE_ALLOW_EVP))
172 C
173 C additional fields needed by the EVP solver
174 C
175 C seaice_sigma1 - sigma11+sigma22, defined at C-points
176 C seaice_sigma2 - sigma11-sigma22, defined at C-points
177 C seaice_sigma12 - off-diagonal term, defined at Z-points
178 COMMON /SEAICE_EVP_FIELDS/
179 & seaice_sigma1, seaice_sigma2, seaice_sigma12
180 _RL seaice_sigma1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
181 _RL seaice_sigma2 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
182 _RL seaice_sigma12 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
183 #endif /* SEAICE_ALLOW_EVP and SEAICE_CGRID */
184
185 #ifdef SEAICE_CGRID
186 C stressDivergenceX/Y - divergence of stress tensor
187 COMMON /SEAICE_STRESSDIV/
188 & stressDivergenceX, stressDivergenceY
189 _RL stressDivergenceX(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
190 _RL stressDivergenceY(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
191 #endif /* SEAICE_CGRID */
192
193 COMMON/WIND_STRESS_ICE/TAUX,TAUY
194 C TAUX - zonal wind stress over ice at U point
195 C TAUY - meridional wind stress over ice at V point
196 _RL TAUX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
197 _RL TAUY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
198
199 #ifndef SEAICE_CGRID
200 COMMON/WIND_STRESS_OCE/WINDX,WINDY
201 C WINDX - zonal wind stress over water at C points
202 C WINDY - meridional wind stress over water at C points
203 _RL WINDX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
204 _RL WINDY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
205
206 COMMON/GWATXY/GWATX,GWATY
207 _RL GWATX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
208 _RL GWATY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
209
210 C-- KGEO Level used as a proxy for geostrophic velocity.
211 COMMON/SEAICE_KGEO/KGEO
212 INTEGER KGEO (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
213 #endif
214
215 #ifdef ALLOW_SEAICE_COST_EXPORT
216 _RL uHeffExportCell(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
217 _RL vHeffExportCell(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
218 _RL icevolMeanCell(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
219 COMMON /SEAICE_COST_EXPORT_R/
220 & uHeffExportCell, vHeffExportCell,
221 & icevolMeanCell
222 #endif
223
224 C SWFracB :: fraction of surface Short-Wave radiation reaching
225 C the bottom of ocean surface level
226 _RL SWFracB
227 COMMON /SEAICE_SW_R/
228 & SWFracB
229
230 #ifdef SEAICE_ALLOW_JFNK
231 C diagnostics for the JFNK solver
232 INTEGER totalNewtonIters
233 INTEGER totalNewtonFails
234 INTEGER totalKrylovIters
235 INTEGER totalKrylovFails
236 INTEGER totalJFNKtimeSteps
237 COMMON /SEAICE_JFNK_I/
238 & totalNewtonIters, totalNewtonFails,
239 & totalKrylovIters, totalKrylovFails,
240 & totalJFNKtimeSteps
241 #endif /* SEAICE_ALLOW_JFNK */
242
243 CEH3 ;;; Local Variables: ***
244 CEH3 ;;; mode:fortran ***
245 CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22