49 USE packing_mod,
ONLY : ad_so_pack,
tl_unpack
51 USE packing_mod,
ONLY : ad_so_pack_red,
tl_unpack
62 real(
dp),
intent(in) :: runinterval
77 integer :: fcount, interval, inttrap
80 real(
r8) :: so_run_time
82 character (len=*),
parameter :: myfile = &
92 WRITE (
stdout,10)
' PROPAGATOR - Grid: ', ng, &
93 &
', Iteration: ',
nrun, &
94 &
', number converged RITZ values: ', &
104#ifdef STOCH_OPT_WHITE
109#ifdef STOCH_OPT_WHITE
116 WRITE (
stdout,20)
' Stochastic Optimals Time Interval = ', &
123#ifndef STOCH_OPT_WHITE
124 IF (interval.eq.1)
THEN
127 soinitial(ng)=.false.
130 IF (interval.eq.1)
THEN
162 IF ((iter.eq.1).and.(interval.eq.1))
THEN
170 adm(ng)%Nrec(fcount)=0
173 tlm(ng)%Nrec(fcount)=0
181#ifdef STOCH_OPT_WHITE
184 adm(ng)%Nrec(fcount)=0
189 adm(ng)%Nrec(fcount)=0
192 IF ((
lmultigst.or.(abs(iter).eq.1)).and. &
193 & (interval.eq.1))
THEN
195 tlm(ng)%Nrec(fcount)=0
250 WRITE (
stdout,30)
' PROPAGATOR - Grid: ', ng, &
251 &
', Tangent Initial Norm: ', &
335 WRITE (
stdout,30)
' PROPAGATOR - Grid: ', ng, &
336 &
', Tangent Final Norm: ', &
349#ifndef STOCH_OPT_WHITE
351 lwrtstate3d(ng)=.false.
363#ifdef STOCH_OPT_WHITE
380# ifdef STOCH_OPT_WHITE
396 & ktmp, kout, ntmp,
nstp(ng))
406#ifdef STOCH_OPT_WHITE
433# ifdef STOCH_OPT_WHITE
439# ifdef STOCH_OPT_WHITE
446#ifdef STOCH_OPT_WHITE
486# ifdef STOCH_OPT_WHITE
487 CALL ad_so_pack (ng, tile,
nstr(ng),
nend(ng), inttrap, &
488 & ad_state(ng)%vector)
490 CALL ad_so_pack_red (ng, tile,
nstr(ng),
nend(ng), &
491 & inttrap, ad_state(ng)%vector)
510 10
FORMAT (/,a,i2.2,a,i3.3,a,i3.3/)
512 30
FORMAT (/,a,i2.2,a,1p,e15.6,/)
513 40
FORMAT (/,1x,a,1x,
'ROMS: started time-stepping:', &
514 &
' (Grid: ',i2.2,
' TimeSteps: ',i8.8,
' - ',i8.8,
')')
subroutine ad_get_data(ng)
subroutine ad_get_idata(ng)
subroutine ad_main3d(runinterval)
subroutine, public close_inp(ng, model)
subroutine, public tl_statenorm(ng, tile, kinp, ninp, statenorm)
subroutine, public ad_ini_perturb(ng, tile, kinp, kout, ninp, nout)
subroutine, public initialize_coupling(ng, tile, model)
subroutine, public initialize_forces(ng, tile, model)
type(t_io), dimension(:), allocatable adm
type(t_io), dimension(:), allocatable tlm
subroutine, public initialize_ocean(ng, tile, model)
integer, dimension(:), allocatable first_tile
integer, dimension(:), allocatable last_tile
integer, dimension(:), allocatable nstr
integer, dimension(:), allocatable nend
real(dp), parameter day2sec
integer, dimension(:), allocatable ntimes
integer, dimension(:), allocatable iic
real(dp), dimension(:), allocatable dt
integer, dimension(:), allocatable nconv
logical, dimension(:), allocatable synchro_flag
logical, dimension(:), allocatable predictor_2d_step
real(dp), dimension(:), allocatable tdays
logical, dimension(:), allocatable ldefadj
real(dp), parameter sec2day
integer, dimension(:), allocatable ntend
logical, dimension(:), allocatable lwrtstate2d
integer, dimension(:), allocatable indx1
integer, dimension(:), allocatable ntfirst
logical, dimension(:), allocatable lwrttlm
real(dp), dimension(:), allocatable time
logical, dimension(:), allocatable ldeftlm
integer, dimension(:), allocatable ntstart
integer, dimension(:), allocatable iif
integer, dimension(:), allocatable kstp
integer, dimension(:), allocatable knew
integer, dimension(:), allocatable nrhs
integer, dimension(:), allocatable nnew
integer, dimension(:), allocatable krhs
integer, dimension(:), allocatable nstp
subroutine, public propagator_so(runinterval, iter, state, ad_state)
subroutine, public set_depth(ng, tile, model)
logical function, public founderror(flag, noerr, line, routine)
subroutine tl_unpack(ng, tile, mstr, mend, state)
subroutine tl_get_data(ng)
subroutine tl_get_idata(ng)
subroutine tl_main3d(runinterval)