/[MITgcm]/MITgcm/pkg/gmredi/GMREDI.h
ViewVC logotype

Diff of /MITgcm/pkg/gmredi/GMREDI.h

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

revision 1.2 by heimbach, Mon Nov 13 16:35:28 2000 UTC revision 1.17 by jmc, Tue Jan 11 00:54:45 2011 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2    C $Name$
3    
4  #ifdef ALLOW_GMREDI  #ifdef ALLOW_GMREDI
5    
6  C     Package flag  C---  GM/Redi package parameters
       logical gmrediIsOn  
7    
8  C     GM/Redi parameters  C--   Numerical Constant
9          _RL op5
10          _RL op25
11          PARAMETER( op5  = 0.5 _d 0 )
12          PARAMETER( op25 = 0.25 _d 0 )
13    
14    C--   COMMON /GM_PARAMS_L/ GM/Redi Logical-type parameters
15    C     GM_AdvForm       :: use Advective Form (instead of Skew-Flux form)
16    C     GM_AdvSeparate   :: do separately advection by Eulerian and Bolus velocity
17    C     GM_ExtraDiag     :: select extra diagnostics
18    C     GM_InMomAsStress :: apply GM as a stress in momentum Eq.
19    C     GM_MNC           ::
20    C     GM_MDSIO         ::
21          LOGICAL GM_AdvForm
22          LOGICAL GM_AdvSeparate
23          LOGICAL GM_ExtraDiag
24          LOGICAL GM_InMomAsStress
25          LOGICAL GM_MNC
26          LOGICAL GM_MDSIO
27          COMMON /GM_PARAMS_L/
28         &                   GM_AdvForm, GM_AdvSeparate,
29         &                   GM_ExtraDiag, GM_MNC, GM_MDSIO,
30         &                   GM_InMomAsStress
31    
32    C--   COMMON /GM_PARAMS_C/ GM/Redi Character-type parameters
33    C     GM_taper_scheme :: select which tapering/clipping scheme to use
34    C     GM_iso2dFile :: input file for 2.D horiz scaling of Isopycnal diffusivity
35    C     GM_iso1dFile :: input file for 1.D vert. scaling of Isopycnal diffusivity
36    C     GM_bol2dFile :: input file for 2.D horiz scaling of Thickness diffusivity
37    C     GM_bol1dFile :: input file for 1.D vert. scaling of Thickness diffusivity
38          CHARACTER*(40) GM_taper_scheme
39          CHARACTER*(MAX_LEN_FNAM) GM_iso2dFile
40          CHARACTER*(MAX_LEN_FNAM) GM_iso1dFile
41          CHARACTER*(MAX_LEN_FNAM) GM_bol2dFile
42          CHARACTER*(MAX_LEN_FNAM) GM_bol1dFile
43          COMMON /GM_PARAMS_C/
44         &                   GM_taper_scheme,
45         &                   GM_iso2dFile, GM_iso1dFile,
46         &                   GM_bol2dFile, GM_bol1dFile
47    
48    C--   COMMON /GM_PARAMS_R/ GM/Redi real-type parameters
49    C     GM_isopycK       :: Isopycnal diffusivity [m^2/s] (Redi-tensor)
50    C     GM_background_K  :: Thickness diffusivity [m^2/s] (GM bolus transport)
51    C     GM_maxSlope      :: maximum slope (tapering/clipping) [-]
52    C     GM_Kmin_horiz    :: minimum horizontal diffusivity [m^2/s]
53    C     GM_Small_Number  :: epsilon used in computing the slope
54    C     GM_slopeSqCutoff :: slope^2 cut-off value
55    C-    transition layer thickness definition:
56    C     GM_facTrL2dz   :: minimum Trans. Layer Thick. as a factor of local dz
57    C     GM_facTrL2ML   :: maximum Trans. Layer Thick. as a factor of Mix-Layer Depth
58    C     GM_maxTransLay :: maximum Trans. Layer Thick. [m]
59          _RL GM_isopycK
60        _RL GM_background_K        _RL GM_background_K
61        _RL GM_maxSlope        _RL GM_maxSlope
62          _RL GM_Kmin_horiz
63          _RL GM_Small_Number
64          _RL GM_slopeSqCutoff
65        _RL GM_Visbeck_alpha        _RL GM_Visbeck_alpha
66        _RL GM_Visbeck_length        _RL GM_Visbeck_length
67        _RL GM_Visbeck_depth        _RL GM_Visbeck_depth
68        _RL GM_Visbeck_maxval_K        _RL GM_Visbeck_minDepth
69        CHARACTER*(MAX_LEN_FNAM) GM_taper_scheme        _RL GM_Visbeck_maxSlope
70          _RL GM_Visbeck_minVal_K
71          _RL GM_Visbeck_maxVal_K
72          _RL GM_facTrL2dz
73          _RL GM_facTrL2ML
74          _RL GM_maxTransLay
75        _RL GM_Scrit        _RL GM_Scrit
76        _RL GM_Sd        _RL GM_Sd
77        COMMON /GM_PARAMS/ GM_background_K,        COMMON /GM_PARAMS_R/
78         &                   GM_isopycK, GM_background_K,
79       &                   GM_maxSlope,       &                   GM_maxSlope,
80       &                   GM_Visbeck_alpha,       &                   GM_Kmin_horiz,
81       &                   GM_Visbeck_length,       &                   GM_Small_Number, GM_slopeSqCutoff,
82         &                   GM_Visbeck_alpha, GM_Visbeck_length,
83       &                   GM_Visbeck_depth,       &                   GM_Visbeck_depth,
84       &                   GM_Visbeck_maxval_K,       &                   GM_Visbeck_minDepth, GM_Visbeck_maxSlope,
85       &                   GM_taper_scheme,       &                   GM_Visbeck_minVal_K, GM_Visbeck_maxVal_K,
86       &                   GM_Scrit,       &                   GM_facTrL2dz, GM_facTrL2ML, GM_maxTransLay,
87       &                   GM_Sd       &                   GM_Scrit, GM_Sd
   
