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

Diff of /MITgcm/pkg/diagnostics/diagstats_fill.F

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

revision 1.5 by jmc, Thu Sep 3 20:41:37 2009 UTC revision 1.6 by jmc, Fri Aug 8 19:29:48 2014 UTC
# Line 20  C     !INTERFACE: Line 20  C     !INTERFACE:
20  #endif  #endif
21       I               scaleFact, power, arrType, nLevFract,       I               scaleFact, power, arrType, nLevFract,
22       I               ndId, kInQSd, region2fill, kLev, nLevs,       I               ndId, kInQSd, region2fill, kLev, nLevs,
23       I               bibjflg, biArg, bjArg, myThid )       I               bibjFlg, biArg, bjArg, myThid )
24    
25  C     !DESCRIPTION:  C     !DESCRIPTION:
26  C***********************************************************************  C***********************************************************************
# Line 63  C                  0 : fill-in in the sa Line 63  C                  0 : fill-in in the sa
63  C                  -1: fill-in in reverse order.  C                  -1: fill-in in reverse order.
64  C     nLevs     :: indicates Number of levels of the input field array  C     nLevs     :: indicates Number of levels of the input field array
65  C                  (whether to fill-in all the levels (kLev<1) or just one (kLev>0))  C                  (whether to fill-in all the levels (kLev<1) or just one (kLev>0))
66  C     bibjflg   :: Integer flag to indicate instructions for bi bj loop  C     bibjFlg   :: Integer flag to indicate instructions for bi bj loop
67  C                  0 indicates that the bi-bj loop must be done here  C                  0 indicates that the bi-bj loop must be done here
68  C                  1 indicates that the bi-bj loop is done OUTSIDE  C                  1 indicates that the bi-bj loop is done OUTSIDE
69  C                  2 indicates that the bi-bj loop is done OUTSIDE  C                  2 indicates that the bi-bj loop is done OUTSIDE
# Line 71  C                     AND that we have b Line 71  C                     AND that we have b
71  C                  3 indicates that the bi-bj loop is done OUTSIDE  C                  3 indicates that the bi-bj loop is done OUTSIDE
72  C                     AND that we have been sent a local array  C                     AND that we have been sent a local array
73  C                     AND that the array has no overlap region (interior only)  C                     AND that the array has no overlap region (interior only)
74  C                  NOTE - bibjflg can be NEGATIVE to indicate not to increment counter  C                  NOTE - bibjFlg can be NEGATIVE to indicate not to increment counter
75  C     biArg     :: X-direction tile number - used for bibjflg=1-3  C     biArg     :: X-direction tile number - used for bibjFlg=1-3
76  C     bjArg     :: Y-direction tile number - used for bibjflg=1-3  C     bjArg     :: Y-direction tile number - used for bibjFlg=1-3
77  C     myThid    :: my thread Id number  C     myThid    :: my thread Id number
78  C***********************************************************************  C***********************************************************************
79  C                  NOTE: User beware! If a local (1 tile only) array  C                  NOTE: User beware! If a local (1 tile only) array
80  C                        is sent here, bibjflg MUST NOT be set to 0  C                        is sent here, bibjFlg MUST NOT be set to 0
81  C                        or there will be out of bounds problems!  C                        or there will be out of bounds problems!
82  C***********************************************************************  C***********************************************************************
83        _RL inpFldRL(*)        _RL inpFldRL(*)
# Line 92  C*************************************** Line 92  C***************************************
92        INTEGER nLevFract        INTEGER nLevFract
93        INTEGER ndId, kInQSd        INTEGER ndId, kInQSd
94        INTEGER region2fill(0:nRegions)        INTEGER region2fill(0:nRegions)
95        INTEGER kLev, nLevs, bibjflg, biArg, bjArg        INTEGER kLev, nLevs, bibjFlg, biArg, bjArg
96        INTEGER myThid        INTEGER myThid
97  CEOP  CEOP
98    
# Line 135  c        jRun = sNy+1 Line 135  c        jRun = sNy+1
135          ENDIF          ENDIF
136    
137  C-      Dimension of the input array:  C-      Dimension of the input array:
138          IF (ABS(bibjflg).EQ.3) THEN          IF (ABS(bibjFlg).EQ.3) THEN
139            sizI1 = 1            sizI1 = 1
140            sizI2 = sNx            sizI2 = sNx
141            sizJ1 = 1            sizJ1 = 1
# Line 148  C-      Dimension of the input array: Line 148  C-      Dimension of the input array:
148            sizJ1 = 1-OLy            sizJ1 = 1-OLy
149            sizJ2 = sNy+OLy            sizJ2 = sNy+OLy
150          ENDIF          ENDIF
151          IF (ABS(bibjflg).GE.2) THEN          IF (ABS(bibjFlg).GE.2) THEN
152           sizTx = 1           sizTx = 1
153           sizTy = 1           sizTy = 1
154          ELSE          ELSE
# Line 216  C-      Check for consistency with Nb of Line 216  C-      Check for consistency with Nb of
216  #ifndef REAL4_IS_SLOW  #ifndef REAL4_IS_SLOW
217        IF ( arrType.EQ.0 .OR. ( arrType.EQ.1 .AND. .NOT.useFract ) ) THEN        IF ( arrType.EQ.0 .OR. ( arrType.EQ.1 .AND. .NOT.useFract ) ) THEN
218  #endif  #endif
219          IF ( bibjflg.EQ.0 ) THEN          IF ( bibjFlg.EQ.0 ) THEN
220           DO bj=myByLo(myThid), myByHi(myThid)           DO bj=myByLo(myThid), myByHi(myThid)
221            DO bi=myBxLo(myThid), myBxHi(myThid)            DO bi=myBxLo(myThid), myBxHi(myThid)
222             DO k = kFirst,kLast             DO k = kFirst,kLast
# Line 228  C-      Check for consistency with Nb of Line 228  C-      Check for consistency with Nb of
228       I                  scaleFact, power, useFract, sizF,       I                  scaleFact, power, useFract, sizF,
229       I                  sizI1,sizI2,sizJ1,sizJ2,nLevs,sizTx,sizTy,       I                  sizI1,sizI2,sizJ1,sizJ2,nLevs,sizTx,sizTy,
230       I                  iRun,jRun,k,bi,bj,       I                  iRun,jRun,k,bi,bj,
231       I                  km, bi, bj, region2fill,       I                  km, bi, bj, bibjFlg, region2fill,
232       I                  ndId, gdiag(ndId), myThid )       I                  ndId, gdiag(ndId), myThid )
233             ENDDO             ENDDO
234            ENDDO            ENDDO
# Line 245  C-      Check for consistency with Nb of Line 245  C-      Check for consistency with Nb of
245       I                  scaleFact, power, useFract, sizF,       I                  scaleFact, power, useFract, sizF,
246       I                  sizI1,sizI2,sizJ1,sizJ2,nLevs,sizTx,sizTy,       I                  sizI1,sizI2,sizJ1,sizJ2,nLevs,sizTx,sizTy,
247       I                  iRun,jRun,k,bi,bj,       I                  iRun,jRun,k,bi,bj,
248       I                  km, biArg, bjArg, region2fill,       I                  km, biArg, bjArg, bibjFlg, region2fill,
249       I                  ndId, gdiag(ndId), myThid )       I                  ndId, gdiag(ndId), myThid )
250            ENDDO            ENDDO
251          ENDIF          ENDIF
252    
253  #ifndef REAL4_IS_SLOW  #ifndef REAL4_IS_SLOW
254        ELSE        ELSE
255          IF ( bibjflg.EQ.0 ) THEN          IF ( bibjFlg.EQ.0 ) THEN
256           DO bj=myByLo(myThid), myByHi(myThid)           DO bj=myByLo(myThid), myByHi(myThid)
257            DO bi=myBxLo(myThid), myBxHi(myThid)            DO bi=myBxLo(myThid), myBxHi(myThid)
258             DO k = kFirst,kLast             DO k = kFirst,kLast
# Line 270  C-      Check for consistency with Nb of Line 270  C-      Check for consistency with Nb of
270       I                  scaleFact, power, useFract, 1,       I                  scaleFact, power, useFract, 1,
271       I                  1, iRun, 1, jRun, 1, 1, 1,       I                  1, iRun, 1, jRun, 1, 1, 1,
272       I                  iRun, jRun, 1, 1, 1,       I                  iRun, jRun, 1, 1, 1,
273       I                  km, bi, bj, region2fill,       I                  km, bi, bj, bibjFlg, region2fill,
274       I                  ndId, gdiag(ndId), myThid )       I                  ndId, gdiag(ndId), myThid )
275             ENDDO             ENDDO
276            ENDDO            ENDDO
# Line 293  C-      Check for consistency with Nb of Line 293  C-      Check for consistency with Nb of
293       I                  scaleFact, power, useFract, 1,       I                  scaleFact, power, useFract, 1,
294       I                  1, iRun, 1, jRun, 1, 1, 1,       I                  1, iRun, 1, jRun, 1, 1, 1,
295       I                  iRun, jRun, 1, 1, 1,       I                  iRun, jRun, 1, 1, 1,
296       I                  km, biArg, bjArg, region2fill,       I                  km, biArg, bjArg, bibjFlg, region2fill,
297       I                  ndId, gdiag(ndId), myThid )       I                  ndId, gdiag(ndId), myThid )
298            ENDDO            ENDDO
299          ENDIF          ENDIF

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

  ViewVC Help
Powered by ViewVC 1.1.22