55 |
INTEGER i,j,k |
INTEGER i,j,k |
56 |
_RL uTrans(1-Olx:sNx+Olx,1-Oly:sNy+Oly) |
_RL uTrans(1-Olx:sNx+Olx,1-Oly:sNy+Oly) |
57 |
_RL vTrans(1-Olx:sNx+Olx,1-Oly:sNy+Oly) |
_RL vTrans(1-Olx:sNx+Olx,1-Oly:sNy+Oly) |
58 |
_RL wSurf |
_RL wSurf, facEmP |
59 |
CEOP |
CEOP |
60 |
|
|
61 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
136 |
|
|
137 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
138 |
|
|
139 |
|
#ifdef NONLIN_FRSURF |
140 |
|
IF (select_rStar .NE. 0) THEN |
141 |
|
facEmP = 0. |
142 |
|
IF (useRealFreshWaterFlux) facEmP = convertEmP2rUnit |
143 |
|
|
144 |
|
IF ( useRealFreshWaterFlux .AND. myTime.EQ.startTime ) THEN |
145 |
|
C needs previous time-step value of E-P-R, that has not been loaded |
146 |
|
C and was not in pickup-file ; try to use etaN & etaH instead. |
147 |
|
DO j=1,sNy |
148 |
|
DO i=1,sNx |
149 |
|
rStarDhCDt(i,j,bi,bj) = |
150 |
|
& ( etaN(i,j,bi,bj)-etaH(i,j,bi,bj) ) |
151 |
|
& /(implicDiv2Dflow*deltaTfreesurf) |
152 |
|
& * recip_Rcol(i,j,bi,bj) |
153 |
|
ENDDO |
154 |
|
ENDDO |
155 |
|
ELSE |
156 |
|
DO j=1,sNy |
157 |
|
DO i=1,sNx |
158 |
|
rStarDhCDt(i,j,bi,bj) = |
159 |
|
& (-hDivFlow(i,j,bi,bj)*recip_rA(i,j,bi,bj) |
160 |
|
& -facEmP*EmPmR(i,j,bi,bj) |
161 |
|
& ) * recip_Rcol(i,j,bi,bj) |
162 |
|
ENDDO |
163 |
|
ENDDO |
164 |
|
ENDIF |
165 |
|
|
166 |
|
ENDIF |
167 |
|
#endif /* NONLIN_FRSURF */ |
168 |
|
|
169 |
|
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
170 |
|
|
171 |
DO k=Nr,1,-1 |
DO k=Nr,1,-1 |
172 |
C-- Integrate continuity vertically for vertical velocity |
C-- Integrate continuity vertically for vertical velocity |
173 |
|
|