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

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

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


Revision 1.18 - (hide annotations) (download)
Thu Feb 10 21:24:19 2011 UTC (13 years, 4 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62s, checkpoint62w, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint63
Changes since 1.17: +18 -4 lines
File MIME type: text/plain
add Boundary-Value-Problem bolus transport (Ferrari etal, OM 2010)
 code from Christopher Wolfe (UCSD).

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

  ViewVC Help
Powered by ViewVC 1.1.22