/[MITgcm]/MITgcm_contrib/rpa_layers/layers/LAYERS.h
ViewVC logotype

Annotation of /MITgcm_contrib/rpa_layers/layers/LAYERS.h

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


Revision 1.2 - (hide annotations) (download)
Wed Sep 16 18:04:14 2009 UTC (15 years, 10 months ago) by jmc
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +15 -10 lines
File MIME type: text/plain
split 1 common block to separate integer from _RL var.

1 jmc 1.2 C $Header: $
2     C $Name: $
3    
4 rpa 1.1 #ifdef ALLOW_LAYERS
5    
6     C-- Header for LAYERS package. By Ryan Abernathey.
7     C-- For computing volume fluxes in isopyncal layers
8    
9     C -- Parms
10     LOGICAL layers_MNC, layers_MDSIO
11     COMMON /LAYERS_PARMS/ layers_MNC, layers_MDSIO
12    
13     C 3D Layers fields. The vertical dimension in these fields is nLayers,
14     C i.e. the isopycnal coordinate.
15     C
16     C layers_UFlux :: U integrated over layer (m^2/s)
17     C layers_VFlux :: V integrated over layer (m^2/s)
18     C layers_HU :: Layer thickness at the U point (m)
19     C layers_HV :: Layer thickness at the V point (m)
20    
21     #ifdef LAYERS_UFLUX
22     _RL layers_UFlux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
23     #ifdef LAYERS_THICKNESS
24     _RL layers_HU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
25     #endif /* LAYERS_THICKNESS */
26 jmc 1.2 COMMON /LAYERS_U/ layers_UFlux
27 rpa 1.1 #ifdef LAYERS_THICKNESS
28     & , layers_HU
29 jmc 1.2 #endif /* LAYERS_THICKNESS */
30 rpa 1.1 #endif /* LAYERS_UFLUX */
31    
32     #ifdef LAYERS_VFLUX
33     _RL layers_VFlux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
34     #ifdef LAYERS_THICKNESS
35     _RL layers_HV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
36     #endif /* LAYERS_THICKNESS */
37 jmc 1.2 COMMON /LAYERS_V/ layers_VFlux
38 rpa 1.1 #ifdef LAYERS_THICKNESS
39     & , layers_HV
40 jmc 1.2 #endif /* LAYERS_THICKNESS */
41 rpa 1.1 #endif /* LAYERS_VFLUX */
42    
43     C-- The same variables, time-averaged
44    
45     #ifdef ALLOW_TIMEAVE
46    
47     C Keep track of time
48     _RL layers_TimeAve(Nlayers,nSx,nSy)
49     COMMON /LAYERS_TAVE/ layers_TimeAve
50 jmc 1.2
51 rpa 1.1 #ifdef LAYERS_UFLUX
52     _RL layers_UFlux_T(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
53     #ifdef LAYERS_THICKNESS
54     _RL layers_HU_T(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
55     #endif /* LAYERS_THICKNESS */
56 jmc 1.2 COMMON /LAYERS_U_TAVE/ layers_UFlux_T
57 rpa 1.1 #ifdef LAYERS_THICKNESS
58     & , layers_HU_T
59 jmc 1.2 #endif /* LAYERS_THICKNESS */
60 rpa 1.1 #endif /* LAYERS_UFLUX */
61    
62     #ifdef LAYERS_VFLUX
63     _RL layers_VFlux_T(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
64     #ifdef LAYERS_THICKNESS
65     _RL layers_HV_T(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nlayers,nSx,nSy)
66     #endif /* LAYERS_THICKNESS */
67     COMMON /LAYERS_V_TAVE/ layers_VFlux_T
68     #ifdef LAYERS_THICKNESS
69     & , layers_HV_T
70 jmc 1.2 #endif /* LAYERS_THICKNESS */
71 rpa 1.1 #endif /* LAYERS_VFLUX */
72    
73     #endif /* ALLOW_TIMEAVE */
74    
75    
76     C Isopycnal grid parameters:
77     C layers_G :: boundaries of isopycnal layers
78     C dZZ :: the vertical grid spacing
79     C NZZ :: the number of levels to use in the fine grid
80     C MapIndex :: indices for mapping ZZ to Z
81     C MapFact :: factors for interpolating T(Z) to T(ZZ)
82    
83     _RL layers_G(nLayers+1)
84     _RL dZZ
85     INTEGER MapIndex(FineGridMax), CellIndex(FineGridMax)
86     _RL MapFact(FineGridMax)
87     INTEGER NZZ
88 jmc 1.2 COMMON /LAYERS_VERT_GRID_I/
89     & NZZ, MapIndex, CellIndex
90     COMMON /LAYERS_VERT_GRID_R/
91     & layers_G, dZZ, MapFact
92 rpa 1.1
93    
94     #endif /* ALLOW_LAYERS */

  ViewVC Help
Powered by ViewVC 1.1.22