/[MITgcm]/MITgcm/pkg/layers/LAYERS.h
ViewVC logotype

Annotation of /MITgcm/pkg/layers/LAYERS.h

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


Revision 1.3 - (hide annotations) (download)
Wed Sep 30 15:58:29 2009 UTC (14 years, 9 months ago) by dfer
Branch: MAIN
CVS Tags: checkpoint62, checkpoint61w, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.2: +4 -2 lines
File MIME type: text/plain
- introduce tave and dump frequencies specific to the package
- fix timeave outputs

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

  ViewVC Help
Powered by ViewVC 1.1.22