/[MITgcm]/MITgcm/eesupp/inc/EEPARAMS.h
ViewVC logotype

Annotation of /MITgcm/eesupp/inc/EEPARAMS.h

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


Revision 1.9 - (hide annotations) (download)
Tue May 29 14:01:35 2001 UTC (22 years, 11 months ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint40pre3, checkpoint40pre1, checkpoint40pre7, checkpoint40pre6, checkpoint40pre9, checkpoint40pre8, checkpoint40pre2, checkpoint40pre4, checkpoint40pre5, checkpoint40
Changes since 1.8: +5 -3 lines
File MIME type: text/plain
Merge from branch pre38:
 o essential mods for cubed sphere
 o debugged atmosphere, dynamcis + physics (aim)
 o new packages (mom_vecinv, mom_fluxform, ...)

1 adcroft 1.9 C $Header: /u/gcmpack/models/MITgcmUV/eesupp/inc/EEPARAMS.h,v 1.8.2.1 2001/03/28 17:37:41 adcroft Exp $
2     C $Name: $
3 cnh 1.1 C
4     C /==========================================================\
5     C | EEPARAMS.h |
6     C |==========================================================|
7     C | Parameters for "execution environemnt". These are used |
8     C | by both the particular numerical model and the "execution|
9     C | environment" support routines. |
10     C \==========================================================/
11    
12     C MAX_LEN_MBUF - Default message buffer max. size
13     C MAX_LEN_FNAM - Default file name max. size
14     C MAX_LEN_PREC - Default record length for reading "parameter" files
15     INTEGER MAX_LEN_MBUF
16     PARAMETER ( MAX_LEN_MBUF = 512 )
17     INTEGER MAX_LEN_FNAM
18     PARAMETER ( MAX_LEN_FNAM = 512 )
19     INTEGER MAX_LEN_PREC
20     PARAMETER ( MAX_LEN_PREC = 200 )
21    
22     C SQUEEZE_RIGHT - Flag indicating right blank space removal
23     C from text field.
24     C SQUEEZE_LEFT - Flag indicating left blank space removal
25     C from text field.
26     C SQUEEZE_BOTH - Flag indicating left and right blank
27     C space removal from text field.
28     C PRINT_MAP_XY - Flag indicating to plot map as XY slices
29     C PRINT_MAP_XZ - Flag indicating to plot map as XZ slices
30     C PRINT_MAP_YZ - Flag indicating to plot map as YZ slices
31     C commentCharacter - Variable used in column 1 of parameter files to
32     C indicate comments.
33 cnh 1.3 C INDEX_I - Variable used to select an index label
34     C INDEX_J for formatted input parameters.
35     C INDEX_K
36     C INDEX_NONE
37 cnh 1.1 CHARACTER*(*) SQUEEZE_RIGHT
38     PARAMETER ( SQUEEZE_RIGHT = 'R' )
39     CHARACTER*(*) SQUEEZE_LEFT
40     PARAMETER ( SQUEEZE_LEFT = 'L' )
41     CHARACTER*(*) SQUEEZE_BOTH
42     PARAMETER ( SQUEEZE_BOTH = 'B' )
43     CHARACTER*(*) PRINT_MAP_XY
44     PARAMETER ( PRINT_MAP_XY = 'XY' )
45     CHARACTER*(*) PRINT_MAP_XZ
46     PARAMETER ( PRINT_MAP_XZ = 'XZ' )
47     CHARACTER*(*) PRINT_MAP_YZ
48     PARAMETER ( PRINT_MAP_YZ = 'YZ' )
49     CHARACTER*(*) commentCharacter
50     PARAMETER ( commentCharacter = '#' )
51 cnh 1.3 INTEGER INDEX_I
52     INTEGER INDEX_J
53     INTEGER INDEX_K
54     INTEGER INDEX_NONE
55     PARAMETER ( INDEX_I = 1,
56     & INDEX_J = 2,
57     & INDEX_K = 3,
58     & INDEX_NONE = 4 )
59 cnh 1.1
60 cnh 1.5
61     C EXCH_IGNORE_CORNERS - Flag to select ignoring or
62     C EXCH_UPDATE_CORNERS updating of corners during
63     C an edge exchange.
64     INTEGER EXCH_IGNORE_CORNERS
65     INTEGER EXCH_UPDATE_CORNERS
66     PARAMETER ( EXCH_IGNORE_CORNERS = 0,
67     & EXCH_UPDATE_CORNERS = 1 )
68    
69     C FORWARD_SIMULATION
70     C REVERSE_SIMULATION
71     INTEGER FORWARD_SIMULATION
72     INTEGER REVERSE_SIMULATION
73     PARAMETER ( FORWARD_SIMULATION = 0,
74     & REVERSE_SIMULATION = 1 )
75    
76    
77 cnh 1.1 C Particularly weird and obscure voodoo numbers
78     C lShare - This wants to be the length in
79     C [148]-byte words of the size of
80     C the address "window" that is snooped
81     C on an SMP bus. By separating elements in
82     C the global sum buffer we can avoid generating
83     C extraneous invalidate traffic between
84     C processors. The length of this window is usually
85     C a cache line i.e. small O(64 bytes).
86     C The buffer arrays are usually short arrays
87     C and are declared REAL ARRA(lShare[148],LBUFF).
88     C Setting lShare[148] to 1 is like making these arrays
89     C one dimensional.
90 cnh 1.5 INTEGER cacheLineSize
91 cnh 1.1 INTEGER lShare1
92     INTEGER lShare4
93     INTEGER lShare8
94 cnh 1.5 PARAMETER ( cacheLineSize = 256 )
95     PARAMETER ( lShare1 = cacheLineSize )
96     PARAMETER ( lShare4 = cacheLineSize/4 )
97     PARAMETER ( lShare8 = cacheLineSize/8 )
98 cnh 1.1
99     C MAX_NO_THREADS - Maximum number of threads allowed.
100     C MAX_NO_PROCS - Maximum number of processes allowed.
101     C MAX_NO_BARRIERS - Maximum number of distinct thread "barriers"
102     INTEGER MAX_NO_THREADS
103 heimbach 1.7 PARAMETER ( MAX_NO_THREADS = 32 )
104 cnh 1.1 INTEGER MAX_NO_PROCS
105     PARAMETER ( MAX_NO_PROCS = 128 )
106     INTEGER MAX_NO_BARRIERS
107     PARAMETER ( MAX_NO_BARRIERS = 1 )
108    
109     C-- COMMON /EEPARAMS_L/ Execution environment public logical variables.
110     C eeBootError - Flag indicating error during multi-processing
111     C eeEndError initialisation/termination.
112     C fatalError - Flag used to indicate that the model is ended with
113     C an error
114 adcroft 1.9 COMMON /EEPARAMS_L/ eeBootError, fatalError, eeEndError,
115     & useCubedSphereExchange
116 cnh 1.1 LOGICAL eeBootError
117     LOGICAL eeEndError
118     LOGICAL fatalError
119 adcroft 1.9 LOGICAL useCubedSphereExchange
120 cnh 1.1
121     C-- COMMON /EPARAMS_I/ Execution environment public integer variables.
122     C errorMessageUnit - Fortran IO unit for error messages
123     C standardMessageUnit - Fortran IO unit for informational messages
124     C scrUnit1 - Scratch file 1 unit number
125     C scrUnit2 - Scratch file 2 unit number
126     C eeDataUnit - Unit number used for reading "execution environment" parameter file.
127     C modelDataUnit - Unit number for reading "model" parameter file.
128     C numberOfProcs - Number of processes computing in parallel
129     C pidIO - Id of process to use for I/O.
130     C myBxLo, myBxHi - Extents of domain in blocks in X and Y
131     C myByLo, myByHi that each threads is responsble for.
132     C myProcId - My own "process" id.
133     C myPx - My X coord on the proc. grid.
134     C myPy - My Y coord on the proc. grid.
135     C myXGlobalLo - My bottom-left (south-west) x-index
136     C global domain. The x-coordinate of this
137     C point in for example m or degrees is *not*
138     C specified here. A model needs to provide a
139     C mechanism for deducing that information if it
140     C is needed.
141     C myYGlobalLo - My bottom-left (south-west) y-index in
142     C global domain. The y-coordinate of this
143     C point in for example m or degrees is *not*
144     C specified here. A model needs to provide a
145     C mechanism for deducing that information if it
146     C is needed.
147     C nThreads - No. of threads
148     C nTx - No. of threads in X
149     C nTy - No. of threads in Y
150     C This assumes a simple cartesian
151     C gridding of the threads which is not required elsewhere
152     C but that makes it easier.
153 cnh 1.4 C ioErrorCount - IO Error Counter. Set to zero initially and increased
154     C by one every time an IO error occurs.
155 cnh 1.1 COMMON /EEPARAMS_I/ errorMessageUnit, standardMessageUnit,
156     & scrUnit1, scrUnit2, eeDataUnit, modelDataUnit,
157     & numberOfProcs, pidIO, myProcId,
158     & myPx, myPy, myXGlobalLo, myYGlobalLo, nThreads,
159     & myBxLo, myBxHi, myByLo, myByHi,
160 cnh 1.4 & nTx, nTy, ioErrorCount
161 cnh 1.1 INTEGER eeDataUnit
162     INTEGER errorMessageUnit
163 cnh 1.4 INTEGER ioErrorCount(MAX_NO_THREADS)
164 cnh 1.1 INTEGER modelDataUnit
165     INTEGER myBxLo(MAX_NO_THREADS)
166     INTEGER myBxHi(MAX_NO_THREADS)
167     INTEGER myByLo(MAX_NO_THREADS)
168     INTEGER myByHi(MAX_NO_THREADS)
169     INTEGER myProcId
170     INTEGER myPx
171     INTEGER myPy
172     INTEGER myXGlobalLo
173     INTEGER myYGlobalLo
174     INTEGER nThreads
175     INTEGER nTx
176     INTEGER nTy
177     INTEGER numberOfProcs
178     INTEGER pidIO
179     INTEGER scrUnit1
180     INTEGER scrUnit2
181     INTEGER standardMessageUnit

  ViewVC Help
Powered by ViewVC 1.1.22