/[MITgcm]/MITgcm/pkg/obcs/obcs_calc.F
ViewVC logotype

Diff of /MITgcm/pkg/obcs/obcs_calc.F

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

revision 1.2 by adcroft, Fri Feb 2 21:36:30 2001 UTC revision 1.6 by jmc, Fri Feb 8 22:16:09 2002 UTC
# Line 3  C $Name$ Line 3  C $Name$
3    
4  #include "OBCS_OPTIONS.h"  #include "OBCS_OPTIONS.h"
5    
6        SUBROUTINE OBCS_CALC( bi, bj, futureTime,        SUBROUTINE OBCS_CALC( bi, bj, futureTime, futureIter,
7       &                      uVel, vVel, wVel, theta, salt,       &                      uVel, vVel, wVel, theta, salt,
8       &                      myThid )       &                      myThid )
9  C     /==========================================================\  C     /==========================================================\
# Line 23  C     === Global variables === Line 23  C     === Global variables ===
23    
24  C     == Routine arguments ==  C     == Routine arguments ==
25        INTEGER bi, bj        INTEGER bi, bj
26          INTEGER futureIter
27        _RL futureTime        _RL futureTime
28        _RL uVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL uVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
29        _RL vVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL vVel (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
# Line 34  C     == Routine arguments == Line 35  C     == Routine arguments ==
35  #ifdef ALLOW_OBCS  #ifdef ALLOW_OBCS
36    
37  C     == Local variables ==  C     == Local variables ==
38        INTEGER I, J ,K        INTEGER I, J , K, I_obc, J_obc
39    
40  C     Eastern OB  C     Eastern OB
41        IF (useOrlanskiEast) THEN        IF (useOrlanskiEast) THEN
# Line 45  C     Eastern OB Line 46  C     Eastern OB
46        ELSE        ELSE
47          DO K=1,Nr          DO K=1,Nr
48            DO J=1-Oly,sNy+Oly            DO J=1-Oly,sNy+Oly
49              OBEu(J,K,bi,bj)=0.              I_obc=OB_Ie(J,bi,bj)
50              OBEv(J,K,bi,bj)=0.              IF (I_obc.ne.0) THEN
51              OBEt(J,K,bi,bj)=tRef(K)                OBEu(J,K,bi,bj)=0.
52              OBEs(J,K,bi,bj)=sRef(K)                OBEv(J,K,bi,bj)=0.
53                  OBEt(J,K,bi,bj)=tRef(K)
54                  OBEs(J,K,bi,bj)=sRef(K)
55  #ifdef ALLOW_NONHYDROSTATIC  #ifdef ALLOW_NONHYDROSTATIC
56              OBEw(J,K,bi,bj)=0.                OBEw(J,K,bi,bj)=0.
57  #endif  #endif
58    #ifdef NONLIN_FRSURF
59                  OBEeta(J,bi,bj)=0.
60    #endif
61                ENDIF
62            ENDDO            ENDDO
63          ENDDO          ENDDO
64        ENDIF        ENDIF
# Line 65  C     Western OB Line 72  C     Western OB
72        ELSE        ELSE
73          DO K=1,Nr          DO K=1,Nr
74            DO J=1-Oly,sNy+Oly            DO J=1-Oly,sNy+Oly
75              OBWu(J,K,bi,bj)=0.              I_obc=OB_Iw(J,bi,bj)
76              OBWv(J,K,bi,bj)=0.              IF (I_obc.ne.0) THEN
77              OBWt(J,K,bi,bj)=tRef(K)                OBWu(J,K,bi,bj)=0.
78              OBWs(J,K,bi,bj)=sRef(K)                OBWv(J,K,bi,bj)=0.
79                  OBWt(J,K,bi,bj)=tRef(K)
80                  OBWs(J,K,bi,bj)=sRef(K)
81  #ifdef ALLOW_NONHYDROSTATIC  #ifdef ALLOW_NONHYDROSTATIC
82              OBWw(J,K,bi,bj)=0.                OBWw(J,K,bi,bj)=0.
83    #endif
84    #ifdef NONLIN_FRSURF
85                  OBWeta(J,bi,bj)=0.
86  #endif  #endif
87                ENDIF
88            ENDDO            ENDDO
89          ENDDO          ENDDO
90        ENDIF        ENDIF
91    
92  C         Northern OB, template for forcing  C         Northern OB
93        IF (useOrlanskiNorth) THEN        IF (useOrlanskiNorth) THEN
94          CALL ORLANSKI_NORTH(          CALL ORLANSKI_NORTH(
95       &          bi, bj, futureTime,       &          bi, bj, futureTime,
# Line 85  C         Northern OB, template for forc Line 98  C         Northern OB, template for forc
98        ELSE        ELSE
99          DO K=1,Nr          DO K=1,Nr
100            DO I=1-Olx,sNx+Olx            DO I=1-Olx,sNx+Olx
101              OBNv(I,K,bi,bj)=0.              J_obc=OB_Jn(I,bi,bj)
102              OBNu(I,K,bi,bj)=0.              IF (J_obc.ne.0) THEN
103              OBNt(I,K,bi,bj)=tRef(K)                OBNv(I,K,bi,bj)=0.
104              OBNs(I,K,bi,bj)=sRef(K)                OBNu(I,K,bi,bj)=0.
105                  OBNt(I,K,bi,bj)=tRef(K)
106                  OBNs(I,K,bi,bj)=sRef(K)
107  #ifdef ALLOW_NONHYDROSTATIC  #ifdef ALLOW_NONHYDROSTATIC
108              OBNw(I,K,bi,bj)=0.                OBNw(I,K,bi,bj)=0.
109  #endif  #endif
110    #ifdef NONLIN_FRSURF
111                  OBNeta(I,bi,bj)=0.
112    #endif
113                ENDIF
114            ENDDO            ENDDO
115          ENDDO          ENDDO
116        ENDIF        ENDIF
117    
118  C         Southern OB, template for forcing  C         Southern OB
119        IF (useOrlanskiSouth) THEN          IF (useOrlanskiSouth) THEN  
120          CALL ORLANSKI_SOUTH(          CALL ORLANSKI_SOUTH(
121       &          bi, bj, futureTime,       &          bi, bj, futureTime,
# Line 105  C         Southern OB, template for forc Line 124  C         Southern OB, template for forc
124        ELSE        ELSE
125          DO K=1,Nr          DO K=1,Nr
126            DO I=1-Olx,sNx+Olx            DO I=1-Olx,sNx+Olx
127              OBSu(I,K,bi,bj)=0.              J_obc=OB_Js(I,bi,bj)
128              OBSv(I,K,bi,bj)=0.              IF (J_obc.ne.0) THEN
129              OBSt(I,K,bi,bj)=tRef(K)                OBSu(I,K,bi,bj)=0.
130              OBSs(I,K,bi,bj)=sRef(K)                OBSv(I,K,bi,bj)=0.
131                  OBSt(I,K,bi,bj)=tRef(K)
132                  OBSs(I,K,bi,bj)=sRef(K)
133  #ifdef ALLOW_NONHYDROSTATIC  #ifdef ALLOW_NONHYDROSTATIC
134              OBSw(I,K,bi,bj)=0.                OBSw(I,K,bi,bj)=0.
135    #endif
136    #ifdef NONLIN_FRSURF
137                  OBSeta(I,bi,bj)=0.
138  #endif  #endif
139                ENDIF
140            ENDDO            ENDDO
141          ENDDO          ENDDO
142        ENDIF        ENDIF

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.6

  ViewVC Help
Powered by ViewVC 1.1.22