/[MITgcm]/MITgcm/pkg/ocn_compon_interf/ocn_cpl_diags.F
ViewVC logotype

Annotation of /MITgcm/pkg/ocn_compon_interf/ocn_cpl_diags.F

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


Revision 1.6 - (hide annotations) (download)
Wed Jan 6 00:58:23 2016 UTC (8 years, 4 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65s, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, HEAD
Changes since 1.5: +5 -4 lines
add "#ifdef ALLOW_DIC" around DIC related time-ave output fields

1 jmc 1.6 C $Header: /u/gcmpack/MITgcm/pkg/ocn_compon_interf/ocn_cpl_diags.F,v 1.5 2015/11/12 00:57:41 jmc Exp $
2 jmc 1.1 C $Name: $
3    
4 jmc 1.5 #include "OCN_CPL_OPTIONS.h"
5 jmc 1.1
6 jmc 1.4 CBOP
7     C !ROUTINE: OCN_CPL_DIAGS
8     C !INTERFACE:
9     SUBROUTINE OCN_CPL_DIAGS( myTime, myIter, myThid )
10    
11     C !DESCRIPTION: \bv
12     C *==========================================================*
13     C | S/R OCN_CPL_DIAGS
14     C | o Calculate CPL time-average diagnostics
15     C *==========================================================*
16     C \ev
17    
18     C !USES:
19 jmc 1.1 IMPLICIT NONE
20    
21     C === Global variables ===
22     #include "SIZE.h"
23     #include "EEPARAMS.h"
24     #include "PARAMS.h"
25 jmc 1.4 #include "CPL_PARAMS.h"
26 jmc 1.1 #include "OCNCPL.h"
27 jmc 1.4 #include "CPL_TAVE.h"
28 jmc 1.1
29 jmc 1.4 C !INPUT/OUTPUT PARAMETERS:
30     C myTime :: Current time in simulation (s)
31     C myIter :: Current Iteration number
32     C myThid :: my Thread Id number
33 jmc 1.1 _RL myTime
34 jmc 1.4 INTEGER myIter
35 jmc 1.1 INTEGER myThid
36 jmc 1.4 CEOP
37 jmc 1.1
38     #ifdef COMPONENT_MODULE
39 jmc 1.4 #ifdef ALLOW_TIMEAVE
40 jmc 1.1
41 jmc 1.4 C !LOCAL VARIABLES:
42     C bi, bj :: Tile indices
43     INTEGER bi, bj
44     INTEGER i,j
45 jmc 1.1 _RL DDTT
46    
47 jmc 1.4 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
48    
49     c IF ( cpl_taveFreq.GT.0. _d 0 ) THEN
50     C-- note: will activate this "if" (and remove the one in front of
51     C OCN_CPL_DIAGS call) to do other diags than time-ave.
52    
53     DO bj=myByLo(myThid),myByHi(myThid)
54     DO bi=myBxLo(myThid),myBxHi(myThid)
55    
56 jmc 1.5 DDTT = deltaTClock
57 jmc 1.4 DO j=1,sNy
58     DO i=1,sNx
59     SLPtave(i,j,bi,bj) = SLPtave(i,j,bi,bj)
60     & + DDTT * atmSLPr(i,j,bi,bj)
61     HFtave(i,j,bi,bj) = HFtave(i,j,bi,bj)
62     & + DDTT * HeatFlux(i,j,bi,bj)
63     QSWtave(i,j,bi,bj) = QSWtave(i,j,bi,bj)
64     & + DDTT * qShortWave(i,j,bi,bj)
65     TXtave(i,j,bi,bj) = TXtave(i,j,bi,bj)
66     & + DDTT * tauX(i,j,bi,bj)
67     TYtave(i,j,bi,bj) = TYtave(i,j,bi,bj)
68     & + DDTT * tauY(i,j,bi,bj)
69     FWtave(i,j,bi,bj) = FWtave(i,j,bi,bj)
70     & + DDTT * FWFlux(i,j,bi,bj)
71     SFxtave(i,j,bi,bj) = SFxtave(i,j,bi,bj)
72     & + DDTT * iceSaltFlx(i,j,bi,bj)
73     SICtave(i,j,bi,bj) = SICtave(i,j,bi,bj)
74     & + DDTT * seaIceMass(i,j,bi,bj)
75     MXLtave(i,j,bi,bj) = MXLtave(i,j,bi,bj)
76     & + DDTT * ocMxlD2cpl(i,j,bi,bj)
77     SSTtave(i,j,bi,bj) = SSTtave(i,j,bi,bj)
78     & + DDTT * SSTocn2cpl(i,j,bi,bj)
79     SSStave(i,j,bi,bj) = SSStave(i,j,bi,bj)
80     & + DDTT * SSSocn2cpl(i,j,bi,bj)
81     vSqtave(i,j,bi,bj) = vSqtave(i,j,bi,bj)
82     & + DDTT * vSqocn2cpl(i,j,bi,bj)
83 jmc 1.6 #ifdef ALLOW_DIC
84 jmc 1.5 IF ( ocn_cplExch_DIC ) THEN
85 jmc 1.6 iceftave(i,j,bi,bj) = iceftave(i,j,bi,bj)
86     & + DDTT * sIceFrac_cpl(i,j,bi,bj)
87 jmc 1.4 aCO2tave(i,j,bi,bj) = aCO2tave(i,j,bi,bj)
88     & + DDTT * airCO2(i,j,bi,bj)
89     sWSpdtave(i,j,bi,bj) = sWSpdtave(i,j,bi,bj)
90     & + DDTT * surfWSpeed(i,j,bi,bj)
91     fCO2tave(i,j,bi,bj) = fCO2tave(i,j,bi,bj)
92     & + DDTT * fluxCO2cpl(i,j,bi,bj)
93     ENDIF
94 jmc 1.6 #endif /* ALLOW_DIC */
95 jmc 1.4 ENDDO
96     ENDDO
97 jmc 1.1
98 jmc 1.4 C- Keep record of how much time has been integrated over
99     CPL_timeAve(bi,bj) = CPL_timeAve(bi,bj)+DDTT
100 jmc 1.1
101 jmc 1.4 C-- end bi,bj loops
102     ENDDO
103 jmc 1.1 ENDDO
104    
105 jmc 1.4 C-- end if cpl_taveFreq > 0
106     c ENDIF
107 jmc 1.1 #endif /* ALLOW_TIMEAVE */
108     #endif /* COMPONENT_MODULE */
109    
110     RETURN
111     END

  ViewVC Help
Powered by ViewVC 1.1.22