/[MITgcm]/MITgcm_contrib/dgoldberg/streamice/streamice_init_fixed.F
ViewVC logotype

Diff of /MITgcm_contrib/dgoldberg/streamice/streamice_init_fixed.F

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

revision 1.3 by dgoldberg, Wed Jan 9 21:56:18 2013 UTC revision 1.4 by dgoldberg, Mon Feb 11 00:57:31 2013 UTC
# Line 29  CEOP Line 29  CEOP
29    
30  C     !LOCAL VARIABLES:  C     !LOCAL VARIABLES:
31  C     === Local variables ===  C     === Local variables ===
32        INTEGER bi, bj, i, j, Gi, Gj, m        INTEGER bi, bj, i, j, Gi, Gj, m, k
33        INTEGER maskFlag, hmaskFlag        INTEGER maskFlag, hmaskFlag
34        _RL x, y        _RL x, y
35          _RS dummyRS
36        CHARACTER*(MAX_LEN_MBUF) msgBuf        CHARACTER*(MAX_LEN_MBUF) msgBuf
37    
38  #ifdef ALLOW_STREAMICE  #ifdef ALLOW_STREAMICE
# Line 109  C       The 0 is the "iteration" argumen Line 110  C       The 0 is the "iteration" argumen
110         CALL PRINT_ERROR( msgBuf, myThid)         CALL PRINT_ERROR( msgBuf, myThid)
111        ENDIF        ENDIF
112    
113          _EXCH_XY_RS(temp_ufacemask,myThid)
114          _EXCH_XY_RS(temp_ufacemask,myThid)
115    
116        IF ( STREAMICEuDirichValsFile .NE. ' ') THEN        IF ( STREAMICEuDirichValsFile .NE. ' ') THEN
117          _BARRIER          _BARRIER
118         CALL READ_FLD_XY_RL ( STREAMICEuDirichValsFile, ' ',         CALL READ_FLD_XY_RL ( STREAMICEuDirichValsFile, ' ',
# Line 140  C       The 0 is the "iteration" argumen Line 144  C       The 0 is the "iteration" argumen
144         WRITE(msgBuf,'(A)') 'H MASK FILE - NOT SET'         WRITE(msgBuf,'(A)') 'H MASK FILE - NOT SET'
145         CALL PRINT_ERROR( msgBuf, myThid)         CALL PRINT_ERROR( msgBuf, myThid)
146        ENDIF        ENDIF
147          
148          _EXCH_XY_RS(temp_hmask,myThid)
149    
150    
151    #ifdef ALLOW_CTRL
152          DO bj = myByLo(myThid), myByHi(myThid)
153           DO bi = myBxLo(myThid), myBxHi(myThid)
154            DO j=1,sNy
155             DO i=1,sNx
156              IF (temp_hmask(i,j,bi,bj) .eq. 1.0) THEN
157               DO k=1,Nr
158               STREAMICE_ctrl_mask(i,j,k,bi,bj) = 1. _d 0
159               ENDDO
160              ENDIF
161             ENDDO
162            ENDDO
163           ENDDO
164          ENDDO
165    #endif
166    
167  #endif  #endif
168    
# Line 284  C         INITIALIZE BOUNDARY CONDS AT N Line 307  C         INITIALIZE BOUNDARY CONDS AT N
307  #else  #else
308  ! BOUNDARIES CONFIGURED FROM FILES  ! BOUNDARIES CONFIGURED FROM FILES
309    
310    
311            IF (temp_hmask(i,j,bi,bj).eq.1.0 .or.            IF (temp_hmask(i,j,bi,bj).eq.1.0 .or.
312       &        temp_hmask(i,j,bi,bj).eq.0.0) THEN       &        temp_hmask(i,j,bi,bj).eq.0.0 .or.
313         &        temp_hmask(i-1,j,bi,bj).eq.1.0) THEN
314    
315            ! WEST FACE OF CELL            ! WEST FACE OF CELL
316             maskFlag=INT(temp_ufacemask(i,j,bi,bj))             maskFlag=INT(temp_ufacemask(i,j,bi,bj))
# Line 303  C         INITIALIZE BOUNDARY CONDS AT N Line 328  C         INITIALIZE BOUNDARY CONDS AT N
328              STREAMICE_ufacemask_bdry (i,j,bi,bj) = -1.0              STREAMICE_ufacemask_bdry (i,j,bi,bj) = -1.0
329             ENDIF             ENDIF
330    
331              ENDIF
332    
333              IF (temp_hmask(i,j,bi,bj).eq.1.0 .or.
334         &        temp_hmask(i,j,bi,bj).eq.0.0) THEN
335    
336             ! EAST FACE OF CELL             ! EAST FACE OF CELL
337             maskFlag=INT(temp_ufacemask(i+1,j,bi,bj))             maskFlag=INT(temp_ufacemask(i+1,j,bi,bj))
338             IF (maskFlag.eq.2) THEN             IF (maskFlag.eq.2) THEN
# Line 319  C         INITIALIZE BOUNDARY CONDS AT N Line 349  C         INITIALIZE BOUNDARY CONDS AT N
349              STREAMICE_ufacemask_bdry (i+1,j,bi,bj) = -1.0              STREAMICE_ufacemask_bdry (i+1,j,bi,bj) = -1.0
350             ENDIF             ENDIF
351    
352              ENDIF
353    
354              IF (temp_hmask(i,j,bi,bj).eq.1.0 .or.
355         &        temp_hmask(i,j,bi,bj).eq.0.0 .or.
356         &        temp_hmask(i,j-1,bi,bj).eq.1.0) THEN
357    
358             ! SOUTH FACE OF CELL             ! SOUTH FACE OF CELL
359             maskFlag=INT(temp_vfacemask(i,j,bi,bj))             maskFlag=INT(temp_vfacemask(i,j,bi,bj))
360             IF (maskFlag.eq.2) THEN             IF (maskFlag.eq.2) THEN
# Line 335  C         INITIALIZE BOUNDARY CONDS AT N Line 371  C         INITIALIZE BOUNDARY CONDS AT N
371              STREAMICE_vfacemask_bdry (i,j,bi,bj) = -1.0              STREAMICE_vfacemask_bdry (i,j,bi,bj) = -1.0
372             ENDIF             ENDIF
373    
374              ENDIF
375    
376              IF (temp_hmask(i,j,bi,bj).eq.1.0 .or.
377         &        temp_hmask(i,j,bi,bj).eq.0.0) THEN
378    
379    
380             ! NORTH FACE OF CELL             ! NORTH FACE OF CELL
381             maskFlag=INT(temp_vfacemask(i,j+1,bi,bj))             maskFlag=INT(temp_vfacemask(i,j+1,bi,bj))
382             IF (maskFlag.eq.2) THEN             IF (maskFlag.eq.2) THEN
# Line 360  C         INITIALIZE BOUNDARY CONDS AT N Line 402  C         INITIALIZE BOUNDARY CONDS AT N
402         ENDDO         ENDDO
403        ENDDO        ENDDO
404    
405    #ifdef ALLOW_CTRL
406    !      _EXCH_XY_RL(STREAMICE_ctrl_mask, myThid )
407          CALL ACTIVE_WRITE_GEN_RS( 'maskCtrlL', STREAMICE_ctrl_mask,
408         &  'XY', Nr, 1, .FALSE., 0, mythid, dummyRS )
409    #endif
410    
411    
412        _EXCH_XY_RL(k1AtC_str, myThid )        _EXCH_XY_RL(k1AtC_str, myThid )
413        _EXCH_XY_RL(k2AtC_str, myThid )        _EXCH_XY_RL(k2AtC_str, myThid )
414        _EXCH_XY_RL(STREAMICE_ufacemask_bdry, myThid )        _EXCH_XY_RL(STREAMICE_ufacemask_bdry, myThid )
# Line 373  C         INITIALIZE BOUNDARY CONDS AT N Line 422  C         INITIALIZE BOUNDARY CONDS AT N
422        Xquad (2) = .5 * (1.+1./sqrt(3.))        Xquad (2) = .5 * (1.+1./sqrt(3.))
423    
424        CALL STREAMICE_INIT_PHI( myThid )        CALL STREAMICE_INIT_PHI( myThid )
425          PRINT *, "GOT HERE END INIT FIXED"
426                
427    
428  #endif  #endif

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22