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

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

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


Revision 1.4 - (show annotations) (download)
Sun Jul 23 00:24:18 2017 UTC (6 years, 9 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, HEAD
Changes since 1.3: +2 -3 lines
allows for negative "jdiag" (interpret |jdiag| instead)

1 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagnostics_clear.F,v 1.3 2011/06/29 21:59:55 jmc Exp $
2 C $Name: $
3
4 #include "DIAG_OPTIONS.h"
5
6 CBOP 0
7 C !ROUTINE: DIAGNOSTICS_CLEAR
8 C !INTERFACE:
9 SUBROUTINE DIAGNOSTICS_CLEAR (listId, myThid)
10
11 C !DESCRIPTION:
12 C***********************************************************************
13 C Driver to clear diagnostics specified in diagnostic index list
14 C***********************************************************************
15
16 C !USES:
17 IMPLICIT NONE
18
19 C == Global variables ===
20 #include "EEPARAMS.h"
21 #include "SIZE.h"
22 #include "DIAGNOSTICS_SIZE.h"
23 #include "DIAGNOSTICS.h"
24
25 C !INPUT PARAMETERS:
26 C listId :: diagnostics list number
27 C myThid :: my Thread Id number
28 INTEGER listId, myThid
29 CEOP
30
31 C !LOCAL VARIABLES:
32 INTEGER m, ndId, ipt, nLev
33
34 DO m=1,nActive(listId)
35 IF ( idiag(m,listId).GT.0 ) THEN
36 ndId = ABS(jdiag(m,listId))
37 ipt = idiag(m,listId)
38 nLev = kdiag(ndId)*averageCycle(listId)
39 c WRITE(0,'(2(A,I3),2A,2(A,I5))') 'CLRDIAG (listId=',listId,
40 c & ' )',nLev,' levs, diag: ',cdiag(ndId),
41 c & ' ipt=',ipt,' , ndiag=',ndiag(ipt,1,1)
42 CALL DIAGNOSTICS_CLRDIAG( ipt, nLev, myThid )
43 ENDIF
44 ENDDO
45
46 RETURN
47 END
48
49 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
50
51 CBOP 0
52 C !ROUTINE: DIAGNOSTICS_CLRDIAG
53 C !INTERFACE:
54 SUBROUTINE DIAGNOSTICS_CLRDIAG ( ipt, nLev, myThid )
55
56 C !DESCRIPTION:
57 C***********************************************************************
58 C Zero out model diagnostic array elements
59 C***********************************************************************
60
61 C !USES:
62 IMPLICIT NONE
63
64 C == Global variables ===
65 #include "EEPARAMS.h"
66 #include "SIZE.h"
67 #include "DIAGNOSTICS_SIZE.h"
68 #include "DIAGNOSTICS.h"
69
70 C !INPUT PARAMETERS:
71 C ipt :: diagnostic pointer to storage array
72 C nLev :: number of levels (in storage array) to reset
73 C myThid :: my Thread Id number
74 INTEGER ipt, nLev
75 INTEGER myThid
76 CEOP
77
78 C !LOCAL VARIABLES:
79 INTEGER bi,bj
80 INTEGER i,j,k
81 INTEGER kl
82
83 C **********************************************************************
84 C **** SET DIAGNOSTIC AND COUNTER TO ZERO ****
85 C **********************************************************************
86
87 DO bj=myByLo(myThid), myByHi(myThid)
88 DO bi=myBxLo(myThid), myBxHi(myThid)
89 DO k = 1,nLev
90 kl = ipt+k-1
91 ndiag(kl,bi,bj) = 0
92 DO j = 1-OLy,sNy+OLy
93 DO i = 1-OLx,sNx+OLx
94 qdiag(i,j,kl,bi,bj) = 0.0
95 ENDDO
96 ENDDO
97 ENDDO
98 ENDDO
99 ENDDO
100
101 RETURN
102 END

  ViewVC Help
Powered by ViewVC 1.1.22