124 |
& -aW2d(I+1,J ,bi,bj)*cg2d_x(I ,J ,bi,bj) |
& -aW2d(I+1,J ,bi,bj)*cg2d_x(I ,J ,bi,bj) |
125 |
& -aS2d(I ,J ,bi,bj)*cg2d_x(I ,J ,bi,bj) |
& -aS2d(I ,J ,bi,bj)*cg2d_x(I ,J ,bi,bj) |
126 |
& -aS2d(I ,J+1,bi,bj)*cg2d_x(I ,J ,bi,bj) |
& -aS2d(I ,J+1,bi,bj)*cg2d_x(I ,J ,bi,bj) |
127 |
& -freeSurfFac*_rA(i,j,bi,bj)* |
& -freeSurfFac*_rA(i,j,bi,bj)* Gravity*rhoConst* |
128 |
& cg2d_x(I ,J ,bi,bj)/deltaTMom/deltaTMom*cg2dNorm |
& cg2d_x(I ,J ,bi,bj)/deltaTMom/deltaTMom*cg2dNorm |
129 |
& ) |
& ) |
130 |
err = err + |
err = err + |
144 |
C WRITE(6,*) ' mythid, err = ', mythid, SQRT(err) |
C WRITE(6,*) ' mythid, err = ', mythid, SQRT(err) |
145 |
_GLOBAL_SUM_R8( errBuf , err , myThid ) |
_GLOBAL_SUM_R8( errBuf , err , myThid ) |
146 |
err = errBuf(1,1) |
err = errBuf(1,1) |
147 |
C write(0,*) 'cg2d: Sum(rhs) = ',sumRHS |
write(0,*) 'cg2d: Sum(rhs) = ',sumRHS |
148 |
|
|
149 |
actualIts = 0 |
actualIts = 0 |
150 |
actualResidual = SQRT(err) |
actualResidual = SQRT(err) |
157 |
DO 10 it2d=1, cg2dMaxIters |
DO 10 it2d=1, cg2dMaxIters |
158 |
|
|
159 |
CcnhDebugStarts |
CcnhDebugStarts |
160 |
C WRITE(0,*) ' CG2D: Iteration ',it2d-1,' residual = ',actualResidual |
WRITE(0,*) ' CG2D: Iteration ',it2d-1,' residual = ',actualResidual |
161 |
CcnhDebugEnds |
CcnhDebugEnds |
162 |
IF ( err .LT. cg2dTargetResidual ) GOTO 11 |
IF ( err .LT. cg2dTargetResidual ) GOTO 11 |
163 |
C-- Solve preconditioning equation and update |
C-- Solve preconditioning equation and update |
225 |
& -aW2d(I+1,J ,bi,bj)*cg2d_s(I ,J ,bi,bj) |
& -aW2d(I+1,J ,bi,bj)*cg2d_s(I ,J ,bi,bj) |
226 |
& -aS2d(I ,J ,bi,bj)*cg2d_s(I ,J ,bi,bj) |
& -aS2d(I ,J ,bi,bj)*cg2d_s(I ,J ,bi,bj) |
227 |
& -aS2d(I ,J+1,bi,bj)*cg2d_s(I ,J ,bi,bj) |
& -aS2d(I ,J+1,bi,bj)*cg2d_s(I ,J ,bi,bj) |
228 |
& -freeSurfFac*_rA(i,j,bi,bj)* |
& -freeSurfFac*_rA(i,j,bi,bj)* Gravity*rhoConst* |
229 |
& cg2d_s(I ,J ,bi,bj)/deltaTMom/deltaTMom*cg2dNorm |
& cg2d_s(I ,J ,bi,bj)/deltaTMom/deltaTMom*cg2dNorm |
230 |
alpha = alpha+cg2d_s(I,J,bi,bj)*cg2d_q(I,J,bi,bj) |
alpha = alpha+cg2d_s(I,J,bi,bj)*cg2d_q(I,J,bi,bj) |
231 |
ENDDO |
ENDDO |