/[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.4 - (hide annotations) (download)
Thu May 21 18:30:45 1998 UTC (25 years, 10 months ago) by cnh
Branch: MAIN
CVS Tags: checkpoint11, checkpoint10, checkpoint13, checkpoint14, checkpoint5, checkpoint4, checkpoint7, checkpoint6, checkpoint3, checkpoint2, checkpoint9, checkpoint8, checkpoint12, branch-point-rdot
Branch point for: checkpoint7-4degree-ref, branch-rdot
Changes since 1.3: +5 -2 lines
File MIME type: text/plain
Added support for binary IO of model fields for restart and/or
postprocessing

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

  ViewVC Help
Powered by ViewVC 1.1.22