Bill

gdal uses degrib to read grib files, best I can tell is it does whatever
degrib does by default

Brian


On Thu, 2011-05-05 at 22:33 +0000, Cassanova, Bill wrote:
> I have noticed the same thing.  My question is why would gdal do a conversion 
> that you had not asked for?  We create some of our own grib2 files that may 
> at times have unitless values.  For some odd reason they are being converted 
> to Celsius as well.  
> 
> Sent from my iPad
> 
> On May 5, 2011, at 5:09 PM, "Brian Case" <[email protected]> wrote:
> 
> > Matt,
> > 
> > At a quick glance I would say pygrib is outputting in kelvin and gdal
> > Celsius. also it looks like there not in the same order.
> > 
> > Brian
> > 
> > 
> > 
> > On Thu, 2011-05-05 at 14:57 -0600, [email protected] wrote:
> >> Hi,
> >> i am a little confused. I am using the gdal/python and trying to read
> >> values from a grib file (i can email the file if needed). I am using
> >> pygrib to compare against. I do this with the following code:
> >> 
> >> import struct
> >> 
> >> import pygrib
> >> 
> >> from osgeo import gdal
> >> from osgeo import ogr
> >> from osgeo import osr
> >> from osgeo import gdal_array
> >> from osgeo import gdalconst
> >> from osgeo.gdalconst import *
> >> 
> >> import numpy as np
> >> from numpy import *
> >> 
> >> #path = "../Data"
> >> #filename = "%s/ds.temp.bin" % (path)
> >> filename = "ds.temp.bin"
> >> 
> >> print "\n\nTesting with pygrib, opening file: %s\n" % (filename)
> >> grbs = pygrib.open(filename)
> >> rows = -1
> >> cols = -1
> >> grbs.seek(0)
> >> for grb in grbs:
> >>    print "grb:"
> >>    grb
> >>    print "grb.keys():"
> >>    print grb.keys()
> >>    for key in grb.keys():
> >>        print "\nKey: " + key
> >>        print "data:"
> >>        print grb[key]
> >> 
> >> 
> >> 
> >>    #print "grb['values']"
> >>    #print grb['values']
> >>    #print "grb['codedValues']"
> >>    #print grb['codedValues']
> >> 
> >>    (pg_lats,pg_lons) = grb.latlons()
> >>    pg_rows = pg_lats.shape[0]
> >>    pg_cols = pg_lats.shape[1]
> >>            #print test
> >>            #print lats.shape, lats.min(), lats.max(), lons.shape,
> >> lons.min(), lons.max()
> >>            #lat_pygrib_arr = []
> >>    print size(pg_lats)
> >> print "\n\n"
> >> 
> >> 
> >> ## open with gdal
> >> ds = gdal.Open(filename)
> >> band = ds.GetRasterBand(1)
> >> data = band.ReadAsArray(0,0,band.XSize,band.YSize)#.flatten()
> >> print "data:"
> >> print data
> >> 
> >> 
> >> The data values i get from pygrib are:
> >> data:
> >> [[ 294.5   294.5   294.5  ...,  298.31  298.32  298.32]
> >> [ 294.5   294.5   294.5  ...,  298.32  298.22  298.22]
> >> [ 294.4   294.4   294.4  ...,  298.22  298.22  298.22]
> >> ...,
> >> [ 280.91  280.91  280.81 ...,  264.2   264.3   264.5 ]
> >> [ 280.81  280.81  280.81 ...,  263.5   263.7   263.9 ]
> >> [ 280.81  280.81  280.81 ...,  262.8   263.    263.3 ]]
> >> 
> >> The values i get from gdal are:
> >> data:
> >> [[  7.65999756   7.65999756   7.65999756 ..., -10.35001221 -10.15
> >>   -9.85001221]
> >> [  7.65999756   7.65999756   7.65999756 ...,  -9.65        -9.45001831
> >>   -9.2500061 ]
> >> [  7.76000366   7.76000366   7.65999756 ...,  -8.95001831  -8.85001221
> >>   -8.65      ]
> >> ...,
> >> [ 21.2499939   21.2499939   21.2499939  ...,  25.07000122  25.07000122
> >>   25.07000122]
> >> [ 21.35        21.35        21.35       ...,  25.17000732  25.07000122
> >>   25.07000122]
> >> [ 21.35        21.35        21.35       ...,  25.15999756  25.17000732
> >>   25.17000732]]
> >> 
> >> Is there anything obvious that i am doing wrong?
> >> 
> >> thanks
> >> matt
> >> 
> >> 
> >> _______________________________________________
> >> gdal-dev mailing list
> >> [email protected]
> >> http://lists.osgeo.org/mailman/listinfo/gdal-dev
> > 
> > 
> > _______________________________________________
> > gdal-dev mailing list
> > [email protected]
> > http://lists.osgeo.org/mailman/listinfo/gdal-dev


_______________________________________________
gdal-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to