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

Diff of /MITgcm/model/inc/SURFACE.h

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

revision 1.2 by adcroft, Tue May 29 14:01:36 2001 UTC revision 1.14 by dfer, Tue Jan 2 20:52:07 2007 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3  C  C
4  C     /==========================================================\  CBOP
5  C     | SURFACE.h                                                |  C    !ROUTINE: SURFACE.h
6  C     | o Header file defining surface-related model varaibles   |  C    !INTERFACE:
7  C     |==========================================================|  C    include SURFACE.h
8  C     | Contains variables relative to the surface position      |  C    !DESCRIPTION: \bv
9  C     | that are held fixed in linear free-surface formulation   |  C     *==========================================================*
10  C     | but can vary with time with a non-linear free-surface.   |  C     | SURFACE.h                                                
11  C     \==========================================================/  C     | o Header file defining surface-related model varaibles    
12    C     *==========================================================*
13  C--   COMMON /SOLVE_BAROT/  Barotropic variables common block  C     | Contains variables relative to the surface position      
14  C     Bo_surf  -Boyancy|1/rho [ocean|atmos] at surface level [= g | alpha(p_o)]  C     | that are held fixed in linear free-surface formulation    
15  C     recip_Bo     = 1/Bo_surf  C     | but can vary with time with a non-linear free-surface.    
16        COMMON /SOLVE_BAROT/ Bo_surf, recip_Bo  C     *==========================================================*
17        _RL  Bo_surf(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  C     \ev
18    CEOP
19    
20    C--   COMMON /SURF_FIXED/  fixed surface arrays (Real)
21    C     Bo_surf  :: Boyancy|1/rho [ocean|atmos] at surface level [=g|alpha(p_o)]
22    C     recip_Bo :: 1/Bo_surf
23    C     topoZ    :: topographic height [m] (used mainly for atmosphere)
24    C     phi0surf :: starting point for integrating phi_Hyd
25          COMMON /SURF_FIXED/ Bo_surf, recip_Bo, topoZ, phi0surf
26          _RL  Bo_surf (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
27        _RL  recip_Bo(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)        _RL  recip_Bo(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
28          _RS  topoZ   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
29          _RS  phi0surf(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
30    
31  C--   COMMON /SURF_INDEX/ Common block for surface related index  C--   COMMON /SURF_INDEX/ Common block for surface related index
32  C     k_surf - vertical index of the surface tracer cell  C     ksurfC ::  vertical index of the surface tracer cell
33        COMMON /SURF_INDEX/ k_surf  C     ksurfW ::  vertical index of the surface U point
34        INTEGER k_surf(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  C     ksurfS ::  vertical index of the surface V point
35    C IMPORTANT:  ksurfC,W,S = Nr+1  where the fluid column is empty (continent)
36          COMMON /SURF_INDEX/ ksurfC, ksurfW, ksurfS
37          INTEGER ksurfC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
38          INTEGER ksurfW(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
39          INTEGER ksurfS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
40    
41    C--   COMMON /SURF_CORREC/ Common block for correction of source/sink of
42    C--                        Tracer due to W at the surface with Linear
43    C--                        Free Surface
44    C     TsurfCor :: Pot.Temp Linear-Free-Surface correction term [K.r_Unit/s]
45    C     SsurfCor :: Salinity Linear-Free-Surface correction term [psu.r_Unit/s]
46          COMMON /SURF_CORREC/ TsurfCor, SsurfCor
47          _RL TsurfCor
48          _RL SsurfCor
49    
50    #ifdef EXACT_CONSERV
51    C     etaHnm1 :: surface r-anomaly, etaH, at previous time level
52    C     dEtaHdt :: time derivative of total column height [r_unit/s = w unit]
53    C     PmEpR   :: keep the fresh water input (=-EmPmR) of the previous time step
54          COMMON /EXACT_ETA_LOCAL/ etaHnm1, dEtaHdt, PmEpR
55          _RL etaHnm1(1-Olx:sNx+Olx,1-Oly:sNy+Oly,nSx,nSy)
56          _RL dEtaHdt(1-Olx:sNx+Olx,1-Oly:sNy+Oly,nSx,nSy)
57          _RS  PmEpR (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
58    #endif
59    
60    #ifdef NONLIN_FRSURF
61    C--   COMMON /SURF_CHANGE/ transient variables used for Non-Lin Free-Surf
62    C     hFac_surfC ::  New thickness factor of the surface level
63    C                        center (Tracer point)
64    C     hFac_surfW ::  idem, West  interface (U point)
65    C     hFac_surfS ::  idem, South interface (V point)
66          COMMON /SURF_CHANGE/
67         &     hFac_surfC, hFac_surfW, hFac_surfS
68          _RS  hFac_surfC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
69          _RS  hFac_surfW(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
70          _RS  hFac_surfS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
71    
72    C     Local variables in common block
73    C     Rmin_surf :: minimum r_value of the free surface position
74    C                  that satisfy  the hFacInf criteria
75          COMMON /LOCAL_CALC_SURF_DR/ Rmin_surf
76          _RL Rmin_surf(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
77    
78    C--   COMMON /RSTAR_CHANGE/ transient variables used with r* Coordinate
79    C     rStarFacC :: = dr/dr* = ratio of r-thickness / r*-thickness = h^n / H
80    C     rStarFacW :: same but for West  face
81    C     rStarFacS :: same but for South face
82    C     rStarExpC :: column expansion factor = h^n+1/h^n , Centered
83    C     rStarExpW :: column expansion factor = h^n+1/h^n , Western  face
84    C     rStarExpS :: column expansion factor = h^n+1/h^n , Southern face
85    C     rStarDhCDt:: relative time derivative of h_Center = d.eta/dt / H
86    C     rStarDhWDt:: relative time derivative of h_West_face  (u.point)
87    C     rStarDhSDt:: relative time derivative of h_South_face (v.point)
88          COMMON /RSTAR_CHANGE/
89         &     rStarFacC, rStarFacW, rStarFacS,
90         &     rStarExpC, rStarExpW, rStarExpS,
91         &     rStarDhCDt,rStarDhWDt,rStarDhSDt
92          _RL  rStarFacC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
93          _RL  rStarFacW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
94          _RL  rStarFacS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
95          _RL  rStarExpC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
96          _RL  rStarExpW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
97          _RL  rStarExpS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
98          _RL  rStarDhCDt(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
99          _RL  rStarDhWDt(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
100          _RL  rStarDhSDt(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
101    
102    C--   COMMON /RSTAR_FIXED/ fixed thickness ratio ( r* discretization )
103    C     h0FacC :: initial (and fixed in time) hFacC factor
104    C     h0FacW :: initial (and fixed in time) hFacW factor
105    C     h0FacS :: initial (and fixed in time) hFacS factor
106          COMMON /RSTAR_FIXED/
107         & h0FacC, h0FacW, h0FacS
108          _RS h0FacC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
109          _RS h0FacW(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
110          _RS h0FacS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
111    
112    #endif /* NONLIN_FRSURF */

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.14

  ViewVC Help
Powered by ViewVC 1.1.22