Display object on screen.
Show brief content on screen.
3450 nlevel=count_distinct(roundlevel,back=.true.)
3451 ntime=
size(vg6din%time)
3452 ntimerange=count_distinct(roundtimerange,back=.true.)
3453 nvar=
size(vg6din%var)
3455 call init(vg6dout, vg6din%griddim, vg6din%time_definition, categoryappend=
"generated by vg6d_reduce")
3456 call volgrid6d_alloc(vg6dout, vg6din%griddim%dim, ntime, nlevel, ntimerange, nvar)
3458 if (
ASSOCIATED(vg6din%voldati) .or. optio_log(merge))
then
3459 call volgrid6d_alloc_vol(vg6dout,inivol=.true.,decode=.true.)
3460 allocate(vol2d(nx,ny))
3462 call volgrid6d_alloc_vol(vg6dout,inivol=.true.,decode=.false.)
3465 vg6dout%time=vg6din%time
3466 vg6dout%var=vg6din%var
3467 vg6dout%timerange=pack_distinct(roundtimerange,ntimerange,back=.true.)
3468 vg6dout%level=pack_distinct(roundlevel,nlevel,back=.true.)
3470 CALL sort(vg6dout%timerange)
3471 CALL sort(vg6dout%level)
3473 do ilevel=1,
size(vg6din%level)
3474 indl=
index(vg6dout%level,roundlevel(ilevel))
3475 do itimerange=1,
size(vg6din%timerange)
3476 indt=
index(vg6dout%timerange,roundtimerange(itimerange))
3480 if (
ASSOCIATED(vg6din%voldati))
then
3481 vol2d=vg6din%voldati(:,:,ilevel,itime,itimerange,ivar)
3484 if (optio_log(merge))
then
3486 if ( .not.
ASSOCIATED(vg6din%voldati))
then
3487 CALL grid_id_decode_data(vg6din%gaid(ilevel,itime,itimerange,ivar), vol2d)
3491 where (.not. c_e(vg6dout%voldati(:,:,indl,itime,indt,ivar)))
3493 vg6dout%voldati(:,:,indl,itime,indt,ivar)=vol2d
3496 else if (
ASSOCIATED(vg6din%voldati))
then
3497 if (.not. any(c_e(vg6dout%voldati(:,:,indl,itime,indt,ivar))))
then
3498 vg6dout%voldati(:,:,indl,itime,indt,ivar)=vol2d