[gradsusr] wrong data returned by GDS
Fan Fang
Fan.Fang at nasa.gov
Thu Sep 27 11:02:59 EDT 2012
We'd like to alert you that wrong data can be returned by GDS when using
GrADS expressions for remote analysis. The particular use case we are
looking at is a simple average over time of a 3-D data array, something
like:
http://hydro1.sci.gsfc.nasa.gov/dods/_expr_{GLDAS_NOAH10SUBP_3H}{ave(soilm1,time=00Z01May1981,time=00Z03May1981)}{13.5:23.5,48.5:54.5,1:1,00Z01May1981:00Z01May1981}.ascii?result
result, [1][1][7][11]
[0][0][0], 29.910242, 26.238947, 27.134758, 27.020594, 28.003983, 29.070147, 28.82657, 29.797018, 35.64337, 30.144405, 29.207136
[0][0][1], 29.826618, 29.838476, 28.972548, 28.466524, 29.172405, 30.278383, 30.268406, 30.101206, 27.801394, 29.78036, 29.379183
[0][0][2], 30.990665, 30.533064, 29.014477, 28.626053, 29.129017, 27.218946, 27.3717, 27.730476, 27.014477, 26.656218, 28.973866
[0][0][3], 30.248077, 28.348171, 27.952454, 27.30996, 27.026241, 23.40676, 26.783747, 27.739277, 26.875324, 27.667511, 27.950476
[0][0][4], 28.968218, 27.320688, 23.698288, 27.290194, 27.100077, 26.604218, 25.810146, 26.362993, 26.035559, 26.762806, 27.149864
[0][0][5], 28.18017, 25.765818, 26.816595, 27.657488, 27.980923, 26.958336, 26.489819, 26.200123, 26.413395, 27.105724, 27.200264
[0][0][6], 9.999E20, 9.999E20, 9.999E20, 9.999E20, 24.032547, 27.266382, 9.999E20, 29.434381, 29.91744, 30.214476, 29.696218
time, [1]
723302.0
lev, [1]
1.0
lat, [7]
48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5
lon, [11]
13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5
If we shift the longitude in this URL by half of a degree and request
instead
http://hydro1.sci.gsfc.nasa.gov/dods/_expr_{GLDAS_NOAH10SUBP_3H}{ave(soilm1,time=00Z01May1981,time=00Z03May1981)}{14:24,48.5:54.5,1:1,00Z01May1981:00Z01May1981}.ascii?result
result, [1][1][7][11]
[0][0][0], 29.910242, 26.238947, 27.134758, 27.020594, 28.003983, 29.070147, 28.82657, 29.797018, 35.64337, 30.144405, 29.207136
[0][0][1], 28.484547, 29.826618, 29.838476, 28.972548, 28.466524, 29.172405, 30.278383, 30.268406, 30.101206, 27.801394, 29.78036
[0][0][2], 29.379183, 29.501724, 30.990665, 30.533064, 29.014477, 28.626053, 29.129017, 27.218946, 27.3717, 27.730476, 27.014477
[0][0][3], 26.656218, 28.973866, 29.899324, 30.248077, 28.348171, 27.952454, 27.30996, 27.026241, 23.40676, 26.783747, 27.739277
[0][0][4], 26.875324, 27.667511, 27.950476, 27.3549, 28.968218, 27.320688, 23.698288, 27.290194, 27.100077, 26.604218, 25.810146
[0][0][5], 26.362993, 26.035559, 26.762806, 27.149864, 25.554193, 28.18017, 25.765818, 26.816595, 27.657488, 27.980923, 26.958336
[0][0][6], 26.489819, 26.200123, 26.413395, 27.105724, 27.200264, 25.427088, 9.999E20, 9.999E20, 9.999E20, 9.999E20, 24.032547
time, [1]
723302.0
lev, [1]
1.0
lat, [7]
48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5
lon, [11]
13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5
Note that starting from result[0][0][1] wrong values get add in the
front (left) and correct values are pushed back (right) one at a row,
although lat/lon still report the same coordinates as the URL intended.
Note that the data is defined in a (partial) global grid of 1 degree
resolution, centered at (lon, lat) = (-179.5, -59.5) and so on. We
suspect GDS has implemented an assumption fetching data that is not
consistent with what GrADS is presenting, therefore it indexed the GrADS
data erroneously.
We also find no indications in any GDS documentation that the
expressions shall use the center of grids only.
We use GDS 2.0 and GrADS 2.0.a3.
-Fan
More information about the gradsusr
mailing list