1 |
C $Header: /u/gcmpack/MITgcm/pkg/layers/layers_diagnostics_init.F,v 1.5 2011/06/07 22:20:58 jmc Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
#include "LAYERS_OPTIONS.h" |
5 |
|
6 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
7 |
|
8 |
SUBROUTINE LAYERS_DIAGNOSTICS_INIT( myThid ) |
9 |
|
10 |
C =================================================================== |
11 |
C Initialize LAYERS variables that are kept fixed during the run. |
12 |
C =================================================================== |
13 |
|
14 |
IMPLICIT NONE |
15 |
#include "EEPARAMS.h" |
16 |
#include "SIZE.h" |
17 |
#include "PARAMS.h" |
18 |
#include "GRID.h" |
19 |
#ifdef ALLOW_LAYERS |
20 |
# include "LAYERS_SIZE.h" |
21 |
# include "LAYERS.h" |
22 |
#endif |
23 |
#ifdef ALLOW_DIAGNOSTICS |
24 |
# include "DIAGNOSTICS_SIZE.h" |
25 |
# include "DIAGNOSTICS.h" |
26 |
#endif |
27 |
|
28 |
C INPUT/OUTPUT PARAMETERS: |
29 |
C myThid :: my Thread Id number |
30 |
INTEGER myThid |
31 |
|
32 |
INTEGER diagNum |
33 |
INTEGER diagMate |
34 |
CHARACTER*8 diagName |
35 |
CHARACTER*16 diagCode |
36 |
CHARACTER*16 diagUnits |
37 |
CHARACTER*(80) diagTitle |
38 |
|
39 |
#ifdef ALLOW_LAYERS |
40 |
#ifdef ALLOW_DIAGNOSTICS |
41 |
IF ( useDiagnostics ) THEN |
42 |
|
43 |
diagNum=ndiagt |
44 |
|
45 |
#ifdef LAYERS_UFLUX |
46 |
diagName = 'LaUH ' |
47 |
diagTitle = 'Layer Integrated U (UH in m2/s)' |
48 |
diagUnits = 'm2/s ' |
49 |
diagCode = 'UU MX ' |
50 |
diagMate = diagNum + 2 |
51 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
52 |
I diagName, diagCode, diagUnits, diagTitle, diagMate, myThid ) |
53 |
CALL DIAGNOSTICS_SETKLEV( diagName, Nlayers , myThid ) |
54 |
#endif |
55 |
|
56 |
#ifdef LAYERS_VFLUX |
57 |
diagName = 'LaVH ' |
58 |
diagTitle = 'Layer Integrated V (VH m2/s)' |
59 |
diagUnits = 'm2/s ' |
60 |
diagCode = 'VV MX ' |
61 |
diagMate = diagNum |
62 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
63 |
I diagName, diagCode, diagUnits, diagTitle, diagMate, myThid ) |
64 |
CALL DIAGNOSTICS_SETKLEV( diagName, Nlayers , myThid ) |
65 |
#endif |
66 |
|
67 |
#ifdef LAYERS_THICKNESS |
68 |
#ifdef LAYERS_UFLUX |
69 |
diagName = 'LaHw ' |
70 |
diagTitle = 'Layer Thickness at U points (m)' |
71 |
diagUnits = 'm ' |
72 |
diagCode = 'UU MX ' |
73 |
diagMate = diagNum + 2 |
74 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
75 |
I diagName, diagCode, diagUnits, diagTitle, diagMate, myThid ) |
76 |
CALL DIAGNOSTICS_SETKLEV( diagName, Nlayers , myThid ) |
77 |
#endif |
78 |
|
79 |
#ifdef LAYERS_VFLUX |
80 |
diagName = 'LaHs ' |
81 |
diagTitle = 'Layer Thickness at V points (m)' |
82 |
diagUnits = 'm ' |
83 |
diagCode = 'VV MX ' |
84 |
diagMate = diagNum |
85 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
86 |
I diagName, diagCode, diagUnits, diagTitle, diagMate, myThid ) |
87 |
CALL DIAGNOSTICS_SETKLEV( diagName, Nlayers , myThid ) |
88 |
#endif |
89 |
#endif |
90 |
|
91 |
ENDIF |
92 |
#endif /* ALLOW_DIAGNOSTICS */ |
93 |
#endif /* ALLOW_LAYERS */ |
94 |
|
95 |
RETURN |
96 |
END |