2#if !defined ANA_TIDES && \
3 (defined tide_generating_forces || \
4 defined ssh_tides || defined uv_tides)
5 SUBROUTINE tides_date (ng)
75# if defined PIO_LIB && defined DISTRIBUTE
85 integer,
intent(in) :: ng
91 integer :: iday, ihour, isec, iyear, minute, month
93 real(dp) :: day, sec, zero_phase_date
95 character (len=19) :: string
96 character (len=*),
parameter :: MyFile = &
112 SELECT CASE (
tide(1)%IOtype)
116 & searchvar = foundit)
123# if defined PIO_LIB && defined DISTRIBUTE
127 & searchvar = foundit)
141 iyear=max(1,int(zero_phase_date*0.0001_dp))
142 month=min(12,max(1,int((zero_phase_date- &
143 & real(iyear*10000,dp))*0.01_dp)))
144 day=zero_phase_date-aint(zero_phase_date*0.01_dp)*100.0_dp
146 sec=(day-aint(day))*86400.0_dp
147 ihour=int(sec/3600.0_dp)
148 minute=int(mod(sec,3600.0_dp)/60.0_dp)
149 isec=int(mod(sec,60.0_dp))
151 & ihour, minute, real(isec,dp))
155 WRITE (
stdout,20)
'zero_phase_date = ', zero_phase_date, &
156 & trim(
tide(ng)%name), &
157 &
'tide_DateNumber = ', &
158 &
rclock%tide_DateNumber(1), trim(string), &
161 &
'new tide_start = ', &
162 &
rclock%tide_DateNumber(1)- &
163 &
rclock%DateNumber(1),
' (days)'
177 WRITE (
stdout,30)
'zero_phase_date', trim(
tide(ng)%name), &
180 &
'tide_DateNumber = ', &
181 &
rclock%tide_DateNumber(1), trim(string)
185 10
FORMAT (/,
' TIDES_DATE - Variable index not yet loaded, ', a, &
186 & /,14x,
'Update your metadata file: ',a)
187 20
FORMAT (/,2x,
'TIDES_DATE - Checking tidal reference date for ', &
188 &
'zero phase: ',/,17x,a,f13.4,
' (read from ',a,
')', &
189 & /,17x,a,f13.4,
' (',a,
')',/,17x,a,f13.4,a,/,17x,a,f13.4,a)
190 30
FORMAT (/,2x,
'TIDE_DATE - Checking tidal reference date for ', &
191 &
'zero phase: ',/,17x,
'''',a,
''' variable not found in: ', &
192 & a,/,17x,a,f13.4,a,/,17x,a,f13.4,
' (',a,
')')
195 END SUBROUTINE tides_date
197 SUBROUTINE tides_date
198 END SUBROUTINE tides_date
subroutine, public datestr(datenumber, isdayunits, datestring)
subroutine, public datenum(datenumber, year, month, day, hour, minutes, seconds)
type(t_io), dimension(:), allocatable tide
character(len=256) varname
integer, parameter io_nf90
integer, parameter io_pio
character(len=maxlen), dimension(6, 0:nv) vname
subroutine, public netcdf_inq_var(ng, model, ncname, ncid, myvarname, searchvar, varid, nvardim, nvaratt)
subroutine, public pio_netcdf_inq_var(ng, model, ncname, piofile, myvarname, searchvar, piovar, nvardim, nvaratt)
real(dp), parameter day2sec
logical function, public founderror(flag, noerr, line, routine)