/[MITgcm]/MITgcm/pkg/generic_advdiff/GAD.h
ViewVC logotype

Diff of /MITgcm/pkg/generic_advdiff/GAD.h

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

revision 1.4 by heimbach, Mon Jul 30 20:42:45 2001 UTC revision 1.17 by jmc, Thu Jan 25 17:29:15 2007 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4  C Parameter common bloack  CBOP
5        INTEGER gad_advection_scheme  C !ROUTINE: GAD.h
 c     COMMON /GAD_PARS/  
 c    &    gad_advection_scheme  
       PARAMETER(gad_advection_scheme=2)  
6    
7  C Enumerated constants for selecting advection schemes  C !INTERFACE:
8    C #include "GAD.h"
9    
10  C Centered 2nd order  C !DESCRIPTION:
11    C Contains enumerated constants for distinguishing between different
12    C advection schemes and tracers.
13    C
14    C Unfortunately, there is no easy way to make use of the
15    C tokens in namelist input so for now we have to enter the
16    C tokens value into "data" (ie. 2 for 2nd order etc.)
17    
18    C !USES:
19    
20    C !DEFINED PARAMETERS:
21    
22    C ENUM_UPWIND_1RST :: 1rst Order Upwind
23          INTEGER ENUM_UPWIND_1RST
24          PARAMETER(ENUM_UPWIND_1RST=1)
25    
26    C ENUM_CENTERED_2ND :: Centered 2nd order
27        INTEGER ENUM_CENTERED_2ND        INTEGER ENUM_CENTERED_2ND
28        PARAMETER(ENUM_CENTERED_2ND=2)        PARAMETER(ENUM_CENTERED_2ND=2)
29    
30  C 3rd order upwind  C ENUM_UPWIND_3RD :: 3rd order upwind
31        INTEGER ENUM_UPWIND_3RD        INTEGER ENUM_UPWIND_3RD
32        PARAMETER(ENUM_UPWIND_3RD=3)        PARAMETER(ENUM_UPWIND_3RD=3)
33    
34  C Centered 4th order  C ENUM_CENTERED_4TH :: Centered 4th order
35        INTEGER ENUM_CENTERED_4TH        INTEGER ENUM_CENTERED_4TH
36        PARAMETER(ENUM_CENTERED_4TH=4)        PARAMETER(ENUM_CENTERED_4TH=4)
37    
38  C Non-linear flux limiter  C ENUM_DST2 :: 2nd Order Direct Space and Time (= Lax-Wendroff)
39          INTEGER ENUM_DST2
40          PARAMETER(ENUM_DST2=20)
41    
42    C ENUM_FLUX_LIMIT :: Non-linear flux limiter
43        INTEGER ENUM_FLUX_LIMIT        INTEGER ENUM_FLUX_LIMIT
44        PARAMETER(ENUM_FLUX_LIMIT=77)        PARAMETER(ENUM_FLUX_LIMIT=77)
45    
46  C Third/fourth order interpolation factor  C ENUM_DST3 :: 3rd Order Direst Space and Time
47          INTEGER ENUM_DST3
48          PARAMETER(ENUM_DST3=30)
49    
50    C ENUM_DST3_FLUX_LIMIT :: 3-DST flux limited
51          INTEGER ENUM_DST3_FLUX_LIMIT
52          PARAMETER(ENUM_DST3_FLUX_LIMIT=33)
53    
54    C ENUM_OS7MP :: 7th Order One Step method with Monotonicity Preserving Limiter
55          INTEGER ENUM_OS7MP
56          PARAMETER(ENUM_OS7MP=7)
57    
58    C ENUM_SOM_PRATHER :: 2nd Order-Moment Advection Scheme, Prather, 1986
59          INTEGER ENUM_SOM_PRATHER
60          PARAMETER(ENUM_SOM_PRATHER=80)
61    
62    C ENUM_SOM_LIMITER :: 2nd Order-Moment Advection Scheme, Prather Limiter
63          INTEGER ENUM_SOM_LIMITER
64          PARAMETER(ENUM_SOM_LIMITER=81)
65    
66    C nSOM :: number of 1rst & 2nd Order-Moments: 1+1 (1D), 2+3 (2D), 3+6 (3D)
67          INTEGER nSOM
68          PARAMETER( nSOM = 3+6 )
69    
70    C oneSixth :: Third/fourth order interpolation factor
71        _RL oneSixth        _RL oneSixth
72        PARAMETER(oneSixth=1.D0/6.D0)        PARAMETER(oneSixth=1.D0/6.D0)
73    
74  C Differentiate between tracers (only needed for KPP -  arrgh!!!)  C Differentiate between tracers (needed for KPP - arrgh!!!)
75    cph                              and GMRedi arrgh*arrgh!!!)
76    cph  indices are used for TAF key computations, so need to
77    cph  running from 1, 2, ...
78    c
79    C GAD_TEMPERATURE :: temperature
80        INTEGER GAD_TEMPERATURE        INTEGER GAD_TEMPERATURE
81        PARAMETER(GAD_TEMPERATURE=101)        PARAMETER(GAD_TEMPERATURE=1)
82    C GAD_SALINITY :: salinity
83        INTEGER GAD_SALINITY        INTEGER GAD_SALINITY
84        PARAMETER(GAD_SALINITY=102)        PARAMETER(GAD_SALINITY=2)
85    C GAD_TR1 :: passive tracer 1
86        INTEGER GAD_TR1        INTEGER GAD_TR1
87        PARAMETER(GAD_TR1=103)        PARAMETER(GAD_TR1=3)
88    CEOP
89    
90    C--   COMMON /GAD_PARM_L/ Logical parameters for GAD pkg routines
91    C tempSOM_Advection :: set to T if using 2nd-Order Moment advection for Temp
92    C saltSOM_Advection :: set to T if using 2nd-Order Moment advection for Salt
93    C tempMultiDimAdvec :: set to T if using multi-dim advection for Temp
94    C saltMultiDimAdvec :: set to T if using multi-dim advection for Salt
95    C AdamsBashforthGt  :: apply Adams-Bashforth extrapolation on T tendency (=Gt)
96    C AdamsBashforthGs  :: apply Adams-Bashforth extrapolation on S tendency (=Gs)
97    C AdamsBashforth_T  :: apply Adams-Bashforth extrapolation on Pot.Temp.
98    C AdamsBashforth_S  :: apply Adams-Bashforth extrapolation on Salinity
99    C tempStartAB       :: start this run (or restart) without previous gT/Temp
100    C saltStartAB       :: start this run (or restart) without previous gS/Salt
101          LOGICAL tempSOM_Advection
102          LOGICAL saltSOM_Advection
103          LOGICAL tempMultiDimAdvec
104          LOGICAL saltMultiDimAdvec
105          LOGICAL AdamsBashforthGt
106          LOGICAL AdamsBashforthGs
107          LOGICAL AdamsBashforth_T
108          LOGICAL AdamsBashforth_S
109          LOGICAL tempStartAB
110          LOGICAL saltStartAB
111          COMMON /GAD_PARM_L/
112         & tempSOM_Advection, saltSOM_Advection,
113         & tempMultiDimAdvec, saltMultiDimAdvec,
114         & AdamsBashforthGt, AdamsBashforthGs,
115         & AdamsBashforth_T, AdamsBashforth_S,
116         & tempStartAB, saltStartAB
117    
118    CEH3 ;;; Local Variables: ***
119    CEH3 ;;; mode:fortran ***
120    CEH3 ;;; End: ***

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

  ViewVC Help
Powered by ViewVC 1.1.22