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

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

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

revision 1.31 by jmc, Fri Jul 15 20:50:44 2005 UTC revision 1.35 by stephd, Mon Dec 19 19:09:35 2005 UTC
# Line 3  C $Name$ Line 3  C $Name$
3    
4  #include "PACKAGES_CONFIG.h"  #include "PACKAGES_CONFIG.h"
5  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
6    #ifdef ALLOW_EXF
7    # include "EXF_OPTIONS.h"
8    #endif
9    
10  CBOP  CBOP
11  C     !ROUTINE: EXTERNAL_FORCING_U  C     !ROUTINE: EXTERNAL_FORCING_U
# Line 73  C--   Forcing term Line 76  C--   Forcing term
76    
77  C     Add windstress momentum impulse into the top-layer  C     Add windstress momentum impulse into the top-layer
78        IF ( kLev .EQ. kSurface ) THEN        IF ( kLev .EQ. kSurface ) THEN
79         DO j=1,sNy  c      DO j=1,sNy
80    C-jmc: Without CD-scheme, this is OK ; but with CD-scheme, needs to cover [0:sNy+1]
81           DO j=0,sNy+1
82          DO i=1,sNx+1          DO i=1,sNx+1
83           gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj)           gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj)
84       &   +foFacMom*surfaceForcingU(i,j,bi,bj)       &   +foFacMom*surfaceForcingU(i,j,bi,bj)
# Line 170  C--   Forcing term Line 175  C--   Forcing term
175  C     Add windstress momentum impulse into the top-layer  C     Add windstress momentum impulse into the top-layer
176        IF ( kLev .EQ. kSurface ) THEN        IF ( kLev .EQ. kSurface ) THEN
177         DO j=1,sNy+1         DO j=1,sNy+1
178          DO i=1,sNx  c       DO i=1,sNx
179    C-jmc: Without CD-scheme, this is OK ; but with CD-scheme, needs to cover [0:sNx+1]
180            DO i=0,sNx+1
181           gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj)           gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj)
182       &   +foFacMom*surfaceForcingV(i,j,bi,bj)       &   +foFacMom*surfaceForcingV(i,j,bi,bj)
183       &   *recip_drF(kLev)*recip_hFacS(i,j,kLev,bi,bj)       &   *recip_drF(kLev)*recip_hFacS(i,j,kLev,bi,bj)
# Line 307  c     IF ( usePenetratingSW ) THEN Line 314  c     IF ( usePenetratingSW ) THEN
314  c     ENDIF  c     ENDIF
315  #endif  #endif
316    
317    #ifdef ALLOW_RBCS
318           if (useRBCS) then
319              call RBCS_ADD_TENDENCY(bi,bj,klev, 1,
320         &                            myTime, myThid )
321           endif
322    #endif
323    
324    #ifdef ALLOW_CLIMTEMP_RELAXATION
325           IF ( tauThetaClimRelax3Dim .NE. 0. ) THEN
326            DO j=1,sNy
327             DO i=1,sNx
328              gT(i,j,klev,bi,bj) = gT(i,j,klev,bi,bj)
329         &     -1./tauThetaClimRelax3Dim
330         &         *(theta(i,j,klev,bi,bj)-thetaStar(i,j,klev,bi,bj))
331         &         *hFacC(i,j,klev,bi,bj)*recip_hFacC(i,j,kLev,bi,bj)
332             ENDDO
333            ENDDO
334           ENDIF
335    #endif
336    
337  #ifdef ALLOW_OBCS  #ifdef ALLOW_OBCS
338        IF (useOBCS) THEN        IF (useOBCS) THEN
339         CALL OBCS_SPONGE_T(         CALL OBCS_SPONGE_T(
# Line 398  C     Add fresh-water in top-layer Line 425  C     Add fresh-water in top-layer
425         ENDDO         ENDDO
426        ENDIF        ENDIF
427    
428    #ifdef ALLOW_RBCS
429           if (useRBCS) then
430              call RBCS_ADD_TENDENCY(bi,bj,klev, 2,
431         &                            myTime, myThid )
432           endif
433    #endif
434    
435    #ifdef ALLOW_CLIMSALT_RELAXATION
436           IF ( tauSaltClimRelax3Dim .NE. 0. ) THEN
437            DO j=1,sNy
438             DO i=1,sNx
439              gS(i,j,klev,bi,bj) = gS(i,j,klev,bi,bj)
440         &     -1./tauSaltClimRelax3Dim
441         &         *(salt(i,j,klev,bi,bj)-saltStar(i,j,klev,bi,bj))
442         &         *hFacC(i,j,klev,bi,bj)*recip_hFacC(i,j,kLev,bi,bj)
443             ENDDO
444            ENDDO
445           ENDIF
446    #endif
447    
448  #ifdef ALLOW_OBCS  #ifdef ALLOW_OBCS
449        IF (useOBCS) THEN        IF (useOBCS) THEN
450         CALL OBCS_SPONGE_S(         CALL OBCS_SPONGE_S(

Legend:
Removed from v.1.31  
changed lines
  Added in v.1.35

  ViewVC Help
Powered by ViewVC 1.1.22