Hi Dr. Segal, > I am trying to read NCEP reanalysis files (for example air.1987.nc ) > > I am using 64 bit Matlab on 64bit windows 7 machine. > > The procedure I have wrote is: > > ncid = > netcdf.open('C:\Users\user\Documents\Wales\Regional\1987\air.1987.nc','NC_NOWRITE'); > [varname, xtype, varDimIDs, varAtts] = netcdf.inqVar(ncid,4); > varid = netcdf.inqVarID(ncid,varname); > air = netcdf.getVar(ncid,varid'); > > air is expected to contain temperatures in int16 variable, however when > I check the values they don't come in K units, for example: > >> air(1,1,1,1) > > ans = > > -24166 > > which is expected to be something about 250K. > > It is important to note that other variables, for example: > > [varname, xtype, varDimIDs, varAtts] = netcdf.inqVar(ncid,0); > varid = netcdf.inqVarID(ncid,varname); > level = netcdf.getVar(ncid,varid); > > and here the data is accurate > > level > > level = > > 1000 > 925 > 850 > 700 > 600 > 500 > 400 > 300 > 250 > 200 > 150 > 100 > 70 > 50 > 30 > 20 > 10 Does the "air" variable have the attributes "scale_factor" or "add_offset"? If so, it would indicate that the data is packed, and should be unpacked by applying the formula unpacked_data_value = packed_data_value * scale_factor + add_offset If that doesn't explain the problem, try using the "ncdump" program to see the values of the air variable. If ncdump gets the right values but your Matlab program doesn't, then that indicates a problem in your program or Matlab. If ncdump shows the wrong values, we might be able to determine the problem by looking at the air.1987.nc file, if you could make it available. --Russ Russ Rew UCAR Unidata Program address@hidden http://www.unidata.ucar.edu Ticket Details =================== Ticket ID: COH-743209 Department: Support netCDF Priority: Normal Status: Closed
NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.