88    
89  C     More GM/Redi parameters diagnosed from previous block  C--   COMMON /GM_DERIVED_PAR/ other GM/Redi parameters
90  C     (not directly user configured)  C     (derived from previous block and not directly user configured)
91        _RL GM_rMaxSlope        _RL GM_rMaxSlope
92        COMMON /GM_PARAMS2/ GM_rMaxSlope        _RL GM_skewflx
93          _RL GM_advect
94          COMMON /GM_DERIVED_PAR/
95         &                   GM_rMaxSlope,
96         &                   GM_skewflx, GM_advect
97    
98    C--   COMMON /GM_COEFFICIENTS/ GM/Redi scaling coefficients
99    C     defined at grid-cell center (tracer location)
100    C     GM_isoFac2d  :: 2.D horiz scaling factor [-] of Isopycnal diffusivity
101    C     GM_bolFac2d  :: 2.D horiz scaling factor [-] of Thickness diffusivity
102    C     GM_isoFac1d  :: 1.D vert. scaling factor [-] of Isopycnal diffusivity
103    C     GM_bolFac1d  :: 1.D vert. scaling factor [-] of Thickness diffusivity
104          _RS GM_isoFac2d(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
105          _RS GM_bolFac2d(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
106          _RS GM_isoFac1d(Nr)
107          _RS GM_bolFac1d(Nr)
108          COMMON /GM_COEFFICIENTS/
109         &  GM_isoFac2d, GM_bolFac2d, GM_isoFac1d, GM_bolFac1d
110    
111    C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
112  C     GM/Redi tensor elements  C---  GM/Redi tensor elements
113    
114  C     Bottom row of tensor corresponds to W points  C     Bottom row of tensor corresponds to W points
115  C     Kwx is K_31 element, X direction at W point  C     Kwx :: K_31 element of GM/Redi tensor, X direction at W point
116  C     Kwy is K_32 element, Y direction at W point  C     Kwy :: K_32 element of GM/Redi tensor, Y direction at W point
117  C     Kwz is K_33 element, Z direction at W point  C     Kwz :: K_33 element of GM/Redi tensor, Z direction at W point
118        _RL Kwx(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,MAX_NO_THREADS)        _RL Kwx(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
119        _RL Kwy(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,MAX_NO_THREADS)        _RL Kwy(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
120        _RL Kwz(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,MAX_NO_THREADS)        _RL Kwz(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
121        COMMON /GM_Wtensor/ Kwx,Kwy,Kwz        COMMON /GM_Wtensor/ Kwx,Kwy,Kwz
122    
123  #ifdef GM_NON_UNITY_DIAGONAL  #ifdef GM_NON_UNITY_DIAGONAL
124  C     First/second rows of tensor corresponds to U/V points  C     Horizontal part of the tensor
125  C     Kux is K_11 element, X direction at U point  C     Kux :: K_11 element of GM/Redi tensor, X direction at U point
126  C     Kvy is K_22 element, Y direction at V point  C     Kvy :: K_22 element of GM/Redi tensor, Y direction at V point
127        _RL Kux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,MAX_NO_THREADS)        _RL Kux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
128        _RL Kvy(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,MAX_NO_THREADS)        _RL Kvy(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
129        COMMON /GM_UVtensor/ Kux,Kvy        COMMON /GM_HorTensor/ Kux,Kvy
130  #else  #else
131        _RL Kux,Kvy        _RL Kux,Kvy
132        PARAMETER(Kux=1.,Kvy=1.)        PARAMETER(Kux=1.,Kvy=1.)
133  #endif  #endif
134    
135    #ifdef GM_EXTRA_DIAGONAL
136    C     First/second rows of tensor corresponds to U/V points
137    C     Kuz :: K_13 element of GM/Redi tensor, Z direction at U point
138    C     Kvz :: K_23 element of GM/Redi tensor, Z direction at V point
139          _RL Kuz(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
140          _RL Kvz(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
141          COMMON /GM_UVtensor/ Kuz,Kvz
142    #else
143          _RL Kuz,Kvz
144          PARAMETER(Kuz=1.,Kvz=1.)
145    #endif
146    
147    #ifdef GM_BOLUS_ADVEC
148    C     GM advection formulation: bolus velocities are derived from 2
149    C        streamfunctions PsiX and PsiY :
150          _RL GM_PsiX(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
151          _RL GM_PsiY(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
152          COMMON /GM_BOLUS/ GM_PsiX,GM_PsiY
153    #endif
154    
155  #ifdef GM_VISBECK_VARIABLE_K  #ifdef GM_VISBECK_VARIABLE_K
156  C     GM mixing/stirring coefficient (spatially variable in horizontal  C     GM mixing/stirring coefficient (spatially variable in horizontal
157  C     for Visbeck et al. parameterization)  C     for Visbeck et al. parameterization)
158        _RL VisbeckK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,MAX_NO_THREADS)        _RL VisbeckK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
159        COMMON /GM_Visbeck/ VisbeckK        COMMON /GM_Visbeck/ VisbeckK
160  #endif  #endif
161    
162  #endif /* ALLOW_GMREDI */  #endif /* ALLOW_GMREDI */
163    
164    CEH3 ;;; Local Variables: ***
165    CEH3 ;;; mode:fortran ***
166    CEH3 ;;; End: ***

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

  ViewVC Help
Powered by ViewVC 1.1.22