The Open-source Project for a Network Data Access Protocol (OPeNDAP) is a data transport architecture. The Thematic Realtime Environmental Distributed Data Services (THREDDS) is a data service. The Distributed Oceanographic Data System (DODS) evolved into OPeNDAP. It is now possible in MATLAB to use THREDDS/OPeNDAP to load netcdf or grib-format data into your matlab session with a single command line, and the data can reside at JISAO or at another OPeNDAP institution, for example, the NOAA Earth System Research Laboratory . The good part of OPeNDAP is that, in theory, a single command line can be used to input an entire data set, similar to "load data.mat" . The bad side of OPeNDAP is that the speed that the data loads will be constrained by the ftp file transfer speed. All of the data sets on the JISAO WWW climate data archive can be accessed through OPeNDAP. Figuring out the OPeNDAP data sets at other institutions is getting easier. All NOAA ESRL data sets are available through OPeNDAP. The URL to use for JISAO data sets is
Reading a file in MATLAB is as easy as:
ncread( filename )
where "filename" is an THREDDS / OPeNDAP address for the filename of interest.
ncinfo will display the header
information and the subset of the variable dimenstions, respectively.
The MATLAB help on these commands is very good.
If you are reading a large number of files, and some of the files are corrupt or non-existent, MATLAB has the following construction:
I wrote to MATLAB to try to get them to include an error flag in the ncread output, and this will be considered in future MATLAB releases.
try ncread( filename ) catch % code to handle the error end