| 2 | 
 C $Name$ | 
 C $Name$ | 
| 3 | 
  | 
  | 
| 4 | 
 #include "SEAICE_OPTIONS.h" | 
 #include "SEAICE_OPTIONS.h" | 
| 5 | 
  | 
 #ifdef ALLOW_AUTODIFF | 
| 6 | 
  | 
 # include "AUTODIFF_OPTIONS.h" | 
| 7 | 
  | 
 #endif | 
| 8 | 
  | 
  | 
| 9 | 
 C--  File seaice_jfnk.F: seaice jfnk dynamical solver S/R: | 
 C--  File seaice_jfnk.F: seaice jfnk dynamical solver S/R: | 
| 10 | 
 C--   Contents | 
 C--   Contents | 
| 153 | 
           vIceNm1(I,J,bi,bj) = vIce(I,J,bi,bj) | 
           vIceNm1(I,J,bi,bj) = vIce(I,J,bi,bj) | 
| 154 | 
          ENDDO | 
          ENDDO | 
| 155 | 
         ENDDO | 
         ENDDO | 
| 156 | 
         IF ( .NOT.SEAICEuseIMEX ) THEN | 
 C     As long as IMEX is not properly implemented leave this commented out | 
| 157 | 
  | 
 CML        IF ( .NOT.SEAICEuseIMEX ) THEN | 
| 158 | 
 C     Compute things that do no change during the Newton iteration: | 
 C     Compute things that do no change during the Newton iteration: | 
| 159 | 
 C     sea-surface tilt and wind stress: | 
 C     sea-surface tilt and wind stress: | 
| 160 | 
 C     FORCEX/Y0 - mass*(1.5*u/vIceNm1+0.5*(u/vIceNm1-u/vIceNm2))/deltaT | 
 C     FORCEX/Y0 - mass*(1.5*u/vIceNm1+0.5*(u/vIceNm1-u/vIceNm2))/deltaT | 
| 166 | 
      &         + seaiceMassV(I,J,bi,bj)*dvIcNm1(I,J,bi,bj)*recip_deltaT | 
      &         + seaiceMassV(I,J,bi,bj)*dvIcNm1(I,J,bi,bj)*recip_deltaT | 
| 167 | 
          ENDDO | 
          ENDDO | 
| 168 | 
         ENDDO | 
         ENDDO | 
| 169 | 
         ENDIF | 
 CML        ENDIF | 
| 170 | 
        ENDDO | 
        ENDDO | 
| 171 | 
       ENDDO | 
       ENDDO | 
| 172 | 
 C     Start nonlinear Newton iteration: outer loop iteration | 
 C     Start nonlinear Newton iteration: outer loop iteration |