/[MITgcm]/MITgcm_contrib/ksnow/press_release/code/DYNVARS.h
ViewVC logotype

Contents of /MITgcm_contrib/ksnow/press_release/code/DYNVARS.h

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


Revision 1.2 - (show annotations) (download)
Mon Jan 30 16:32:18 2017 UTC (8 years, 6 months ago) by ksnow
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +18 -7 lines
File MIME type: text/plain
update darcy pressure release source code

1 C $Header: /u/gcmpack/MITgcm/model/inc/DYNVARS.h,v 1.50 2016/11/28 22:55:00 jmc 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+1)
30 C note: a) used with "exactConserv", necessary for Non-Lin free-surf and mixed
31 C forward/backward free-surf time stepping (e.g., Crank-Nickelson)
32 C b) same as etaN but not necessarily at the same time, e.g.:
33 C implicDiv2DFlow=1 => etaH=etaN ; =0 => etaH=etaN^(n-1);
34
35 #ifdef ALLOW_ADAMSBASHFORTH_3
36 COMMON /DYNVARS_R/
37 & etaN,
38 & uVel,vVel,wVel,theta,salt,
39 & gU, gV,
40 & guNm, gvNm, gtNm, gsNm
41 #else /* ALLOW_ADAMSBASHFORTH_3 */
42 COMMON /DYNVARS_R/
43 & etaN,
44 & uVel,vVel,wVel,theta,salt,
45 & gU, gV,
46 & guNm1,gvNm1,gtNm1,gsNm1
47 #endif /* ALLOW_ADAMSBASHFORTH_3 */
48 _RL etaN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
49 _RL uVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
50 _RL vVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
51 _RL wVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
52 _RL theta(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
53 _RL salt (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
54 _RL gU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
55 _RL gV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
56 #ifdef ALLOW_ADAMSBASHFORTH_3
57 _RL guNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
58 _RL gvNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
59 _RL gtNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
60 _RL gsNm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,2)
61 #else /* ALLOW_ADAMSBASHFORTH_3 */
62 _RL guNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
63 _RL gvNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
64 _RL gtNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
65 _RL gsNm1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
66 #endif /* ALLOW_ADAMSBASHFORTH_3 */
67
68 #ifdef ALLOW_PRESSURE_RELEASE_CODE
69 COMMON /PRESS_RELEASE_R/
70 & pReleaseTransX, pReleaseTransY
71 _RL pReleaseTransX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
72 _RL pReleaseTransY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
73 #endif
74
75 #ifdef USE_OLD_EXTERNAL_FORCING
76 COMMON /DYNVARS_OLD/
77 & gT, gS
78 _RL gT(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
79 _RL gS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
80 #endif
81
82 COMMON /DYNVARS_R_2/
83 & etaH
84 _RL etaH (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
85
86 #if (defined (ALLOW_3D_DIFFKR) || defined (ALLOW_DIFFKR_CONTROL))
87 C diffKr :: full 3D specification of Laplacian diffusion coeff.
88 C for mixing of tracers vertically ( units of r^2/s )
89 COMMON /DYNVARS_DIFFKR/
90 & diffKr
91 _RL diffKr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
92 #endif
93
94 C The following blocks containing requires anomaly fields of control vars
95 C and related to Options:
96 C ALLOW_KAPGM_CONTROL , ALLOW_KAPREDI_CONTROL and ALLOW_BOTTOMDRAG_CONTROL
97 C have been moved to header file "CTRL_FIELDS.h"
98
99 #ifdef ALLOW_BL79_LAT_VARY
100 C BL79LatArray :: is used for latitudinal dependence of
101 C BryanLewis79 vertical diffusivity
102 COMMON /DYNVARS_BL79LatArray/ BL79LatArray
103 _RL BL79LatArray (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
104 #endif
105
106 C Diagnostic Variables:
107 C phiHydLow :: Phi-Hydrostatic at r-lower boundary
108 C (bottom in z-coordinates, top in p-coordinates)
109 C totPhiHyd :: total hydrostatic Potential (anomaly, for now),
110 C at cell center level ; includes surface contribution.
111 C (for diagnostic + used in Z-coord with EOS_funct_P)
112 C rhoInSitu :: In-Situ density anomaly [kg/m^3] at cell center level.
113 C hMixLayer :: Mixed layer depth [m]
114 C (for diagnostic + used GMRedi "fm07")
115 C IVDConvCount :: Impl.Vert.Diffusion convection counter:
116 C = 0 (not convecting) or 1 (convecting)
117 COMMON /DYNVARS_DIAG/
118 & phiHydLow, totPhiHyd,
119 & rhoInSitu,
120 & hMixLayer, IVDConvCount, phiHydLowC
121 _RL phiHydLow(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
122 _RL phiHydLowC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
123 _RL totPhiHyd(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
124 _RL rhoInSitu(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
125 _RL hMixLayer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
126 _RL IVDConvCount(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
127
128 #ifdef ALLOW_SOLVE4_PS_AND_DRAG
129 C Variables for Implicit friction (& vert. visc) in 2-D pressure solver
130 C dU_psFacX :: zonal velocity increment factor from (implicit) surf.
131 C pressure gradient in X (no Units)
132 C dV_psFacY :: merid velocity increment factor from (implicit) surf.
133 C pressure gradient in Y (no Units)
134
135 COMMON /DYNVARS_DRAG_IN_PS/
136 & dU_psFacX, dV_psFacY
137 _RL dU_psFacX(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
138 _RL dV_psFacY(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
139 #endif /* ALLOW_SOLVE4_PS_AND_DRAG */

  ViewVC Help
Powered by ViewVC 1.1.22