/[MITgcm]/MITgcm/pkg/seaice/seaice_init.F
ViewVC logotype

Diff of /MITgcm/pkg/seaice/seaice_init.F

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

revision 1.20 by dimitri, Sat Mar 13 14:57:54 2004 UTC revision 1.22 by mlosch, Wed Apr 28 12:00:53 2004 UTC
# Line 94  C--   Initialize grid info Line 94  C--   Initialize grid info
94           DO I=1-OLx,sNx+OLx           DO I=1-OLx,sNx+OLx
95            CSTICE(i,j,bi,bj) =cos(yC(I,J,bi,bj)*deg2rad)            CSTICE(i,j,bi,bj) =cos(yC(I,J,bi,bj)*deg2rad)
96            CSUICE(i,j,bi,bj) =cos(yG(I,J,bi,bj)*deg2rad)            CSUICE(i,j,bi,bj) =cos(yG(I,J,bi,bj)*deg2rad)
97    CML(
98    C     inverses of CSTICE and CSUICE. Let's hope we are never
99    C     at the poles
100              IF ( CSTICE(I,J,bi,bj) .ne. 0. _d 0 ) THEN
101               RECIP_CSTICE(I,J,bi,bj) = 1./CSTICE(I,J,bi,bj)
102              ELSE  
103               RECIP_CSTICE(I,J,bi,bj) =0. _d 0
104              ENDIF
105              IF ( CSUICE(I,J,bi,bj) .ne. 0. _d 0 ) THEN
106               RECIP_CSUICE(I,J,bi,bj) = 1./CSUICE(I,J,bi,bj)
107              ELSE  
108               RECIP_CSUICE(I,J,bi,bj) =0. _d 0
109              ENDIF
110    CML)
111            SINEICE(i,j,bi,bj)=sin(yC(I,J,bi,bj)*deg2rad)            SINEICE(i,j,bi,bj)=sin(yC(I,J,bi,bj)*deg2rad)
112            TNGTICE(i,j,bi,bj)=SINEICE(i,j,bi,bj)/CSTICE(i,j,bi,bj)            TNGTICE(i,j,bi,bj)=SINEICE(i,j,bi,bj)*RECIP_CSTICE(i,j,bi,bj)
113            SINEICE(i,j,bi,bj)=sin(yG(I,J,bi,bj)*deg2rad)            SINEICE(i,j,bi,bj)=sin(yG(I,J,bi,bj)*deg2rad)
114            TNGICE(i,j,bi,bj) =SINEICE(i,j,bi,bj)/CSUICE(i,j,bi,bj)            TNGICE(i,j,bi,bj) =SINEICE(i,j,bi,bj)*RECIP_CSUICE(i,j,bi,bj)
115            DXTICE(i,j,bi,bj)=dxF(i,j,bi,bj)/CSTICE(i,j,bi,bj)            DXTICE(i,j,bi,bj)=dxF(i,j,bi,bj)*RECIP_CSTICE(i,j,bi,bj)
116            DXUICE(i,j,bi,bj)=dxV(i,j,bi,bj)/CSUICE(i,j,bi,bj)            DXUICE(i,j,bi,bj)=dxV(i,j,bi,bj)*RECIP_CSUICE(i,j,bi,bj)
117            DYTICE(i,j,bi,bj)=dyF(i,j,bi,bj)            DYTICE(i,j,bi,bj)=dyF(i,j,bi,bj)
118            DYUICE(i,j,bi,bj)=dyU(i,j,bi,bj)            DYUICE(i,j,bi,bj)=dyU(i,j,bi,bj)
119           ENDDO           ENDDO
# Line 154  C     set UV mask to zero except for Arc Line 168  C     set UV mask to zero except for Arc
168             UVM(i,j,bi,bj)=ZERO             UVM(i,j,bi,bj)=ZERO
169            ENDDO            ENDDO
170           ENDIF           ENDIF
171    C--   Make sure that DXTICE and DYTICE do not contain any zeros
172             DO J=1,sNy
173              DO I=1-OLx,0
174               IF(DXTICE(i,j,bi,bj).EQ.0)
175         &            DXTICE(i,j,bi,bj)=DXTICE(1,j,bi,bj)
176               IF(DYTICE(i,j,bi,bj).EQ.0)
177         &            DYTICE(i,j,bi,bj)=DYTICE(1,j,bi,bj)
178              ENDDO
179              DO I=sNx+1,sNx+OLx
180               IF(DXTICE(i,j,bi,bj).EQ.0)
181         &            DXTICE(i,j,bi,bj)=DXTICE(sNx,j,bi,bj)
182               IF(DYTICE(i,j,bi,bj).EQ.0)
183         &            DYTICE(i,j,bi,bj)=DYTICE(sNx,j,bi,bj)
184              ENDDO
185             ENDDO
186             DO J=1-OLy,0
187              DO I=1-OLx,sNx+OLx
188               IF(DXTICE(i,j,bi,bj).EQ.0)
189         &            DXTICE(i,j,bi,bj)=DXTICE(i,1,bi,bj)
190               IF(DYTICE(i,j,bi,bj).EQ.0)
191         &            DYTICE(i,j,bi,bj)=DYTICE(i,1,bi,bj)
192              ENDDO
193             ENDDO
194             DO J=sNy+1,sNy+OLy
195              DO I=1-OLx,sNx+OLx
196               IF(DXTICE(i,j,bi,bj).EQ.0)
197         &            DXTICE(i,j,bi,bj)=DXTICE(i,sNy,bi,bj)
198               IF(DYTICE(i,j,bi,bj).EQ.0)
199         &            DYTICE(i,j,bi,bj)=DYTICE(i,sNy,bi,bj)
200              ENDDO
201             ENDDO
202          ENDIF          ENDIF
203  #endif /* ALLOW_EXCH2 */  #endif /* ALLOW_EXCH2 */
204    

Legend:
Removed from v.1.20  
changed lines
  Added in v.1.22

  ViewVC Help
Powered by ViewVC 1.1.22