/[MITgcm]/MITgcm/pkg/diagnostics/DIAGNOSTICS.h
ViewVC logotype

Contents of /MITgcm/pkg/diagnostics/DIAGNOSTICS.h

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


Revision 1.15 - (show annotations) (download)
Thu May 22 08:36:05 2008 UTC (15 years, 11 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint60, checkpoint61, checkpoint62, checkpoint59r, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.14: +6 -1 lines
File MIME type: text/plain
add runtime parameter (missing_value, missing_value_int) to override
default (which is the value of getcon('UNDEF'))

1 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/DIAGNOSTICS.h,v 1.14 2008/02/05 15:13:01 jmc Exp $
2 C $Name: $
3
4 C ======================================================================
5 C Common blocks for diagnostics package.
6 C - DIAG_DEFINE contains the definition of all available diagnostics
7 C ndiagt :: total number of available diagnostics
8 C kdiag :: number of levels associated with the diagnostic
9 C cdiag :: list of available diagnostic names
10 C tdiag :: description of field in diagnostic
11 C gdiag :: parser field with characteristics of the diagnostics
12 C hdiag :: mate number (in available diag. list) of the diagnostic
13 C udiag :: physical units of the diagnostic field
14 C - DIAG_STORE contains the large array to store diagnostic fields
15 C qdiag :: storage array for 2D/3D diagnostic fields
16 C qSdiag :: storage array for diagnostics of (per level) statistics
17 C ndiag :: holds number of times a diagnostic is filled (for time-mean diag)
18 C - DIAG_SELECT contains the user selection of diagnostics to write
19 C idiag :: slot number in large diagnostic array
20 C mdiag :: slot number in large diagnostic array for the mate
21 C jdiag :: short-list (active diag.) to long-list (available diag.)
22 C pointer
23 C - DIAG_STATIS contains the user selection of statistics to write
24 C ======================================================================
25
26 C-- DIAG_DEFINE common block:
27 C ndiagt :: total number of available diagnostics
28 C kdiag :: number of levels associated with the diagnostic
29 C cdiag :: list of available diagnostic names
30 C tdiag :: description of field in diagnostic
31 C gdiag :: parser field with characteristics of the diagnostics
32 C hdiag :: mate number (in available diag. list) of the diagnostic
33 C udiag :: physical units of the diagnostic field
34
35 INTEGER ndiagt
36 INTEGER kdiag(ndiagMax)
37 INTEGER hdiag(ndiagMax)
38 CHARACTER*8 cdiag(ndiagMax)
39 CHARACTER*80 tdiag(ndiagMax)
40 CHARACTER*16 gdiag(ndiagMax)
41 CHARACTER*16 udiag(ndiagMax)
42
43 COMMON / DIAG_DEFINE /
44 & ndiagt, kdiag, hdiag,
45 & cdiag, tdiag, gdiag, udiag
46
47 C-- DIAG_STORE common block:
48 C qdiag :: storage array for 2D/3D diagnostic fields
49 C qSdiag :: storage array for (per level) statistics
50 C ndiag :: holds number of times a diagnostic is filled (for time-mean diag)
51 C pdiag :: index of current averaging interval within the averaging-cycle
52
53 _RL qdiag(1-OLx:sNx+Olx,1-Oly:sNy+Oly,numDiags,nSx,nSy)
54 _RL qSdiag(0:nStats,0:nRegions,diagSt_size,nSx,nSy)
55 INTEGER ndiag(numDiags,nSx,nSy)
56 INTEGER pdiag(numlists,nSx,nSy)
57
58 COMMON / DIAG_STORE / qdiag, qSdiag, ndiag, pdiag
59
60
61 C-- DIAG_SELECT common block:
62 C freq :: frequency (in s) to write output stream # n
63 C phase :: phase (in s) to write output stream # n
64 C averageFreq :: frequency (in s) for periodic averaging interval
65 C averagePhase:: phase (in s) for periodic averaging interval
66 C averageCycle:: number of averaging intervals in 1 cycle
67 C misvalFlt(n):: missing value for floats to use in output stream #n
68 C misvalInt(n):: missing value for integers to use in output stream #n
69 C nfields(n) :: number of active diagnostics for output stream # n
70 C nActive(n) :: number of active diagnostics (including counters)
71 C for output stream # n
72 C nlists :: effective number of output streams
73 C idiag :: slot number in large diagnostic array
74 C mdiag :: slot number in large diagnostic array for the mate
75 C jdiag :: short-list (active diag.) to long-list (available diag.) pointer
76 C flds(:,n) :: list of field names in output stream # n
77 C fnames(n) :: output file name for output stream # n
78 C fflags(n) :: character string with per-file flags
79
80 _RL freq(numlists), phase(numlists)
81 _RL levs (numLevels,numlists)
82 _RL averageFreq(numlists), averagePhase(numlists)
83 _RL misvalFlt(numlists)
84 INTEGER misvalInt(numlists)
85 INTEGER averageCycle(numlists)
86 INTEGER nlevels(numlists)
87 INTEGER nfields(numlists)
88 INTEGER nActive(numlists)
89 INTEGER nlists
90 INTEGER idiag(numperlist,numlists)
91 INTEGER mdiag(numperlist,numlists)
92 INTEGER jdiag(numperlist,numlists)
93 CHARACTER*8 flds (numperlist,numlists)
94 CHARACTER*80 fnames(numlists)
95 CHARACTER*8 fflags(numlists)
96 LOGICAL dumpAtLast, diag_mdsio, diag_mnc
97 LOGICAL diag_pickup_read, diag_pickup_write
98 LOGICAL diag_pickup_read_mdsio, diag_pickup_write_mdsio
99 LOGICAL diag_pickup_read_mnc, diag_pickup_write_mnc
100
101 COMMON / DIAG_SELECT /
102 & freq, phase, levs,
103 & averageFreq, averagePhase, averageCycle,
104 & misvalFlt, misvalInt,
105 & nlevels, nfields, nActive, nlists,
106 & idiag, mdiag, jdiag,
107 & dumpAtLast, diag_mdsio, diag_mnc,
108 & diag_pickup_read, diag_pickup_write,
109 & diag_pickup_read_mdsio, diag_pickup_write_mdsio,
110 & diag_pickup_read_mnc, diag_pickup_write_mnc,
111 & flds, fnames, fflags
112
113 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
114
115 C-- DIAG_STATIS common block:
116 C iSdiag :: slot number in large diagnostic array
117 C mSdiag :: slot number in large diagnostic array for the mate
118 C jSdiag :: short-list (active diag.) to long-list (available diag.)
119 C pointer
120 C diagSt_region(j,n) :: flag to perform (=1) or not (=0) regional-statistics
121 C over region # j for output stream # n
122 C diagSt_freq(n) :: frequency (in s) to write output stream # n
123 C diagSt_phase(n) :: phase (in s) to write output stream # n
124 C diagSt_nbFlds(n) :: number of active diagnostics for output stream # n
125 C diagSt_nbActv(n) :: number of active diagnostics (including counters)
126 C for output stream # n
127 C diagSt_nbLists :: effective number of output streams
128 C diagSt_ioUnit(n) :: fortran IO unit for output stream # n (ascii output)
129 C diagSt_Flds(:,n) :: list of field names in output stream # n
130 C diagSt_Fname(n) :: output file name for output stream # n
131
132 _RL diagSt_freq(numlists), diagSt_phase(numlists)
133 CHARACTER*8 diagSt_Flds(numperlist,numlists)
134 CHARACTER*80 diagSt_Fname(numlists)
135 INTEGER iSdiag(numperlist,numlists)
136 INTEGER jSdiag(numperlist,numlists)
137 INTEGER mSdiag(numperlist,numlists)
138 INTEGER diagSt_region(0:nRegions,numlists)
139 INTEGER diagSt_nbFlds(numlists)
140 INTEGER diagSt_nbActv(numlists)
141 INTEGER diagSt_nbLists
142 INTEGER diagSt_ioUnit(numlists)
143 LOGICAL diagSt_ascii, diagSt_mnc
144 COMMON / DIAG_STATIS /
145 & diagSt_freq, diagSt_phase,
146 & iSdiag, jSdiag, mSdiag, diagSt_region,
147 & diagSt_nbFlds, diagSt_nbActv, diagSt_nbLists,
148 & diagSt_ioUnit,
149 & diagSt_Ascii, diagSt_mnc,
150 & diagSt_Flds, diagSt_Fname
151
152 CEH3 ;;; Local Variables: ***
153 CEH3 ;;; mode:fortran ***
154 CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22