21 |
#include "PARAMS.h" |
#include "PARAMS.h" |
22 |
#include "STREAMICE.h" |
#include "STREAMICE.h" |
23 |
#include "STREAMICE_CG.h" |
#include "STREAMICE_CG.h" |
24 |
#ifdef ALLOW_PETSC |
!#ifdef ALLOW_PETSC |
25 |
#include "finclude/petsc.h" |
!#include "finclude/petsc.h" |
26 |
#endif |
!#endif |
27 |
|
|
28 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
29 |
# include "tamc.h" |
# include "tamc.h" |
46 |
|
|
47 |
INTEGER conv_flag, i, j, k, l, iter, cg_iters, bi, bj |
INTEGER conv_flag, i, j, k, l, iter, cg_iters, bi, bj |
48 |
INTEGER iter_numconv |
INTEGER iter_numconv |
49 |
INTEGER ikey_nl |
INTEGER ikey_nl, myThidTemp |
50 |
_RL err_max, err_tempu, err_tempv, err_init, area, err_max_fp |
_RL err_max, err_tempu, err_tempv, err_init, area, err_max_fp |
51 |
_RL max_vel, tempu, tempv, err_lastchange, cgtol |
_RL max_vel, tempu, tempv, err_lastchange, cgtol |
52 |
CHARACTER*(MAX_LEN_MBUF) msgBuf |
CHARACTER*(MAX_LEN_MBUF) msgBuf |
53 |
#ifdef ALLOW_PETSC |
#ifdef ALLOW_PETSC |
54 |
PetscErrorCode ierr |
! myThidTemp = myThid |
55 |
|
! call streamice_initialize_petsc (myThidTemp) |
56 |
#endif |
#endif |
57 |
! _RL taudx (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
! _RL taudx (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
58 |
! _RL taudy (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
! _RL taudy (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
67 |
|
|
68 |
! CALL WRITE_FULLARRAY_RL ("taudy_SI",taudy_SI,1,0,0,1,0,myThid) |
! CALL WRITE_FULLARRAY_RL ("taudy_SI",taudy_SI,1,0,0,1,0,myThid) |
69 |
|
|
70 |
_EXCH_XY_RL ( taudx_SI , myThid ) |
_EXCH_XY_RL( taudx_SI , myThid ) |
71 |
_EXCH_XY_RL ( taudy_SI , myThid ) |
_EXCH_XY_RL( taudy_SI , myThid ) |
72 |
|
|
73 |
! CALL WRITE_FULLARRAY_RL ("taudy_SI_2",taudy_SI,1,0,0,1,0,myThid) |
! CALL WRITE_FULLARRAY_RL ("taudy_SI_2",taudy_SI,1,0,0,1,0,myThid) |
74 |
|
|
103 |
!$TAF STORE visc_streamice_full = comlev1, key=ikey_dynamics |
!$TAF STORE visc_streamice_full = comlev1, key=ikey_dynamics |
104 |
#endif |
#endif |
105 |
|
|
106 |
_EXCH_XY_RL ( tau_beta_eff_streamice , myThid ) |
_EXCH_XY_RL( tau_beta_eff_streamice , myThid ) |
107 |
_EXCH_XY_RL ( visc_streamice , myThid ) |
_EXCH_XY_RL( visc_streamice , myThid ) |
108 |
|
|
109 |
DO bj = myByLo(myThid), myByHi(myThid) |
DO bj = myByLo(myThid), myByHi(myThid) |
110 |
DO bi = myBxLo(myThid), myBxHi(myThid) |
DO bi = myBxLo(myThid), myBxHi(myThid) |
192 |
|
|
193 |
C START NL ITER. LOOP |
C START NL ITER. LOOP |
194 |
C------------------------------------------------------------------- |
C------------------------------------------------------------------- |
|
#ifdef ALLOW_PETSC |
|
|
call petscInitialize(PETSC_NULL_CHARACTER,ierr) |
|
|
#endif |
|
195 |
|
|
196 |
DO iter=1,streamice_max_nl_iter |
DO iter=1,streamice_max_nl_iter |
197 |
|
|
311 |
!$TAF STORE V_streamice = comlev1_stream_nl, key=ikey_nl |
!$TAF STORE V_streamice = comlev1_stream_nl, key=ikey_nl |
312 |
#endif |
#endif |
313 |
|
|
314 |
_EXCH_XY_RL ( tau_beta_eff_streamice , myThid ) |
_EXCH_XY_RL( tau_beta_eff_streamice , myThid ) |
315 |
_EXCH_XY_RL ( visc_streamice , myThid ) |
_EXCH_XY_RL( visc_streamice , myThid ) |
316 |
|
|
317 |
DO bj = myByLo(myThid), myByHi(myThid) |
DO bj = myByLo(myThid), myByHi(myThid) |
318 |
DO bi = myBxLo(myThid), myBxHi(myThid) |
DO bi = myBxLo(myThid), myBxHi(myThid) |
451 |
ENDDO |
ENDDO |
452 |
|
|
453 |
#ifdef ALLOW_PETSC |
#ifdef ALLOW_PETSC |
454 |
call PetscFinalize(ierr) |
! call streamice_finalize_petsc (myThidTemp) |
455 |
|
! call streamice_finalize_petsc (myThid) |
456 |
#endif |
#endif |
457 |
|
|
458 |
C END NL ITER. LOOP |
C END NL ITER. LOOP |
470 |
& SQUEEZE_RIGHT , 1) |
& SQUEEZE_RIGHT , 1) |
471 |
endif |
endif |
472 |
|
|
473 |
_EXCH_XY_RL (U_streamice, myThid) |
_EXCH_XY_RL(U_streamice, myThid) |
474 |
_EXCH_XY_RL (V_streamice, myThid) |
_EXCH_XY_RL(V_streamice, myThid) |
475 |
! CALL WRITE_FLD_XY_RL("taubx","",streamice_taubx,0,myThid) |
! CALL WRITE_FLD_XY_RL("taubx","",streamice_taubx,0,myThid) |
476 |
! CALL WRITE_FLD_XY_RL("tauby","",streamice_tauby,0,myThid) |
! CALL WRITE_FLD_XY_RL("tauby","",streamice_tauby,0,myThid) |
477 |
|
|