NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Jeff Whitaker wrote:
Ed et al: Here's a simple C program that produces an incorrect netcdf file with netcdf-4.1
Can anyone confirm or deny that this is a real bug? I noticed that netcdf-4.1 was pulled from the ftp site, so I guess that means someone is working on it ....
-Jeff
#include <stdio.h> #include <string.h> #include <netcdf.h> #define FILE_NAME "test.nc" #define NDIMS 2 #define NLAT 10 #define NLON 20 #define LAT_NAME "lat" #define LON_NAME "lon" #define START_LAT 25.0 #define START_LON -125.0 int main() { int ncid, lon_dimid, lat_dimid; int lat_varid, lon_varid; int dimids[NDIMS]; float lats[NLAT], lons[NLON]; int lat, lon; int retval; for (lat = 0; lat < NLAT; lat++) lats[lat] = START_LAT + 5.*lat; for (lon = 0; lon < NLON; lon++) lons[lon] = START_LON + 5.*lon; retval = nc_create(FILE_NAME, NC_NETCDF4 | NC_CLOBBER, &ncid); retval = nc_def_dim(ncid, LAT_NAME, NLAT, &lat_dimid); retval = nc_def_dim(ncid, LON_NAME, NLON, &lon_dimid);retval = nc_def_var(ncid, LON_NAME, NC_FLOAT, 1, &lon_dimid, &lon_varid);retval = nc_put_var_float(ncid, lon_varid, &lons[0]);retval = nc_def_var(ncid, LAT_NAME, NC_FLOAT, 1, &lat_dimid, &lat_varid);retval = nc_put_var_float(ncid, lat_varid, &lats[0]); retval = nc_close(ncid); return 0; } An ncdump of the resulting file looks like this: ncdump test.nc netcdf test { dimensions: lat = 10 ; lat = 10 ; variables: float lon(lat) ; float lat(lat) ; data: lon = -125, -120, -115, -110, -105, -100, -95, -90, -85, -80 ; lat = 25, 30, 35, 40, 45, 50, 55, 60, 65, 70 ; }which is more than a little weird. Linking the program with either netcdf-4.0.1 or netcdf-4.1-rc1 produces the correct netcdf filencdump test.nc netcdf test { dimensions: lat = 10 ; lon = 20 ; variables: float lon(lon) ; float lat(lat) ; data: lon = -125, -120, -115, -110, -105, -100, -95, -90, -85, -80 ; lat = 25, 30, 35, 40, 45, 50, 55, 60, 65, 70 ; } -Jeff _______________________________________________ netcdfgroup mailing list netcdfgroup@xxxxxxxxxxxxxxxxFor list information or to unsubscribe, visit: http://www.unidata.ucar.edu/mailing_lists/
netcdfgroup
archives: