|
|
|||
|
||||
Foreword
Unidata is a National Science Foundation-sponsored program empowering U.S. universities, through innovative applications of computers and networks, to make the best use of atmospheric and related data for enhancing education and research. For analyzing and displaying such data, the Unidata Program Center offers universities several supported software packages developed by other organizations. Underlying these is a Unidata-developed system for acquiring and managing data in real time, making practical the Unidata principle that each university should acquire and manage its own data holdings as local requirements dictate. It is significant that the Unidata program has no data center-the management of data is a "distributed" function.
The Network Common Data Form (netCDF) software described in this guide was originally intended to provide a common data access method for the various Unidata applications. These deal with a variety of data types that encompass single-point observations, time series, regularly-spaced grids, and satellite or radar images.
The netCDF software functions as an I/O library, callable from C, FORTRAN, Fortran 90, C++, Java, Perl, Python, or other languages for which a netCDF library is available. The library stores and retrieves data in self-describing, machine-independent datasets. Each netCDF dataset can contain multidimensional, named variables (with differing types that include integers, reals, characters, bytes, etc.), and each variable may be accompanied by ancillary data, such as units of measure or descriptive text. The interface includes a method for appending data to existing netCDF datasets in prescribed ways, functionality that is not unlike a (fixed length) record structure. However, the netCDF library also allows direct-access storage and retrieval of data by variable name and index and therefore is useful only for disk-resident (or memory-resident) datasets.
- Facilitate the use of common datasets by distinct applications.
- Permit datasets to be transported between or shared by dissimilar computers transparently, that is, without translation.
- Reduce the programming effort usually spent interpreting formats.
- Reduce errors arising from misinterpreting data and ancillary data.
- Facilitate using output from one application as input to another.
- Establish an interface standard that simplifies the design of new software for accessing geoscience data.
A measure of success has been achieved. NetCDF is now in use on computing platforms that range from personal computers to supercomputers and include most UNIX-based workstations. It can be used to create a complex dataset on one computer (say in FORTRAN) and retrieve that same self-describing dataset on another computer (say in C) without intermediate translations-netCDF datasets can be transferred across a network, or they can be accessed remotely using a suitable network file system or other remote access protocol.
Because we believe that the use of netCDF access in non-Unidata software will benefit Unidata's primary constituency-such use may result in more options for analyzing and displaying Unidata information-the netCDF library is distributed without licensing or other significant restrictions, and current versions can be obtained via anonymous FTP. Apparently the software has been well received by a wide range of institutions beyond the atmospheric science community, and a substantial number of open source and commercial data analysis systems can now accept netCDF datasets as input.
Several organizations have adopted netCDF as a data access standard, and there are efforts underway to support the netCDF programming interfaces as a means to store and retrieve data in other forms. We have encouraged and cooperated with these efforts.
Questions occasionally arise about the level of support provided for the netCDF software. Unidata's formal position, stated in the copyright notice which accompanies the netCDF library, is that the software is provided "as is". In practice, the software is updated from time to time, and Unidata intends to continue adapting the software to new platforms and development environments and maintaining the ability to access netCDF data for the foreseeable future. Because Unidata's mission is to serve geoscientists at U.S. universities, problems reported by that community necessarily receive the greatest attention.
We hope the reader will find the software useful and will give us feedback on its application as well as suggestions for its improvement.
David Fulker, Unidata Program Center Director
University Corporation for Atmospheric Research
Summary
The purpose of the Network Common Data Form (netCDF) interface is to allow you to create, access, and share array-oriented data in a form that is self-describing and portable. "Self-describing" means that a dataset includes information defining the data it contains. "Portable" means that the data in a dataset is represented in a form that can be accessed by computers with different ways of storing integers, characters, and floating-point numbers. Using the netCDF interface for creating new datasets makes the data portable. Using the netCDF interface in software for data access, management, analysis, and display can make the software more generally useful.
The netCDF software includes C, Fortran 77, and Fortran 90 interfaces for accessing netCDF data. These libraries are available for many common computing platforms.
Java, C++ and Perl interfaces for netCDF data access are also available from Unidata. The community of netCDF users has contributed ports of the software to additional platforms and interfaces for other programming languages as well. Source code for netCDF software libraries is freely available to encourage the sharing of both array-oriented data and the software that makes the data useful.
This User's Guide presents the netCDF data model, but documents only the Fortran 90 interface. Separate documents are available for the other language interfaces; also see http://www.unidata.ucar.edu/software/netcdf/ for links to on-line versions of the C, FORTRAN, Fortran-90, Java, C++ and Perl documentation. Reference documentation in the form of UNIX `man' pages for the C and FORTRAN interfaces and extensive additional information about netCDF, including pointers to other software that works with netCDF data, are also available from the netCDF home page.
| Contact Us Site Map Search Terms and Conditions Privacy Policy Participation Policy | ||||||
|
||||||