2#if defined TANGENT && !defined SOLVE3D
21# if defined MODEL_COUPLING && defined MCT_LIB
32# ifdef TIDE_GENERATING_FORCES
35# if defined ATM_COUPLING_NOT_YET && defined MCT_LIB
38# if defined WAV_COUPLING_NOT_YET && defined MCT_LIB
43# if defined WEAK_CONSTRAINT || defined FORCING_SV
50# ifdef ADJUST_BOUNDARY
53# ifdef NEARSHORE_MELLOR_NOT_YET
59# if defined SSH_TIDES_NOT_YET || defined UV_TIDES_NOT_YET
72 real(dp),
intent(in) :: RunInterval
79 integer :: Lend, Lstr, chunk_size
82 real(r8) :: MaxDT, my_StepTime
84 character (len=*),
parameter :: MyFile = &
94 step_loop :
DO WHILE (my_steptime.le.(runinterval+0.5_r8*maxdt))
96 my_steptime=my_steptime+maxdt
135# if (defined WEAK_CONSTRAINT || defined FORCING_SV) && \
147# ifdef WEAK_CONSTRAINT
149 IF ((
iic(ng).gt.1).and.(
iic(ng).ne.
ntend(ng)+1).and. &
150 & (mod(
iic(ng)-1,
nadj(ng)).eq.0))
THEN
152 WRITE (
stdout,*)
' FORCING TLM at iic = ',
iic(ng)
211# ifdef TIDE_GENERATING_FORCES
212 CALL equilibrium_tide (ng, tile,
itlm)
222# if defined ATM_COUPLING_NOT_YET && defined MCT_LIB
233 CALL ocn2atm_coupling (ng, tile)
240# ifdef ADJUST_BOUNDARY
257# ifdef ADJUST_WSTRESS
274# if defined WAV_COUPLING_NOT_YET && defined MCT_LIB
285 CALL ocn2wav_coupling (ng, tile)
292# ifdef NEARSHORE_MELLOR_NOT_YET
300 CALL tl_radiation_stress (ng, tile)
313# if defined SSH_TIDES_NOT_YET || defined UV_TIDES_NOT_YET
314 CALL tl_set_tides (ng, tile)
346 next_indx1=3-
indx1(ng)
349 IF (first_2d_step)
THEN
390# ifdef FLOATS_NOT_YET
404 lstr=1+my_thread*chunk_size
405 lend=min(
nfloats(ng),lstr+chunk_size-1)
410 CALL tl_step_floats (ng, lstr, lend)
subroutine, public time_string(mytime, date_string)
subroutine, public tl_dotproduct(ng, tile, linp)
integer, dimension(:,:), allocatable couplesteps
integer, dimension(:), allocatable first_tile
integer, dimension(:), allocatable last_tile
integer, dimension(:), allocatable nfloats
logical, dimension(:), allocatable lfloats
integer, dimension(:), allocatable iic
real(dp), dimension(:), allocatable dt
logical, dimension(:), allocatable predictor_2d_step
real(dp), dimension(:), allocatable tdays
logical, dimension(:), allocatable frequentimpulse
integer, dimension(:), allocatable nfast
real(dp), parameter sec2day
integer, dimension(:), allocatable ntend
character(len=22), dimension(:), allocatable time_code
integer, dimension(:), allocatable indx1
real(dp), dimension(:), allocatable time
integer, dimension(:), allocatable ntstart
integer, dimension(:), allocatable nadj
integer, dimension(:), allocatable iif
integer, dimension(:), allocatable nfm2
integer, dimension(:), allocatable kstp
integer, dimension(:), allocatable knew
integer, dimension(:), allocatable nfm1
integer, dimension(:), allocatable lfinp
integer, dimension(:), allocatable lbinp
integer, dimension(:), allocatable nf
integer, dimension(:), allocatable nfm3
integer, dimension(:), allocatable nfp1
integer, dimension(:), allocatable lnew
integer, dimension(:), allocatable krhs
integer, dimension(:), allocatable nstp
logical function, public founderror(flag, noerr, line, routine)
subroutine, public tl_diag(ng, tile)
subroutine, public tl_forcing(ng, tile, kfrc, nfrc)
subroutine, public tl_frc_adjust(ng, tile, linp)
subroutine, public tl_ini_fields(ng, tile, model)
subroutine, public tl_ini_zeta(ng, tile, model)
subroutine, public tl_obc_adjust(ng, tile, linp)
subroutine, public tl_set_avg(ng, tile)
subroutine, public tl_set_vbc(ng, tile)
subroutine, public tl_step2d(ng, tile)
subroutine tl_get_data(ng)
subroutine tl_set_data(ng, tile)