/[MITgcm]/MITgcm/pkg/longstep/longstep_average_3d.F
ViewVC logotype

Annotation of /MITgcm/pkg/longstep/longstep_average_3d.F

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


Revision 1.3 - (hide annotations) (download)
Sun Jun 28 16:35:48 2009 UTC (14 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64x, checkpoint64z, checkpoint64q, checkpoint64p, checkpoint64s, checkpoint64r, checkpoint64u, checkpoint64t, checkpoint64w, checkpoint64v, checkpoint64i, checkpoint64h, checkpoint64k, checkpoint64j, checkpoint64m, checkpoint64l, checkpoint64o, checkpoint64n, checkpoint64a, checkpoint64c, checkpoint64b, checkpoint64e, checkpoint64d, checkpoint64g, checkpoint64f, checkpoint63p, checkpoint63q, checkpoint63r, checkpoint63s, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint64, checkpoint65, checkpoint62, checkpoint63, checkpoint65p, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61s, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.2: +4 -5 lines
fix for Multi-Threaded.

1 jmc 1.3 C $Header: /u/gcmpack/MITgcm/pkg/longstep/longstep_average_3d.F,v 1.2 2009/06/27 02:40:41 jmc Exp $
2 jmc 1.2 C $Name: $
3 jahn 1.1
4     #include "LONGSTEP_OPTIONS.h"
5    
6     CBOP
7     C !ROUTINE: LONGSTEP_AVERAGE_3D
8     C !INTERFACE:
9     SUBROUTINE LONGSTEP_AVERAGE_3D(
10     I lsCnt,
11     U lsFld,
12     I myNr, myThid)
13    
14     C !DESCRIPTION: \bv
15     C *==========================================================*
16     C | SUBROUTINE LONGSTEP_AVERAGE_3D
17     C | o compute longstep average for one field (incl. overlap)
18     C *==========================================================*
19     C \ev
20    
21     C !USES:
22     IMPLICIT NONE
23     C == Global variables ===
24     #include "SIZE.h"
25     #include "EEPARAMS.h"
26     #include "PARAMS.h"
27     #include "GRID.h"
28    
29     C !INPUT/OUTPUT PARAMETERS:
30     C == Routine arguments ==
31     C lsCnt :: Counter to update
32     C lsFld :: average to update
33     C myNr :: number of levels to update
34     C myThid :: my Thread Id number
35 jmc 1.2 INTEGER myNr
36 jahn 1.1 _RL lsFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,myNr,nSx,nSy)
37 jmc 1.3 INTEGER lsCnt(nSx,nSy)
38 jahn 1.1 INTEGER myThid
39    
40     #ifdef ALLOW_LONGSTEP
41     C !LOCAL VARIABLES:
42     C == Local variables ==
43     INTEGER i,j,k,bi,bj
44     _RL factor
45     CEOP
46    
47     DO bj=myByLo(myThid), myByHi(myThid)
48     DO bi=myBxLo(myThid), myBxHi(myThid)
49 jmc 1.3 factor = FLOAT(lsCnt(bi,bj))
50     IF (lsCnt(bi,bj).NE.0) factor = 1. _d 0 / factor
51 jahn 1.1 DO k = 1,myNr
52     DO j = 1-OLy,sNy+OLy
53     DO i = 1-OLx,sNx+OLx
54     lsFld(i,j,k,bi,bj) = lsFld(i,j,k,bi,bj)*factor
55     ENDDO
56     ENDDO
57     ENDDO
58     ENDDO
59     ENDDO
60     #endif /* ALLOW_LONGSTEP */
61    
62     RETURN
63     END
64    

  ViewVC Help
Powered by ViewVC 1.1.22