1 |
|
C $Header$ |
2 |
|
C $Name$ |
3 |
|
|
4 |
#include "LAYERS_OPTIONS.h" |
#include "LAYERS_OPTIONS.h" |
5 |
|
|
6 |
SUBROUTINE LAYERS_OUTPUT( myTime, myIter, myThid ) |
SUBROUTINE LAYERS_OUTPUT( myTime, myIter, myThid ) |
51 |
ENDIF |
ENDIF |
52 |
|
|
53 |
IF ( DIFFERENT_MULTIPLE(dumpFreq,myTime,deltaTClock) |
IF ( DIFFERENT_MULTIPLE(dumpFreq,myTime,deltaTClock) |
54 |
& ) THEN |
& ) THEN |
55 |
|
|
56 |
IF ( layers_MDSIO ) THEN |
IF ( layers_MDSIO ) THEN |
57 |
WRITE(suff,'(I10.10)') myIter |
WRITE(suff,'(I10.10)') myIter |
58 |
#ifdef LAYERS_UFLUX |
#ifdef LAYERS_UFLUX |
59 |
CALL WRITE_FLD_XYG_RL( |
CALL WRITE_FLD_XYG_RL( |
60 |
& 'layers_UFlux.',suff,layers_UFlux,myIter,myThid) |
& 'layers_UFlux.',suff,layers_UFlux,myIter,myThid) |
61 |
#ifdef LAYERS_THICKNESS |
#ifdef LAYERS_THICKNESS |
63 |
& 'layers_HU.',suff,layers_HU,myIter,myThid) |
& 'layers_HU.',suff,layers_HU,myIter,myThid) |
64 |
#endif /* LAYERS_THICKNESS */ |
#endif /* LAYERS_THICKNESS */ |
65 |
#endif /* LAYESR_UFLUX */ |
#endif /* LAYESR_UFLUX */ |
66 |
#ifdef LAYERS_VFLUX |
#ifdef LAYERS_VFLUX |
67 |
CALL WRITE_FLD_XYG_RL( |
CALL WRITE_FLD_XYG_RL( |
68 |
& 'layers_VFlux.',suff,layers_VFlux,myIter,myThid) |
& 'layers_VFlux.',suff,layers_VFlux,myIter,myThid) |
69 |
#ifdef LAYERS_THICKNESS |
#ifdef LAYERS_THICKNESS |
79 |
IF ( layers_MNC) THEN |
IF ( layers_MNC) THEN |
80 |
C Do MNC output... |
C Do MNC output... |
81 |
C But how? |
C But how? |
82 |
ENDIF |
ENDIF |
83 |
#endif /* LAYERS_MNC */ |
#endif /* LAYERS_MNC */ |
84 |
#endif /* ALLOW_MNC */ |
#endif /* ALLOW_MNC */ |
85 |
|
|
88 |
C Dump files and restart average computation if needed |
C Dump files and restart average computation if needed |
89 |
IF ( DIFFERENT_MULTIPLE(taveFreq,myTime,deltaTClock) |
IF ( DIFFERENT_MULTIPLE(taveFreq,myTime,deltaTClock) |
90 |
& ) THEN |
& ) THEN |
91 |
|
|
92 |
C Normalize by integrated time |
C Normalize by integrated time |
93 |
DO bj = myByLo(myThid), myByHi(myThid) |
DO bj = myByLo(myThid), myByHi(myThid) |
94 |
DO bi = myBxLo(myThid), myBxHi(myThid) |
DO bi = myBxLo(myThid), myBxHi(myThid) |
95 |
|
|
96 |
#ifdef LAYERS_UFLUX |
#ifdef LAYERS_UFLUX |
97 |
CALL TIMEAVE_NORMALIZ(layers_UFlux_T,layers_timeave,Nlayers, |
CALL TIMEAVE_NORMALIZ(layers_UFlux_T,layers_timeave,Nlayers, |
98 |
& bi,bj,myThid) |
& bi,bj,myThid) |
99 |
#ifdef LAYERS_THICKNESS |
#ifdef LAYERS_THICKNESS |
100 |
CALL TIMEAVE_NORMALIZ(layers_HU_T,layers_timeave,Nlayers, |
CALL TIMEAVE_NORMALIZ(layers_HU_T,layers_timeave,Nlayers, |
101 |
& bi,bj,myThid) |
& bi,bj,myThid) |
102 |
#endif /* LAYERS_THICKNESS */ |
#endif /* LAYERS_THICKNESS */ |
103 |
#endif /* LAYERS_UFLUX */ |
#endif /* LAYERS_UFLUX */ |
104 |
|
|
105 |
#ifdef LAYERS_VFLUX |
#ifdef LAYERS_VFLUX |
106 |
CALL TIMEAVE_NORMALIZ(layers_VFlux_T,layers_timeave,Nlayers, |
CALL TIMEAVE_NORMALIZ(layers_VFlux_T,layers_timeave,Nlayers, |
107 |
& bi,bj,myThid) |
& bi,bj,myThid) |
108 |
#ifdef LAYERS_THICKNESS |
#ifdef LAYERS_THICKNESS |
109 |
CALL TIMEAVE_NORMALIZ(layers_HV_T,layers_timeave,Nlayers, |
CALL TIMEAVE_NORMALIZ(layers_HV_T,layers_timeave,Nlayers, |
110 |
& bi,bj,myThid) |
& bi,bj,myThid) |
111 |
#endif /* LAYERS_THICKNESS */ |
#endif /* LAYERS_THICKNESS */ |
112 |
#endif /* LAYERS_VFLUX */ |
#endif /* LAYERS_VFLUX */ |
113 |
|
|
114 |
ENDDO |
ENDDO |
115 |
ENDDO |
ENDDO |
116 |
|
|
117 |
IF ( layers_MDSIO ) THEN |
IF ( layers_MDSIO ) THEN |
118 |
WRITE(suff,'(I10.10)') myIter |
WRITE(suff,'(I10.10)') myIter |
119 |
#ifdef LAYERS_UFLUX |
#ifdef LAYERS_UFLUX |
133 |
#endif /* LAYERS_THICKNESS */ |
#endif /* LAYERS_THICKNESS */ |
134 |
#endif /* LAYERS_VFLUX */ |
#endif /* LAYERS_VFLUX */ |
135 |
ENDIF |
ENDIF |
136 |
|
|
137 |
#ifdef ALLOW_MNC |
#ifdef ALLOW_MNC |
138 |
C Do MNC output. |
C Do MNC output. |
139 |
#endif |
#endif |
140 |
|
|
141 |
C Reset averages to zero |
C Reset averages to zero |
142 |
DO bj = myByLo(myThid), myByHi(myThid) |
DO bj = myByLo(myThid), myByHi(myThid) |
143 |
DO bi = myBxLo(myThid), myBxHi(myThid) |
DO bi = myBxLo(myThid), myBxHi(myThid) |
159 |
ENDDO |
ENDDO |
160 |
ENDDO |
ENDDO |
161 |
ENDDO |
ENDDO |
162 |
|
|
163 |
ENDIF |
ENDIF |
164 |
|
|
165 |
|
|
166 |
#endif /* ALLOW_TIMEAVE */ |
#endif /* ALLOW_TIMEAVE */ |
167 |
|
|
168 |
#endif /* ALLOW_LAYERS */ |
#endif /* ALLOW_LAYERS */ |
169 |
|
|
170 |
RETURN |
RETURN |
171 |
END |
END |