| 132 | 
      I      uIce, vIce,  | 
      I      uIce, vIce,  | 
| 133 | 
      O      uIceRes, vIceRes,  | 
      O      uIceRes, vIceRes,  | 
| 134 | 
      I      newtonIter, 0, myTime, myIter, myThid ) | 
      I      newtonIter, 0, myTime, myIter, myThid ) | 
| 135 | 
  | 
        CALL EXCH_UV_XY_RL( uIceRes, vIceRes,.TRUE.,myThid) | 
| 136 | 
 C     local copies of precomputed coefficients that are to stay | 
 C     local copies of precomputed coefficients that are to stay | 
| 137 | 
 C     constant for the preconditioner | 
 C     constant for the preconditioner | 
| 138 | 
        DO bj=myByLo(myThid),myByHi(myThid) | 
        DO bj=myByLo(myThid),myByHi(myThid) | 
| 197 | 
         WRITE(msgBuf,'(2A,2(1XI6),2E12.5)')  | 
         WRITE(msgBuf,'(2A,2(1XI6),2E12.5)')  | 
| 198 | 
      &       ' S/R SEAICE_JFNK: newtonIter,', | 
      &       ' S/R SEAICE_JFNK: newtonIter,', | 
| 199 | 
      &       ' total newtonIter, JFNKgamma_lin, initial norm = ', | 
      &       ' total newtonIter, JFNKgamma_lin, initial norm = ', | 
| 200 | 
      &       newtonIter, SEAICEnewtonIterMax*myIter+newtonIter,  | 
      &       newtonIter,SEAICEnewtonIterMax*(myIter-nIter0)+newtonIter,  | 
| 201 | 
      &       JFNKgamma_lin, JFNKresidual | 
      &       JFNKgamma_lin, JFNKresidual | 
| 202 | 
         CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, | 
         CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, | 
| 203 | 
      &       SQUEEZE_RIGHT, myThid ) | 
      &       SQUEEZE_RIGHT, myThid ) | 
| 218 | 
 C     residual vector (rhs) Fu = u/vIceRes | 
 C     residual vector (rhs) Fu = u/vIceRes | 
| 219 | 
 C     output work vectors wk1, -> input work vector wk2  | 
 C     output work vectors wk1, -> input work vector wk2  | 
| 220 | 
 C      | 
 C      | 
 | 
          CALL EXCH_UV_XY_RL( uIceRes, vIceRes,.TRUE.,myThid) | 
  | 
 | 
          CALL EXCH_UV_XY_RL( duIce, dvIce,.TRUE.,myThid) | 
  | 
| 221 | 
          CALL SEAICE_FGMRES_DRIVER( | 
          CALL SEAICE_FGMRES_DRIVER( | 
| 222 | 
      I        uIceRes, vIceRes,  | 
      I        uIceRes, vIceRes,  | 
| 223 | 
      U        duIce, dvIce, iCode, | 
      U        duIce, dvIce, iCode, | 
| 247 | 
         IF ( debugLevel.GE.debLevA ) THEN | 
         IF ( debugLevel.GE.debLevA ) THEN | 
| 248 | 
          WRITE(msgBuf,'(3(A,I6))') | 
          WRITE(msgBuf,'(3(A,I6))') | 
| 249 | 
      &        ' S/R SEAICE_JFNK: Newton iterate / total = ', newtonIter,  | 
      &        ' S/R SEAICE_JFNK: Newton iterate / total = ', newtonIter,  | 
| 250 | 
      &        ' / ', SEAICEnewtonIterMax*myIter+newtonIter,  | 
      &        ' / ', SEAICEnewtonIterMax*(myIter-nIter0)+newtonIter,  | 
| 251 | 
      &        ', Nb. of FGMRES iterations = ', krylovIter | 
      &        ', Nb. of FGMRES iterations = ', krylovIter | 
| 252 | 
          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, | 
          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, | 
| 253 | 
      &        SQUEEZE_RIGHT, myThid ) | 
      &        SQUEEZE_RIGHT, myThid ) |