/[MITgcm]/MITgcm/model/src/impldiff.F
ViewVC logotype

Diff of /MITgcm/model/src/impldiff.F

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

revision 1.9 by heimbach, Fri Jun 9 02:45:04 2000 UTC revision 1.10 by heimbach, Mon Jun 12 13:38:50 2000 UTC
# Line 44  C     == Local variables == Line 44  C     == Local variables ==
44        INTEGER kkey        INTEGER kkey
45  #endif  #endif
46    
47        IF (Nr.GT.1) THEN         ! Only need do anything if Nr>1  C--   Only need do anything if Nr>1
48          IF (Nr.GT.1) THEN
49    
50  C--    Beginning of forward sweep (top level)  C--    Beginning of forward sweep (top level)
51         DO j=jMin,jMax         DO j=jMin,jMax
52          DO i=iMin,iMax          DO i=iMin,iMax
# Line 55  C--    Beginning of forward sweep (top l Line 57  C--    Beginning of forward sweep (top l
57           IF (b(i,j).NE.0.) bet(i,j)=1. / b(i,j)           IF (b(i,j).NE.0.) bet(i,j)=1. / b(i,j)
58          ENDDO          ENDDO
59         ENDDO         ENDDO
60    
61        ENDIF        ENDIF
62    
63  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
# Line 70  CADJ store gXNm1 = comlev1_impl2d, key = Line 73  CADJ store gXNm1 = comlev1_impl2d, key =
73    
74  C--   Middle of forward sweep  C--   Middle of forward sweep
75        IF (Nr.GT.2) THEN        IF (Nr.GT.2) THEN
76    
77         DO k=2,Nr-1         DO k=2,Nr-1
78    
79  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
# Line 95  CADJ store bet  = comlev1_impl3d, key = Line 99  CADJ store bet  = comlev1_impl3d, key =
99          DO j=jMin,jMax          DO j=jMin,jMax
100           DO i=iMin,iMax           DO i=iMin,iMax
101            gam(i,j,k)=ckm1(i,j)*bet(i,j)            gam(i,j,k)=ckm1(i,j)*bet(i,j)
102             ENDDO
103            ENDDO
104    
105            DO j=jMin,jMax
106             DO i=iMin,iMax
107            bet(i,j)=b(i,j)-a(i,j)*gam(i,j,k)            bet(i,j)=b(i,j)-a(i,j)*gam(i,j,k)
108            IF (bet(i,j).NE.0.) bet(i,j)=1. / bet(i,j)            IF (bet(i,j).NE.0.) bet(i,j)=1. / bet(i,j)
109           ENDDO           ENDDO
# Line 113  CADJ store gXNm1(:,:,k-1:k,bi,bj) = coml Line 122  CADJ store gXNm1(:,:,k-1:k,bi,bj) = coml
122          ENDDO          ENDDO
123    
124         ENDDO         ENDDO
125    
126        ENDIF        ENDIF
127    
128        IF (Nr.GT.1) THEN        IF (Nr.GT.1) THEN
129  C--    End of forward sweep (bottom level)  C--    End of forward sweep (bottom level)
130         DO j=jMin,jMax         DO j=jMin,jMax
# Line 134  CADJ store bet  = comlev1_impl2d, key = Line 145  CADJ store bet  = comlev1_impl2d, key =
145         DO j=jMin,jMax         DO j=jMin,jMax
146          DO i=iMin,iMax          DO i=iMin,iMax
147           gam(i,j,Nr)=ckm1(i,j)*bet(i,j)           gam(i,j,Nr)=ckm1(i,j)*bet(i,j)
148            ENDDO
149           ENDDO
150           DO j=jMin,jMax
151            DO i=iMin,iMax
152           bet(i,j)=b(i,j)-a(i,j)*gam(i,j,Nr)           bet(i,j)=b(i,j)-a(i,j)*gam(i,j,Nr)
153           IF (bet(i,j).NE.0.) bet(i,j)=1. / bet(i,j)           IF (bet(i,j).NE.0.) bet(i,j)=1. / bet(i,j)
154          ENDDO          ENDDO
# Line 163  C--    Backward sweep Line 178  C--    Backward sweep
178           ENDDO           ENDDO
179          ENDDO          ENDDO
180         ENDDO         ENDDO
181    
182        ENDIF        ENDIF
183    
184        RETURN        RETURN

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.22