Hi Barb, > I was told by Patrick West of RPI who is still a contractor with > HAO and who also works with opendap, that netCDF4 assumes data from > any URL is an opendap server, so it can use the opendap client objects > for matlab or IDL. Users do not need to download separate opendap software, > since it is embedded in netCDF4. Patrick did talk with Ed Hartnett of > Unidata about this, and Ed suggested talking with the matlab or IDL folks, > but I don't see how they would be familiar with opendap capabilities. I am > copying in Patrick with this note. Yes, if netCDF-4 is built on a plattform that has the "curl" application and libraries installed, it gets built with OPeNDAP client support by default. The IDL and Matlab folks who are responsible for netCDF support know something about this, and are committed to netCDF-4 support in their products: http://www.unidata.ucar.edu/software/netcdf/docs/faq.html#fv10 but I don't know if they are configuring in OPeNDAP support. We should ask them about that. > Howerver, I think this means clients can work in matlab or IDL and read > netCDF4 > files so accessing data this way is like having an Application Programming > Interface (API). Is this correct? Do we automatically get APIs in matlab > and IDL by using netCDF4 in this way? Do APIs 'pinpoint' the data on a > server machine and only get that data? Is the data stored in some /temp/ > disk which could be saved elsewhere for later use? I am not really familiar > with APIs, so I don't really know what they do. A simple explanation of > them and how netCDF4 works with them using the opendap client objects would > be great. APIs are just jargon for the functions that a library makes public, such as the public functions nc_open, nc_inq_var, nc_def_var, and nc_close in the netCDF C library. The OPeNDAP client support added to netCDF-4 just means that you can call nc_open (or nf_open or nf90_open or ...) with the URL for a dataset on a remote OPeNDAP server in place of the filename you would usually use. And the URL can use OPeNDAP notation to specify a particular variable or even a particular range of indices for a particular variable, so you can remotely access a small subset of the data from a large dataset efficiently. The data is accessed directly by the program that makes the nc_get_var (or nf90_get_var or whatever) call, without need for a temporary disk file. If you want to copy a small part of a large remote file to a local netCDF file, you can do that with the nccopy utility in netCDF-4.1.1. To access remote data, you shouldn't have to change anything in your program except the name of the file you are opening. You also have to recompile and relink your program with the netCDF-4 library, configured with support for OPeNDAP, using the --enable-dap option to configure (or by default if the curl library is installed). --Russ Russ Rew UCAR Unidata Program address@hidden http://www.unidata.ucar.edu Ticket Details =================== Ticket ID: LRP-531622 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.