Unidata - To provide the data services, tools, and cyberinfrastructure leadership that advance Earth system science, enhance educational opportunities, and broaden participation. Unidata
         
  advanced  
 

Next: , Previous: Creating a NetCDF Dataset, Up: Use of the NetCDF Library


1.2 Reading a NetCDF Dataset with Known Names

Here we consider the case where you know the names of not only the netCDF datasets, but also the names of their dimensions, variables, and attributes. (Otherwise you would have to do "inquire" calls.) The order of typical C calls to read data from those variables in a netCDF dataset is:

         NF_OPEN               ! open existing netCDF dataset
              ...
            NF_INQ_DIMID       ! get dimension IDs
              ...
            NF_INQ_VARID       ! get variable IDs
              ...
            NF_GET_ATT         ! get attribute values
              ...
            NF_GET_VAR         ! get values of variables
              ...
         NF_CLOSE              ! close netCDF dataset

First, a single call opens the netCDF dataset, given the dataset name, and returns a netCDF ID that is used to refer to the open netCDF dataset in all subsequent calls.

Next, a call to NF_INQ_DIMID for each dimension of interest gets the dimension ID from the dimension name. Similarly, each required variable ID is determined from its name by a call to NF_INQ_VARID.Once variable IDs are known, variable attribute values can be retrieved using the netCDF ID, the variable ID, and the desired attribute name as input to a member of the NF_GET_ATT family (typically NF_GET_ATT_TEXT or NF_GET_ATT_DOUBLE) for each desired attribute. Variable data values can be directly accessed from the netCDF dataset with calls to members of the NF_GET_VAR1 family for single values, the NF_GET_VAR family for entire variables, or various other members of the NF_GET_VARA, NF_GET_VARS, or NF_GET_VARM families for array, subsampled or mapped access.

Finally, the netCDF dataset is closed with NF_CLOSE. There is no need to close a dataset open only for reading.
 
 
  Contact Us     Site Map     Search     Terms and Conditions     Privacy Policy     Participation Policy
 
National Science Foundation (NSF) UCAR Office of Programs University Corporation for Atmospheric Research (UCAR)   Unidata is a member of the UCAR Office of Programs, is managed by the University Corporation for Atmospheric Research, and is sponsored by the National Science Foundation.
P.O. Box 3000     Boulder, CO 80307-3000 USA     Tel: 303-497-8643     Fax: 303-497-8690