/[MITgcm]/MITgcm/model/inc/DYNVARS.h
ViewVC logotype

Contents of /MITgcm/model/inc/DYNVARS.h

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


Revision 1.42 - (show annotations) (download)
Sun Aug 12 20:31:25 2012 UTC (11 years, 9 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64, checkpoint63r, checkpoint63s
Changes since 1.41: +12 -14 lines
File MIME type: text/plain
- KAPGM_CONTROL, KAPREDI_CONTROL, BOTTOMDRAG_CONTROL : simplify the condition
  (remove #ifdef ALLOW_AUTODIFF) for defining the corresponding common block.
- also define /DYNVARS_DIFFKR/ common block when ALLOW_DIFFKR_CONTROL is defined:
  this enables to compile and to reach the newly added STOP in S/R CTRL_CHECK
  in case ALLOW_3D_DIFFKR is undef.

1 C $Header: /u/gcmpack/MITgcm/model/inc/DYNVARS.h,v 1.41 2010/02/17 23:39:35 gforget Exp $
2 C $Name: $
3
4 CBOP
5 C !ROUTINE: DYNVARS.h
6 C !INTERFACE:
7 C include "DYNVARS.h"
8 C !DESCRIPTION:
9 C \bv
10 C *==========================================================*
11 C | DYNVARS.h
12 C | o Dynamical model variables (common block DYNVARS_R)
13 C *==========================================================*
14 C | The value and two levels of time tendency are held for
15 C | each prognostic variable.
16 C *==========================================================*
17 C \ev
18 CEOP
19
20 C State Variables:
21 C etaN :: free-surface r-anomaly (r unit) at current time level
22 C uVel :: zonal velocity (m/s, i=1 held at western face)
23 C vVel :: meridional velocity (m/s, j=1 held at southern face)
24 C theta :: potential temperature (oC, held at pressure/tracer point)
25 C salt :: salinity (ppt, held at pressure/tracer point)
26 C gX, gxNm1 :: Time tendencies at current and previous time levels.
27 C etaH :: surface r-anomaly, advanced in time consistently
28 C with 2.D flow divergence (Exact-Conservation):
29 C etaH^n+1 = etaH^n - delta_t*Div.(H^n U^n)
30 C note: a) used with "exactConserv" but strictly necessary for NonLinFreeSurf
31 C b) same as etaN but not necessarily at the same time, e.g.:
32 C implicDiv2DFlow=0 => etaH=etaN ; =1 => etaH=etaNm1 ;
33
34 #ifdef ALLOW_ADAMSBASHFORTH_3
35 COMMON /DYNVARS_R/
36 & etaN,
37 & uVel,vVel,wVel,theta,salt,
38 & gU, gV, gT, gS,
39 & guNm, gvNm, gtNm, gsNm
40 #else /* ALLOW_ADAMSBASHFORTH_3 */
41 COMMON /DYNVARS_R/
42 & etaN,
43 & uVel,vVel,wVel,theta,salt,
44 & gU, gV, gT, gS,
45 & guNm1,gvNm1,gtNm1,gsNm1
46 #endif /* ALLOW_ADAMSBASHFORTH_3 */
47 _RL etaN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
48 _RL uVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
49 _RL vVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
50 _RL wVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
51 _RL theta(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
52 _RL salt (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
53 _RL gU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
54 _RL gV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
55 _RL gT(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
56 _RL gS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
57 #ifdef ALLOW_ADAMSBASHFORTH_3
58 _RL guNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
59 _RL gvNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
60 _RL gtNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
61 _RL gsNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
62 #else /* ALLOW_ADAMSBASHFORTH_3 */
63 _RL guNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
64 _RL gvNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
65 _RL gtNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
66 _RL gsNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
67 #endif /* ALLOW_ADAMSBASHFORTH_3 */
68
69 COMMON /DYNVARS_R_2/
70 & etaH
71 _RL etaH (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
72
73 #if (defined (ALLOW_3D_DIFFKR) || defined (ALLOW_DIFFKR_CONTROL))
74 C diffKr :: full 3D specification of Laplacian diffusion coeff.
75 C for mixing of tracers vertically ( units of r^2/s )
76 COMMON /DYNVARS_DIFFKR/
77 & diffKr
78 _RL diffKr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
79 #endif
80
81 cph(
82 cph the following block will eventually move to a separate
83 cph header file containing requires anomaly fields of control vars.
84 #ifdef ALLOW_KAPGM_CONTROL
85 COMMON /DYNVARS_KAPGM/
86 & kapGM
87 _RL kapGM (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
88 #endif
89 #ifdef ALLOW_KAPREDI_CONTROL
90 COMMON /DYNVARS_KAPREDI/
91 & kapRedi
92 _RL kapRedi (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
93 #endif
94 #ifdef ALLOW_BOTTOMDRAG_CONTROL
95 COMMON /DYNVARS_BOTTOMDRAG/
96 & bottomdragFld
97 _RL bottomdragFld (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
98 #endif
99 cph)
100
101 #ifdef ALLOW_BL79_LAT_VARY
102 C BL79LatArray :: is used for latitudinal dependence of
103 C BryanLewis79 vertical diffusivity
104 COMMON /DYNVARS_BL79LatArray/ BL79LatArray
105 _RL BL79LatArray (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
106 #endif
107
108 #ifdef ALLOW_ADDFLUID
109 C addMass :: source (<0: sink) of fluid in the domain interior
110 C in mass per unit of time [kg/s]
111 C (generalisation of oceanic real fresh-water flux)
112 COMMON /DYNVARS_ADD_FLUID/ addMass
113 _RL addMass(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
114 #endif
115
116 C Diagnostic Variables:
117 C phiHydLow :: Phi-Hydrostatic at r-lower boundary
118 C (bottom in z-coordinates, top in p-coordinates)
119 C totPhiHyd :: total hydrostatic Potential (anomaly, for now),
120 C at cell center level ; includes surface contribution.
121 C (for diagnostic + used in Z-coord with EOS_funct_P)
122 C rhoInSitu :: In-Situ density anomaly [kg/m^3] at cell center level.
123 C hMixLayer :: Mixed layer depth [m]
124 C (for diagnostic + used GMRedi "fm07")
125 C IVDConvCount :: Impl.Vert.Diffusion convection counter:
126 C = 0 (not convecting) or 1 (convecting)
127 COMMON /DYNVARS_DIAG/
128 & phiHydLow, totPhiHyd,
129 & rhoInSitu,
130 & hMixLayer, IVDConvCount
131 _RL phiHydLow(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
132 _RL totPhiHyd(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
133 _RL rhoInSitu(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
134 _RL hMixLayer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
135 _RL IVDConvCount(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
136

  ViewVC Help
Powered by ViewVC 1.1.22