/[MITgcm]/MITgcm/pkg/diagnostics/diagnostics_set_levels.F
ViewVC logotype

Contents of /MITgcm/pkg/diagnostics/diagnostics_set_levels.F

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


Revision 1.1 - (show annotations) (download)
Mon Dec 13 21:43:54 2004 UTC (19 years, 5 months ago) by jmc
Branch: MAIN
re-arrange diagnostics pkg initialization:
 allow each package to extend the available diagnostics list
 add some checking and fix small problems (multi-threaded, ...)

1 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagnostics_init_vals.F,v 1.25 2004/11/23 01:01:52 jmc Exp $
2 C $Name: $
3
4 #include "DIAG_OPTIONS.h"
5
6 CBOP 0
7 C !ROUTINE: DIAGNOSTICS_SET_LEVELS
8
9 C !INTERFACE:
10 SUBROUTINE DIAGNOSTICS_SET_LEVELS( myThid )
11
12 C !DESCRIPTION:
13 C Initialize Diagnostic Levels, according to GDIAG
14 C for all available diagnostics
15 C Notes: needs to be called after all packages set they own available
16 C diagnostics
17
18 C \begin{center}
19 C \begin{tabular}[h]{|c|c|}\hline
20 C \textbf{Positions} & \textbf{Characters}
21 C & \textbf{Meanings} \\\hline
22 C parse(10) & 0 & levels = 0 \\
23 C & 1 & levels = 1 \\
24 C & R & levels = Nr \\
25 C & L & levels = MAX(Nr,NrPhys) \\
26 C & M & levels = MAX(Nr,NrPhys) - 1 \\
27 C \end{tabular}
28 C \end{center}
29
30 C !USES:
31 IMPLICIT NONE
32
33 #include "SIZE.h"
34 #include "EEPARAMS.h"
35 c #include "EESUPPORT.h"
36 #include "PARAMS.h"
37 #include "DIAGNOSTICS_SIZE.h"
38 #include "DIAGNOSTICS.h"
39
40 #ifdef ALLOW_FIZHI
41 #include "fizhi_SIZE.h"
42 #else
43 INTEGER Nrphys
44 PARAMETER (Nrphys=0)
45 #endif
46
47 C !INPUT PARAMETERS:
48 INTEGER myThid
49 CEOP
50
51 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
52
53 INTEGER n, nlevs
54
55 nlevs = MAX(Nr,Nrphys)
56
57 c Diagnostic Levels
58 c -----------------
59 DO n = 1,ndiagt
60 IF (gdiag(n)(10:10) .EQ. '0') kdiag(n) = 0
61 IF (gdiag(n)(10:10) .EQ. '1') kdiag(n) = 1
62 IF (gdiag(n)(10:10) .EQ. 'R') kdiag(n) = Nr
63 IF (gdiag(n)(10:10) .EQ. 'L') kdiag(n) = nlevs
64 IF (gdiag(n)(10:10) .EQ. 'M') kdiag(n) = nlevs - 1
65 ENDDO
66
67 RETURN
68 END

  ViewVC Help
Powered by ViewVC 1.1.22