/[MITgcm]/MITgcm/pkg/seaice/seaice_jfnk.F
ViewVC logotype

Diff of /MITgcm/pkg/seaice/seaice_jfnk.F

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

revision 1.5 by mlosch, Wed Nov 7 09:56:23 2012 UTC revision 1.7 by mlosch, Fri Nov 9 12:56:00 2012 UTC
# Line 240  C     FGMRES returns iCode either asking Line 240  C     FGMRES returns iCode either asking
240  C     or product of matrix (Jacobian) times vector. For iCode = 0, terminate  C     or product of matrix (Jacobian) times vector. For iCode = 0, terminate
241  C     iteration  C     iteration
242           IF (iCode.EQ.1) THEN           IF (iCode.EQ.1) THEN
243  C     Call preconditioner  C     Call preconditioner
244            CALL SEAICE_PRECONDITIONER(            IF ( SOLV_MAX_ITERS .GT. 0 )
245         &         CALL SEAICE_PRECONDITIONER(
246       U         duIce, dvIce,       U         duIce, dvIce,
247       I         zetaPre, etaPre, dwatPre, pressPre,       I         zetaPre, etaPre, dwatPre, pressPre,
248       I         newtonIter, krylovIter, myTime, myIter, myThid )       I         newtonIter, krylovIter, myTime, myIter, myThid )
# Line 292  C     end of Newton iterate Line 293  C     end of Newton iterate
293  C  C
294  C--   Output diagnostics  C--   Output diagnostics
295  C  C
296          IF ( SEAICE_monFreq .GT. 0. _d 0 ) THEN
297  C     Count iterations  C     Count iterations
298        totalJFNKtimeSteps = totalJFNKtimeSteps + 1         totalJFNKtimeSteps = totalJFNKtimeSteps + 1
299        totalNewtonIters   = totalNewtonIters + newtonIter         totalNewtonIters   = totalNewtonIters + newtonIter
300        totalKrylovIters   = totalKrylovIters + totalKrylovItersLoc         totalKrylovIters   = totalKrylovIters + totalKrylovItersLoc
301  C     Record failure  C     Record failure
302        totalKrylovFails   = totalKrylovFails + krylovFails         totalKrylovFails   = totalKrylovFails + krylovFails
303        IF ( newtonIter .EQ. SEAICEnewtonIterMax ) THEN         IF ( newtonIter .EQ. SEAICEnewtonIterMax ) THEN
304         totalNewtonFails = totalNewtonFails + 1          totalNewtonFails = totalNewtonFails + 1
305           ENDIF
306        ENDIF        ENDIF
307  C     Decide whether it is time to dump and reset the counter  C     Decide whether it is time to dump and reset the counter
308        IF ( DIFFERENT_MULTIPLE(SEAICE_monFreq,myTime+deltaTClock,        IF ( DIFFERENT_MULTIPLE(SEAICE_monFreq,myTime+deltaTClock,

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.7

  ViewVC Help
Powered by ViewVC 1.1.22