A bug in asum() ? (sorry, this email is right)
Diane Stokes
Diane.Stokes at NOAA.GOV
Mon Sep 3 10:07:58 EDT 2007
Mying,
From the Usage Notes for asum:
"The asum function always does its average to the exact boundaries
specified, in world coordinates. If the boundaries specified via the
dimension expressions do not fall on grid boundaries, then the boundary
values are weighted appropriately in the sum."
So, if you use lon/lat to define the limits in asum and specify the
center of a grid box as a corner point, only 1/4 of that grid box gets
included in the sum.
Because of the way your grid is defined, your statement
d asum(sst,lon=10,lon=12,lat=0,lat=2)
yields:
27.95*0.25 + 28.19*0.25 = 14.035
(There are only two terms because two grid boxes were undefined).
From the 2nd Usage Note in the online doc, when using x & y in asum,
the full grid box is included. Also, when using asumg, the full grid
box is included. So, with those two methods you get:
27.95 + 28.19 = 56.14
Diane
Mying wrote:
> Dear all,
>
> I found it in our forum about GrADS ( in chinese,
> http://bbs.lasg.ac.cn/cgi-bin/forum/topic.cgi?forum=3&topic=6583
> <http://bbs.lasg.ac.cn/cgi-bin/forum/topic.cgi?forum=3&topic=6583> )
>
> Is there a bug in asum ? ( I got same results in version 1.8sl11, x-win32)
>
> ~~~~~~ test result ~~~~~~data: "NOAA Extended Reconstructed SST V2"~~~
> ga-> q dims
> Default file number is: 1
> X is varying Lon = 10 to 12 X = 6 to 7
> Y is varying Lat = 0 to 2 Y = 45 to 46
> Z is fixed Lev = 0 Z = 1
> T is fixed Time = 00Z01JAN1854 T = 1
> ga-> d sst
> gxstart=0, gxstop=2, gystart=0, gystop=2.
> gzstart=0, gzstop=1, gtstart=0, gtstop=1.
> Printing Grid -- 4 Values -- Undef = 32767
> 27.95 32767 28.19 32767
> ga-> d asum(sst,x=6,x=7,y=45,y=46)
> gxstart=0, gxstop=4, gystart=0, gystop=4.
> gzstart=0, gzstop=1, gtstart=0, gtstop=1.
> Printing Grid -- 1 Values -- Undef = 32767
> 56.14
> ga-> d asum(sst,lon=10,lon=12,lat=0,lat=2)
> gxstart=0, gxstop=2, gystart=0, gystop=2.
> gzstart=0, gzstop=1, gtstart=0, gtstop=1.
> Printing Grid -- 1 Values -- Undef = 32767
> 14.035
> ga-> d aave(sst,lon=10,lon=12,lat=0,lat=2)
> gxstart=0, gxstop=2, gystart=0, gystop=2.
> gzstart=0, gzstop=1, gtstart=0, gtstop=1.
> Printing Grid -- 1 Values -- Undef = 32767
> 28.07
> ga-> d asumg(sst,lon=10,lon=12,lat=0,lat=2)
> gxstart=0, gxstop=2, gystart=0, gystop=2.
> gzstart=0, gzstop=1, gtstart=0, gtstop=1.
> Printing Grid -- 1 Values -- Undef = 32767
> 56.14
>
> ~~~~~~~~~~~~~~~~~~~
>
> thanks
>
> ------------------------------------------------------------------------
> Mying
> 2007-09-03
>
--
Diane Stokes
Environmental Modeling Center
National Weather Service/NOAA
More information about the gradsusr
mailing list