168 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
169 |
!$TAF STORE cgtol = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE cgtol = comlev1_stream_nl, key=ikey_nl |
170 |
!$TAF STORE err_max = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE err_max = comlev1_stream_nl, key=ikey_nl |
171 |
|
!$TAF STORE err_max_fp = comlev1_stream_nl, key=ikey_nl |
172 |
!$TAF STORE err_tempu = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE err_tempu = comlev1_stream_nl, key=ikey_nl |
173 |
!$TAF STORE err_tempv = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE err_tempv = comlev1_stream_nl, key=ikey_nl |
174 |
!$TAF STORE err_lastchange = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE err_lastchange = comlev1_stream_nl, key=ikey_nl |
175 |
!$TAF STORE ru_old_si = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE ru_old_si = comlev1_stream_nl, key=ikey_nl |
176 |
!$TAF STORE rv_old_si = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE rv_old_si = comlev1_stream_nl, key=ikey_nl |
177 |
|
!$TAF STORE u_old_si = comlev1_stream_nl, key=ikey_nl |
178 |
|
!$TAF STORE v_old_si = comlev1_stream_nl, key=ikey_nl |
179 |
!$TAF STORE streamice_cg_a1 = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE streamice_cg_a1 = comlev1_stream_nl, key=ikey_nl |
180 |
!$TAF STORE streamice_cg_a2 = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE streamice_cg_a2 = comlev1_stream_nl, key=ikey_nl |
181 |
!$TAF STORE streamice_cg_a3 = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE streamice_cg_a3 = comlev1_stream_nl, key=ikey_nl |
294 |
!$TAF STORE V_streamice = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE V_streamice = comlev1_stream_nl, key=ikey_nl |
295 |
#endif |
#endif |
296 |
|
|
|
DO bj = myByLo(myThid), myByHi(myThid) |
|
|
DO bi = myBxLo(myThid), myBxHi(myThid) |
|
|
DO j=1-OLy,sNy+OLy |
|
|
DO i=1-OLx,sNx+OLx |
|
|
u_old_SI (i,j,bi,bj) = U_streamice (i,j,bi,bj) |
|
|
v_old_SI (i,j,bi,bj) = V_streamice (i,j,bi,bj) |
|
|
ENDDO |
|
|
ENDDO |
|
|
ENDDO |
|
|
ENDDO |
|
|
|
|
297 |
err_max = 0. _d 0 |
err_max = 0. _d 0 |
298 |
|
err_max_fp = 0. _d 0 |
299 |
|
|
300 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
301 |
!$TAF STORE err_max = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE err_max = comlev1_stream_nl, key=ikey_nl |
348 |
ENDDO |
ENDDO |
349 |
|
|
350 |
CALL GLOBAL_MAX_R8 (err_max_fp, myThid) |
CALL GLOBAL_MAX_R8 (err_max_fp, myThid) |
351 |
|
print *, "err_max_fp", err_max_fp |
352 |
|
|
353 |
|
DO bj = myByLo(myThid), myByHi(myThid) |
354 |
|
DO bi = myBxLo(myThid), myBxHi(myThid) |
355 |
|
DO j=1-OLy,sNy+OLy |
356 |
|
DO i=1-OLx,sNx+OLx |
357 |
|
u_old_SI (i,j,bi,bj) = U_streamice (i,j,bi,bj) |
358 |
|
v_old_SI (i,j,bi,bj) = V_streamice (i,j,bi,bj) |
359 |
|
ENDDO |
360 |
|
ENDDO |
361 |
|
ENDDO |
362 |
|
ENDDO |
363 |
|
|
364 |
WRITE(msgBuf,'(A,F11.7)') 'err/err_init', |
WRITE(msgBuf,'(A,F11.7)') 'err/err_init', |
365 |
& err_max/err_init |
& err_max/err_init |
395 |
& SQUEEZE_RIGHT , 1) |
& SQUEEZE_RIGHT , 1) |
396 |
endif |
endif |
397 |
|
|
|
! DO bj = myByLo(myThid), myByHi(myThid) |
|
|
! DO bi = myBxLo(myThid), myBxHi(myThid) |
|
|
! DO j=1,sNy |
|
|
! DO i=1,sNx |
|
|
! U_streamice (i,j,bi,bj) = 0. _d 0 |
|
|
! V_streamice (i,j,bi,bj) = 0. _d 0 |
|
|
! ENDDO |
|
|
! ENDDO |
|
|
! ENDDO |
|
|
! ENDDO |
|
|
! |
|
|
! CALL STREAMICE_CG_WRAPPER( |
|
|
! & U_streamice, |
|
|
! & V_streamice, |
|
|
! & taudx_SI, |
|
|
! & taudy_SI, |
|
|
! & cgtol, |
|
|
! & cg_iters, |
|
|
! & myThid ) |
|
|
|
|
|
|
|
398 |
_EXCH_XY_RL (U_streamice, myThid) |
_EXCH_XY_RL (U_streamice, myThid) |
399 |
_EXCH_XY_RL (V_streamice, myThid) |
_EXCH_XY_RL (V_streamice, myThid) |
400 |
|
|