NetCDF Packed Byte data

M.Mahakur mmahakur at TROPMET.RES.IN
Sun Nov 5 11:17:34 EST 2006


Respected Dr. Seman,

I had read this two links (you sent) earlier. But, I guess I donot need
a data descriptor file for the '.nc' files I have, as these are SDF
(which you can see in the ncdump headers I sent yesterday.  It seems
length of 'vaiable name' should be maximum 15 charcaters, not 16.
Follwoing line I found in the link:
http://www.iges.org/grads/gadoc/descriptorfile.html#VARS.

> varname This is a 1-15 character "name" or abbreviation for the data
> variable. varname may contain alphabetic and numeric characters but it
> must start with an alphabetic character (a-z).

What is why it truncates the 16th alphabet. How can I handle these two
problems (display packed byte and varname > 15 chars)? I am pasting the
attributes informations of a file below.

--------------------------
ga-> sdfopen 20060101-UKMO-L4UHfnd-GLOB-v01.nc
Scanning self-describing file:  20060101-UKMO-L4UHfnd-GLOB-v01.nc
SDF file 20060101-UKMO-L4UHfnd-GLOB-v01.nc is open as file 1
LON set to -179.975 179.975
LAT set to -89.975 89.986
LEV set to 0 0
Time values set: 2006:1:1:12 2006:1:1:12
ga-> q attr
Native Attributes for File 1 : OSTIA Sea Surface Temperature Analysis
global String Conventions CF-1.0
global String title OSTIA Sea Surface Temperature Analysis
global String DSD_entry_id UKMO-TSANAL-v01-GLOB
global String references None
global String institution UK Met Office
global String contact john.stark at metoffice.gov.uk
global String GDS_version_id v1.0-rev1.5
global String netcdf_version_id 3.6.0-p1 of Jul  4 2005 16:41:16 $
global String creation_date 2006-01-02 14:00 UTC
global String product_version 0.1
global String history Created from sst:temperature from
/data/local/frhn/OSTIA/analysis/20060102_UKMO_L4UHfnd_GLOB_v01.nc;
error:; bias:; sea ice:
global String grid_resolution    0.05000 degree
global String comment WARNING Some applications are unable to properly
handle signed byte values. If values are encountered > 127, please
substract 256 from this reported value
global String start_date 2006-01-01 UTC
global String start_time 00:00:00 UTC
global String stop_date 2006-01-02 UTC
global String stop_time 00:00:00 UTC
global Float32 southernmost_latitude -90
global Float32 northernmost_latitude 90
global Float32 westernmost_longitude -180
global Float32 easternmost_longitude 180
global String file_quality_index 0
lon String long_name longitude
lon String units degrees_east
lat String long_name latitude
lat String units degrees_north
time String long_name reference time of sst field
time String units seconds since 1981-01-01 00:00:00
sst_foundation String long_name foundation sea surface temperature
sst_foundation String units kelvin
sst_foundation Int16 _FillValue -32768
sst_foundation Float32 add_offset 273.15
sst_foundation Float32 scale_factor 0.01
sst_foundation Int16 valid_min -32767
sst_foundation Int16 valid_max 32767
sst_foundation String standard_name sea_surface_temperature
analysis_error String long_name error estimate from the analysis
analysis_error String units kelvin
analysis_error Byte _FillValue -128
analysis_error Float32 add_offset 0
analysis_error Float32 scale_factor 0.05
analysis_error Byte valid_min -127
analysis_error Byte valid_max 127
bias String long_name analysis error bias
bias String units kelvin
bias Byte _FillValue -128
bias Float32 add_offset 0
bias Float32 scale_factor 0.01
bias Byte valid_min -127
bias Byte valid_max 127
sea_ice_fractio String long_name sea ice fraction
sea_ice_fractio String units 1
sea_ice_fractio Byte _FillValue -128
sea_ice_fractio Float32 add_offset 0
sea_ice_fractio Float32 scale_factor 0.01
sea_ice_fractio Byte valid_min -127
sea_ice_fractio Byte valid_max 127
sea_ice_fractio String standard_name sea_ice_area_fraction
sea_ice_fractio String comment Data derived from OSI-SAF sea ice product
mask String long_name mask
mask String comment b0: 1=sea ; b1: 1=land ; b2: 1=lakes ; b3: 1=ice
ga->

----------------------------------------

Regards,

M. Mahakur

Charles Seman wrote:

> M. Mahakur,
>
> Have you checked out this web site?
> http://www.iges.org/grads/gadoc/descriptorfile.html#unpack
>
> Not sure why 'sea_ice_fraction' is not displayed... 16 characters is
> GrADS limit...
> http://www.iges.org/grads/gadoc/descriptorfile.html#VARS
>
> I hope this helps,
> Chuck
>
> M.Mahakur wrote:
>
>> Respected GrADS users:
>>
>> How can I open the packed netcdf byte data (ncdumped headers of a single
>> file I am pasting here)? I could display the variable 'sst_foundation'
>> using sdfopen. I guess GrADS is taking care of off_set and scale_factor.
>> But I could not do for the other variables (i.e.. analysis_error, bias,
>> sea_ice_fraction  and mask), which are packed bytes.
>>
>> Secondly,  variable 'sea_ice_fraction' is getting truncated to
>> 'sea_ice_fractio'!!
>>
>> Thanks in advance.
>>
>> With Regards,
>>
>> M. Mahakur
>>
>> ---------------------------------------------------
>> ga-> q file
>> File 1 : OSTIA Sea Surface Temperature Analysis
>>  Descriptor: 20060101-UKMO-L4UHfnd-GLOB-v01.nc
>>  Binary: 20060101-UKMO-L4UHfnd-GLOB-v01.nc
>>  Type = Gridded
>>  Xsize = 7200  Ysize = 3600  Zsize = 1  Tsize = 1
>>  Number of Variables = 5
>>    sst_foundation 0 -999 foundation sea surface temperature
>>    analysis_error 0 -999 error estimate from the analysis
>>    bias 0 -999 analysis error bias
>>    sea_ice_fractio 0 -999 sea ice fraction
>>    mask 0 -999 mask
>>
>>
>> ---------Headers from ncdump------------------------------------
>> netcdf 20060101-UKMO-L4UHfnd-GLOB-v01 {
>> dimensions:
>>        lon = 7200 ;
>>        lat = 3600 ;
>>        time = 1 ;
>> variables:
>>        int time(time) ;
>>                time:long_name = "reference time of sst field" ;
>>                time:units = "seconds since 1981-01-01 00:00:00" ;
>>        float lat(lat) ;
>>                lat:long_name = "latitude" ;
>>                lat:units = "degrees_north" ;
>>        float lon(lon) ;
>>                lon:long_name = "longitude" ;
>>                lon:units = "degrees_east" ;
>>        short sst_foundation(time, lat, lon) ;
>>                sst_foundation:long_name = "foundation sea surface
>> temperature" ;
>>                sst_foundation:units = "kelvin" ;
>>                sst_foundation:_FillValue = -32768s ;
>>                sst_foundation:add_offset = 273.15f ;
>>                sst_foundation:scale_factor = 0.01f ;
>>                sst_foundation:valid_min = -32767s ;
>>                sst_foundation:valid_max = 32767s ;
>>                sst_foundation:standard_name =
>> "sea_surface_temperature" ;
>>        byte analysis_error(time, lat, lon) ;
>>                analysis_error:long_name = "error estimate from the
>> analysis" ;
>>                analysis_error:units = "kelvin" ;
>>                analysis_error:_FillValue = -128b ;
>>                analysis_error:add_offset = 0.f ;
>>                analysis_error:scale_factor = 0.05f ;
>>                analysis_error:valid_min = -127b ;
>>                analysis_error:valid_max = 127b ;
>>        byte bias(time, lat, lon) ;
>>                bias:long_name = "analysis error bias" ;
>>                bias:units = "kelvin" ;
>>                bias:_FillValue = -128b ;
>>                bias:add_offset = 0.f ;
>>                bias:scale_factor = 0.01f ;
>>                bias:valid_min = -127b ;
>>                bias:valid_max = 127b ;
>>        byte sea_ice_fraction(time, lat, lon) ;
>>                sea_ice_fraction:long_name = "sea ice fraction" ;
>>                sea_ice_fraction:units = "1" ;
>>                sea_ice_fraction:_FillValue = -128b ;
>>                sea_ice_fraction:add_offset = 0.f ;
>>                sea_ice_fraction:scale_factor = 0.01f ;
>>                sea_ice_fraction:valid_min = -127b ;
>>                sea_ice_fraction:valid_max = 127b ;
>>                sea_ice_fraction:standard_name =
>> "sea_ice_area_fraction" ;
>>                sea_ice_fraction:comment = "Data derived from OSI-SAF
>> sea ice product" ;
>>        byte mask(time, lat, lon) ;
>>                mask:long_name = "mask" ;
>>                mask:comment = "b0: 1=sea ; b1: 1=land ; b2: 1=lakes ;
>> b3: 1=ice" ;
>>
>> // global attributes:
>>                :Conventions = "CF-1.0" ;
>>                :title = "OSTIA Sea Surface Temperature Analysis" ;
>>                :DSD_entry_id = "UKMO-TSANAL-v01-GLOB" ;
>>                :references = "None" ;
>>                :institution = "UK Met Office" ;
>>                :contact = "john.stark at metoffice.gov.uk" ;
>>                :GDS_version_id = "v1.0-rev1.5" ;
>>                :netcdf_version_id = "3.6.0-p1 of Jul  4 2005 16:41:16
>> $" ;
>>                :creation_date = "2006-01-02 14:00 UTC" ;
>>                :product_version = "0.1" ;
>>                :history = "Created from sst:temperature from
>> /data/local/frhn/OSTIA/analysis/20060102_UKMO_L4UHfnd_GLOB_v01.nc;
>> error:; bias:; sea ice:" ;
>>                :grid_resolution = "   0.05000 degree" ;
>>                :comment = "WARNING Some applications are unable to
>> properly handle signed byte values. If values are encountered > 127,
>> please substract 256 from this reported value" ;
>>                :start_date = "2006-01-01 UTC" ;
>>                :start_time = "00:00:00 UTC" ;
>>                :stop_date = "2006-01-02 UTC" ;
>>                :stop_time = "00:00:00 UTC" ;
>>                :southernmost_latitude = -90.f ;
>>                :northernmost_latitude = 90.f ;
>>                :westernmost_longitude = -180.f ;
>>                :easternmost_longitude = 180.f ;
>>                :file_quality_index = "0" ;
>> data:
>>
>> time = 788961600 ;
>>
>> lat = -89.975, -89.925, -89.875, -89.825, -89.775, -89.725, -89.675,
>>    -89.625, -89.575, -89.525, -89.475, -89.425, -89.375, -89.325,
>> -89.275,
>
>
> --
>
> Please note that Charles.Seman at noaa.gov should be considered my NOAA
> email address, not cjs at gfdl.noaa.gov.
>
> ********************************************************************
> Charles Seman                                Charles.Seman at noaa.gov
> U.S. Department of Commerce / NOAA / OAR
> Geophysical Fluid Dynamics Laboratory         voice: (609) 452-6547
> 201 Forrestal Road                              fax: (609) 987-5063
> Princeton, NJ  08540-6649            http://www.gfdl.noaa.gov/~cjs/
> ********************************************************************
>
> "The contents of this message are mine personally and do not reflect
> any position of the Government or NOAA."
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://gradsusr.org/pipermail/gradsusr/attachments/20061105/19d7dc6e/attachment.html 


More information about the gradsusr mailing list