32# if defined PIO_LIB && defined DISTRIBUTE
44 integer,
intent(in) :: ng
48 character (len=*),
parameter :: myfile = &
55 SELECT CASE (
flt(ng)%IOtype)
59# if defined PIO_LIB && defined DISTRIBUTE
69 10
FORMAT (
' WRT_FLOATS - Illegal output file type, io_type = ',i0, &
70 & /,14x,
'Check KeyWord ''OUT_LIB'' in ''roms.in''.')
83 integer,
intent(in) :: ng
87 integer :: fcount, itrc, l, status
89 real(r8),
dimension(Nfloats(ng)) :: tout
91 character (len=*),
parameter :: myfile = &
92 & __FILE__//
", wrt_floats_nf90"
104 flt(ng)%Rindex=
flt(ng)%Rindex+1
105 fcount=
flt(ng)%Fcount
106 flt(ng)%Nrec(fcount)=
flt(ng)%Nrec(fcount)+1
112 & (/
flt(ng)%Rindex/), (/1/), &
113 & ncid =
flt(ng)%ncid, &
120 IF (
drifter(ng)%bounded(l))
THEN
129 & ncid =
flt(ng)%ncid, &
136 IF (
drifter(ng)%bounded(l))
THEN
145 & ncid =
flt(ng)%ncid, &
154 IF (
drifter(ng)%bounded(l))
THEN
163 & ncid =
flt(ng)%ncid, &
171 IF (
drifter(ng)%bounded(l))
THEN
181 & ncid =
flt(ng)%ncid, &
187 & ncid =
flt(ng)%ncid, &
193 IF (
drifter(ng)%bounded(l))
THEN
203 & ncid =
flt(ng)%ncid, &
209 & ncid =
flt(ng)%ncid, &
219 IF (
drifter(ng)%bounded(l))
THEN
228 & ncid =
flt(ng)%ncid, &
235 IF (
drifter(ng)%bounded(l))
THEN
244 & ncid =
flt(ng)%ncid, &
252 IF (
drifter(ng)%bounded(l))
THEN
261 & ncid =
flt(ng)%ncid, &
262 & varid =
flt(ng)%Tid(itrc))
272 IF (
drifter(ng)%bounded(l))
THEN
279 &
'swim_time', tout, &
281 & ncid =
flt(ng)%ncid, &
288 IF (
drifter(ng)%bounded(l))
THEN
297 & ncid =
flt(ng)%ncid, &
304 IF (
drifter(ng)%bounded(l))
THEN
311 &
'bio_size', tout, &
313 & ncid =
flt(ng)%ncid, &
320 IF (
drifter(ng)%bounded(l))
THEN
327 &
'bio_sink', tout, &
329 & ncid =
flt(ng)%ncid, &
343# if defined PIO_LIB && defined DISTRIBUTE
353 integer,
intent(in) :: ng
357 integer :: fcount, itrc, l, status
359 real(r8),
dimension(Nfloats(ng)) :: tout
361 character (len=*),
parameter :: myfile = &
362 & __FILE__//
", wrt_floats_pio"
374 flt(ng)%Rindex=
flt(ng)%Rindex+1
375 fcount=
flt(ng)%Fcount
376 flt(ng)%Nrec(fcount)=
flt(ng)%Nrec(fcount)+1
382 & (/
flt(ng)%Rindex/), (/1/), &
383 & piofile =
flt(ng)%pioFile, &
390 IF (
drifter(ng)%bounded(l))
THEN
398 & (/1,
flt(ng)%Rindex/), &
400 & piofile =
flt(ng)%pioFile, &
407 IF (
drifter(ng)%bounded(l))
THEN
415 & (/1,
flt(ng)%Rindex/), &
417 & piofile =
flt(ng)%pioFile, &
426 IF (
drifter(ng)%bounded(l))
THEN
434 & (/1,
flt(ng)%Rindex/), &
436 & piofile =
flt(ng)%pioFile, &
444 IF (
drifter(ng)%bounded(l))
THEN
453 & (/1,
flt(ng)%Rindex/), &
455 & piofile =
flt(ng)%pioFile, &
460 & (/1,
flt(ng)%Rindex/), &
462 & piofile =
flt(ng)%pioFile, &
468 IF (
drifter(ng)%bounded(l))
THEN
477 & (/1,
flt(ng)%Rindex/), &
479 & piofile =
flt(ng)%pioFile, &
484 & (/1,
flt(ng)%Rindex/), &
486 & piofile =
flt(ng)%pioFile, &
496 IF (
drifter(ng)%bounded(l))
THEN
504 & (/1,
flt(ng)%Rindex/), &
506 & piofile =
flt(ng)%pioFile, &
513 IF (
drifter(ng)%bounded(l))
THEN
521 & (/1,
flt(ng)%Rindex/), &
523 & piofile =
flt(ng)%pioFile, &
531 IF (
drifter(ng)%bounded(l))
THEN
539 & (/1,
flt(ng)%Rindex/), &
541 & piofile =
flt(ng)%pioFile, &
542 & piovar =
flt(ng)%pioTrc(itrc)%vd)
552 IF (
drifter(ng)%bounded(l))
THEN
559 &
'swim_time', tout, &
560 & (/1,
flt(ng)%Rindex/), &
562 & piofile =
flt(ng)%pioFile, &
569 IF (
drifter(ng)%bounded(l))
THEN
577 & (/1,
flt(ng)%Rindex/), &
579 & piofile =
flt(ng)%pioFile, &
586 IF (
drifter(ng)%bounded(l))
THEN
593 &
'bio_size', tout, &
594 & (/1,
flt(ng)%Rindex/), &
596 & piofile =
flt(ng)%pioFile, &
603 IF (
drifter(ng)%bounded(l))
THEN
610 &
'bio_sink', tout, &
611 & (/1,
flt(ng)%Rindex/), &
613 & piofile =
flt(ng)%pioFile, &
integer, dimension(:), allocatable iftvar
type(t_drifter), dimension(:), allocatable drifter
type(t_io), dimension(:), allocatable flt
character(len=256) sourcefile
integer, parameter io_nf90
integer, parameter io_pio
integer, dimension(:), allocatable idtvar
character(len=maxlen), dimension(6, 0:nv) vname
subroutine, public netcdf_sync(ng, model, ncname, ncid)
integer, dimension(:), allocatable nfloats
integer, dimension(:), allocatable nt
subroutine, public pio_netcdf_sync(ng, model, ncname, piofile)
real(dp), parameter spval
real(dp), dimension(:), allocatable time
integer, dimension(:), allocatable nf
logical function, public founderror(flag, noerr, line, routine)
subroutine, public wrt_floats(ng)
subroutine, private wrt_floats_pio(ng)
subroutine, private wrt_floats_nf90(ng)