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.
Karsten Bolding <karsten@xxxxxxxxxxxxxxxxxxxx> writes: > Hello > > I'm in the process of re-writing the output routines of a ocean model >>From NetCDF3 to NetCDF4. Great! A little background: ncdump and ncgen are being actively re-worked to handle the netCDF-4 data model extensions. So if you are frustrated with the current limited handling of groups, user-defined types, etc., then relief is at hand! However, the bad news is that the ncgen/ncdump programmer, Russ Rew, is on travel for a conference on the CF metadata conventions. So I will answer your questions as best I can, and Russ will no doubt correct any mistakes I make when he eventually catches up his email. (Or perhaps even before he gets on his flight!) > > As part of my efforts I would like to see if I'm actually storing data > in my .nc file. Usually I use ncdump for that purpose but with NetCDF4 I > get: > > kbk@orca:~/getm-setups/v1.6.x/haidvogel$ /opt/netcdf4/bin/ncdump getm.nc > netcdf getm { > dimensions: > lon = 130 ; > lat = 5 ; > z = 21 ; > variables: > float lon(lon) ; > float lat(lat) ; > float level(z) ; > > // global attributes: > :title = "Haidvogel and Beckmann test case" ; > :history = "Generated by getm, ver. 1.7.0" ; > data: > > lon = _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, > _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, > _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, > _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, > _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, > _, _, _, _, _, _, _, _, _, _, _ ; > > lat = _, _, _, _, _ ; > > level = _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ ; > > group: 2d { > dimensions: > time = UNLIMITED ; // (48 currently) > variables: > float time(time) ; > float elev(time, lat, lon) ; > float U(time, lat, lon) ; > float V(time, lat, lon) ; > data: > } > } > > Notice that it is listed that there are 48 in the unlimited dimension I > do hwoever not see any data listed. For testing I just dump random > numbers into elev, U and V. > > Is that a new feature of ncdump? Feature or bug? Just a matter of definition, right? ;-) This one is a bug. I see now what the problem is, and it will affect any variable in a group where the unlimited dimension is not defined in the same group. In this case, ncdump will treat the variable as if it were empty. Whoops! My fault. Sorry. We will get this fixed shortly, as soon as we all get back from this trip. Meanwhile, you can use h5dump to check your data. > Another question - I'm I right in the assumption that I can inherit > dimensions from the root group - as shown above - does that imply I also > inherit the root coordinate variables? No it does not! Coordinate variables are like any other variables. They are local to their group, and their varid is local to their group too. You need the varid and the ncid (which identifies both file and group) to identify a variable. > > Karsten > > > PS: The file in question can be downloaded here: > ftp://bbh.homelinux.net/pub/karsten.bolding/getm.nc Thanks, that was very helpful! Ed -- Ed Hartnett -- ed@xxxxxxxxxxxxxxxx ============================================================================== To unsubscribe netcdfgroup, visit: http://www.unidata.ucar.edu/mailing-list-delete-form.html ==============================================================================
netcdfgroup
archives: