23# if defined PIO_LIB && defined DISTRIBUTE
30# if defined PIO_LIB && defined DISTRIBUTE
38# if defined PIO_LIB && defined DISTRIBUTE
81# if defined PIO_LIB && defined DISTRIBUTE
95 & MinValue, MaxValue)
RESULT(status)
102 integer,
intent(in) :: ng, model, ncid, ncvarid, tindex, gtype
103 integer,
intent(in) :: lbij, ubij, nrec
105 integer,
intent(in),
optional :: extractfield
107 real(dp),
intent(in) :: ascl
109 character (len=*),
intent(in) :: ncname
110 character (len=*),
intent(in) :: ncvname
113 real(r8),
intent(in) :: abry(lbij:,:,:)
115 real(r8),
intent(in) :: abry(lbij:ubij,4,nrec)
117 real(r8),
intent(out),
optional :: minvalue
118 real(r8),
intent(out),
optional :: maxvalue
122 integer :: iorj, npts, i, tile
123 integer :: extract_flag
126 integer,
dimension(4) :: start, total
128 real(r8),
dimension((UBij-LBij+1)*4*Nrec) :: awrk
153 IF (
PRESENT(extractfield))
THEN
154 extract_flag=extractfield
169 & gtype, ncvname, tindex, &
171 & lbij, ubij, nrec, &
173 & start, total, npts, awrk)
179 IF (
PRESENT(minvalue))
THEN
184 IF (abs(awrk(i)).lt.
spval)
THEN
185 minvalue=min(minvalue,awrk(i))
186 maxvalue=max(maxvalue,awrk(i))
198 status=nf90_put_var(ncid, ncvarid, awrk, start, total)
213# if defined PIO_LIB && defined DISTRIBUTE
219 & LBij, UBij, Nrec, &
221 & MinValue, MaxValue)
RESULT(status)
228 integer,
intent(in) :: ng, model, tindex
229 integer,
intent(in) :: lbij, ubij, nrec
231 real(dp),
intent(in) :: ascl
233 character (len=*),
intent(in) :: ncname
234 character (len=*),
intent(in) :: ncvname
237 real(r8),
intent(in) :: abry(lbij:,:,:)
239 real(r8),
intent(in) :: abry(lbij:ubij,4,nrec)
241 real(r8),
intent(out),
optional :: minvalue
242 real(r8),
intent(out),
optional :: maxvalue
244 TYPE (file_desc_t),
intent(inout) :: piofile
245 TYPE (io_desc_t),
intent(inout) :: piodesc
246 TYPE (my_vardesc),
intent(inout) :: piovar
250 logical,
dimension(4) :: bounded
252 integer :: bc, i, ib, ic, ir, j, rc
253 integer :: dkind, gtype, tile
254 integer :: iorj, imin, imax, jmin, jmax, npts
255 integer :: istr, iend, jstr, jend
257 integer,
dimension(4) :: start, total
261 real(r8),
parameter :: aspv = 0.0_r8
263 real(r8),
dimension((UBij-LBij+1)*4*Nrec) :: awrk
279 imin=
bounds(ng)%Istr (tile)
280 imax=
bounds(ng)%Iend (tile)
281 jmin=
bounds(ng)%Jstr (tile)
282 jmax=
bounds(ng)%Jend (tile)
284 imin=
bounds(ng)%IstrR(tile)
285 imax=
bounds(ng)%IendR(tile)
286 jmin=
bounds(ng)%JstrR(tile)
287 jmax=
bounds(ng)%JendR(tile)
289 imin=
bounds(ng)%Istr (tile)
290 imax=
bounds(ng)%IendR(tile)
291 jmin=
bounds(ng)%JstrR(tile)
292 jmax=
bounds(ng)%JendR(tile)
294 imin=
bounds(ng)%IstrR(tile)
295 imax=
bounds(ng)%IendR(tile)
296 jmin=
bounds(ng)%Jstr (tile)
297 jmax=
bounds(ng)%JendR(tile)
299 imin=
bounds(ng)%IstrR(tile)
300 imax=
bounds(ng)%IendR(tile)
301 jmin=
bounds(ng)%JstrR(tile)
302 jmax=
bounds(ng)%JendR(tile)
310 istr=
bounds(ng)%Istr(tile)
311 iend=
bounds(ng)%Iend(tile)
312 jstr=
bounds(ng)%Jstr(tile)
313 jend=
bounds(ng)%Jend(tile)
342 IF (bounded(ib))
THEN
347 awrk(ic)=abry(j,ib,ir)*ascl
349 IF (abs(awrk(ic)).eq.0.0_r8)
THEN
357 awrk(ic)=abry(i,ib,ir)*ascl
359 IF (abs(awrk(ic)).eq.0.0_r8)
THEN
377 IF (
PRESENT(minvalue))
THEN
381 IF (abs(awrk(i)).lt.
spval)
THEN
382 minvalue=min(minvalue,awrk(i))
383 maxvalue=max(maxvalue,awrk(i))
392 status=pio_put_var(piofile, piovar%vd, start, total, awrk)
type(t_bounds), dimension(:), allocatable bounds
integer, parameter r3dvar
type(t_iobounds), dimension(:), allocatable iobounds
integer, parameter u3dvar
type(t_domain), dimension(:), allocatable domain
integer, parameter u2dvar
integer, parameter p2dvar
integer, parameter r2dvar
integer, parameter v2dvar
integer, parameter p3dvar
integer, parameter v3dvar
real(dp), parameter spval
integer, parameter isouth
integer, parameter inorth
integer function pio_fwrite2d_bry(ng, model, ncname, piofile, ncvname, piovar, tindex, piodesc, lbij, ubij, nrec, ascl, abry, minvalue, maxvalue)
integer function nf90_fwrite2d_bry(ng, model, ncname, ncid, ncvname, ncvarid, tindex, gtype, lbij, ubij, nrec, ascl, abry, extractfield, minvalue, maxvalue)
subroutine, public pack_boundary2d(ng, model, tile, gtype, ncvname, tindex, extract_flag, lbij, ubij, nrec, bscl, bdat, start, total, npts, bwrk)