1 |
C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/DIAGNOSTICS.h,v 1.10 2005/06/26 16:51:49 jmc Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
C ====================================================================== |
5 |
C Common blocks for diagnostics package. |
6 |
C - diagarrays contains the master list of diagnostics and parameters |
7 |
C ndiagt :: total number of available diagnostics |
8 |
C kdiag - number of levels associated with the diagnostic |
9 |
C cdiag - character names |
10 |
C tdiag - description of field in diagnostic |
11 |
C gdiag - parser field with characteristics of the diagnostics |
12 |
C udiag - physical units of the diagnostic field |
13 |
C - diagnostics contains the large array containing diagnostic fields |
14 |
C qdiag - diagnostic fields array |
15 |
C qSdiag - storage array for diagnostics of (per level) statistics |
16 |
C ndiag - counter for number of times diagnostic is added |
17 |
C - diag_choices contains the user-chosen list of fields to store |
18 |
C idiag - slot number in large diagnostic array |
19 |
C mdiag - slot number in large diagnostic array for the mate |
20 |
C jdiag - short-list (active diag.) to long-list (available diag.) |
21 |
C pointer |
22 |
C - diag_statis contains the user-chosen list of statistics to store |
23 |
C ====================================================================== |
24 |
|
25 |
C diagarrays common |
26 |
|
27 |
integer ndiagt |
28 |
|
29 |
integer kdiag(ndiagMax) |
30 |
character*8 cdiag(ndiagMax) |
31 |
character*80 tdiag(ndiagMax) |
32 |
character*16 gdiag(ndiagMax) |
33 |
character*16 udiag(ndiagMax) |
34 |
|
35 |
common /diagarrays/ ndiagt |
36 |
common /diagarrays/ kdiag |
37 |
common /diagarrays/ cdiag |
38 |
common /diagarrays/ tdiag |
39 |
common /diagarrays/ gdiag |
40 |
common /diagarrays/ udiag |
41 |
|
42 |
C diagnostics common |
43 |
C qSdiag - storage array for (per level) statistics |
44 |
|
45 |
_RL qdiag(1-OLx:sNx+Olx,1-Oly:sNy+Oly,numdiags,nSx,nSy) |
46 |
_RL qSdiag(0:nStats,0:nRegions,diagSt_size,nSx,nSy) |
47 |
integer ndiag(numdiags,nSx,nSy) |
48 |
|
49 |
common /diagnostics/ qdiag, qSdiag, ndiag |
50 |
|
51 |
|
52 |
C diag_choices common |
53 |
C freq :: frequency (in s) to write output stream # n |
54 |
C phase :: phase (in s) to write output stream # n |
55 |
C nfields(n) :: number of active diagnostics for output stream # n |
56 |
C nActive(n) :: number of active diagnostics (including counters) |
57 |
C for output stream # n |
58 |
C fflags(n) :: character string with per-file flags |
59 |
|
60 |
integer nlists |
61 |
|
62 |
_RL freq(numlists), phase(numlists) |
63 |
_RL levs (numLevels,numlists) |
64 |
integer nlevels(numlists) |
65 |
integer nfields(numlists) |
66 |
integer nActive(numlists) |
67 |
integer idiag(numperlist,numlists) |
68 |
integer mdiag(numperlist,numlists) |
69 |
integer jdiag(numperlist,numlists) |
70 |
character*8 flds (numperlist,numlists) |
71 |
character*80 fnames(numlists) |
72 |
character*8 fflags(numlists) |
73 |
logical dumpatlast, diag_mdsio, diag_mnc |
74 |
logical diag_pickup_read, diag_pickup_write |
75 |
logical diag_pickup_read_mdsio, diag_pickup_write_mdsio |
76 |
logical diag_pickup_read_mnc, diag_pickup_write_mnc |
77 |
|
78 |
common /diag_choices/ |
79 |
& freq, phase, levs, nlevels, |
80 |
& nfields, nActive, nlists, |
81 |
& idiag, mdiag, jdiag, |
82 |
& dumpatlast, diag_mdsio, diag_mnc, |
83 |
& diag_pickup_read, diag_pickup_write, |
84 |
& diag_pickup_read_mdsio, diag_pickup_write_mdsio, |
85 |
& diag_pickup_read_mnc, diag_pickup_write_mnc, |
86 |
& flds, fnames, fflags |
87 |
|
88 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
89 |
|
90 |
_RL diagSt_freq(numlists), diagSt_phase(numlists) |
91 |
CHARACTER*8 diagSt_Flds(numperlist,numlists) |
92 |
CHARACTER*80 diagSt_Fname(numlists) |
93 |
INTEGER iSdiag(numperlist,numlists) |
94 |
INTEGER jSdiag(numperlist,numlists) |
95 |
INTEGER mSdiag(numperlist,numlists) |
96 |
INTEGER diagSt_region(0:nRegions,numlists) |
97 |
INTEGER diagSt_nbFlds(numlists) |
98 |
INTEGER diagSt_nbActv(numlists) |
99 |
INTEGER diagSt_nbLists |
100 |
INTEGER diagSt_ioUnit(numlists) |
101 |
LOGICAL diagSt_ascii, diagSt_mnc |
102 |
COMMON / DIAG_STATIS / |
103 |
& diagSt_freq, diagSt_phase, |
104 |
& iSdiag, jSdiag, mSdiag, diagSt_region, |
105 |
& diagSt_nbFlds, diagSt_nbActv, diagSt_nbLists, |
106 |
& diagSt_ioUnit, |
107 |
& diagSt_Ascii, diagSt_mnc, |
108 |
& diagSt_Flds, diagSt_Fname |
109 |
|
110 |
CEH3 ;;; Local Variables: *** |
111 |
CEH3 ;;; mode:fortran *** |
112 |
CEH3 ;;; End: *** |