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.
I sent the list a message asking for a SAS/netcdf interface similar to the Matlab/netcdf interface. I have not yet had a positive response to my request for a SAS interface, but I have had two people ask about the matlab interface. I take no credit for the matlab interface; I am only a satisfied user. I responded personally to the people asking about the matlab interface, but the mail to Brad Beattie was undeliverable. Since I do not know how to contact Brad and this may be of general interest to the list, I am posting the README file from the Matlab mexcdf distribution. I am still hopeful some kind person out there will share their SAS/netcdf interface. Phil Miller philip.miller@xxxxxxxxxx -------------------------------------------- /pub/mexcdf/README available via anonymous ftp from crusty.er.usgs.gov (128.128.19.19) MEXCDF is a mex-file interface between netCDF and MATLAB 3.5 and 4.1 (for UNIX machines) that invokes the complete C-Language netCDF interface, as described in the NetCDF Users Guide. This allows MATLAB users to read, write, and manipulate netCDF data files in an efficient manner. What you should do: 1. Get the mexcdf mex-file. If you have a SUN 4, DECstation, Mac, or 386PC running Matlab 3.5, you should be able to grab the appropriate mexcdf binary from /pub/mexcdf/bin/v35: mexcdf.mexds DECstation (works with Matlab version 3.5) mexcdf.mex4 Sun 4 (works with Matlab version 3.5) mexcdf.mex Mac (macbinary) (works with Matlab version 3.5) mexcdf.sit.hqx Mac (ASCII) (works with Matlab version 3.5) mexcdf.mx3 IBM PC 386 (works with Matlab version 3.5, j or later) If you have a SUN 4, DECstation, or PC running MATLAB for WINDOWS, you should be able to grab the appropriate mexcdf binary from /pub/mexcdf/bin/v41: mexcdf.mexds DECstation (works with Matlab version 4.1) mexcdf.mex IBM PC (works with Matlab for Windows) mexcdf.mex4 Sun 4 (works with Matlab version 4.1) Use binary mode when you get these files, EXCEPT for mexcdf.sit.hqx, which should be transfered as ASCII. mexcdf.sit.hqx should be un-binhexed using binhex4.0 or higher and then unstuffed using un-stuffit. NOTE: DON'T rename the mexcdf binary. MATLAB expects MEX files to have platform-specific file extentions (mex4 on Sun4, mexds on DEC, etc.) Also get mexcdf.m, which describes the usage of mexcdf and will allow you to use "help mexcdf" from within matlab. If you need to compile the source code for mexcdf, grab the files in /pub/mexcdf/src. Note that mexcdf.c must be compiled with an ANSI C compiler (e.g. gcc). 2. Get the usage of mexcdf by typing "mexcdf" in Matlab, or check out the file mexcdf.m. 3. mget everything in the /pub/mexcdf/tools directory (all the m-files and flux.dat) and check out some applications that use mexcdf. Note to DOS-Users: Some of the m-files have file names that are longer than 8 characters, but they are all uniquely specified by the first 8 characters. Thus the tools work fine under Matlab on the PC. The function getcdf.m is an interactive routine written by Jim Mansbridge that leads you through the extraction of data from netCDF files. The function mcvgt.m is a noninteractive routine that returns netCDF data when you already know the name of the variable you want and the indices of the data slab you wish to return. The function create_ts.m creates a netCDF time series file using file using NOAA PMEL's EPIC conventions. This allows the created file to be interfaced directly to Don Denbo's PlotPlus program. The function getts.m gets time series data from netCDF files using EPIC conventions (e.g. files written by create_ts.m). The user specifies the variable and the start and stop time and is returned the data variable and a Julian time variable. The script cdf_demo.m demonstrates the use of create_ts.m and getts.m by creating a netcdf time series file of heat flux from Matlab, then reading selected data back into Matlab. The function read_gmt.m reads GMT style netCDF grid files (GMT is Paul Wessel and Walter Smith's freely available plotting and analysis package). History of mexcdf: Chuck Denham (cdenham@xxxxxxxxxxxxxxxxxx) wrote the first netCDF/Matlab interface using m-files that called stand-alone C-programs to implement the interface. For each netCDF operation, netCDF files were opened and closed, and netCDF data were written to matlab .mat files which were then "loaded" into Matlab. The result was useful, but inefficient. To increase the efficiency, Jim Mansbridge of CSIRO (mansbrid@xxxxxxxxxxxxxxxxx) combined many operations into a single FORTRAN mex-file, called xnetcdf.f. Realizing the utility of this method, Julie Allen of WHOI (jallen@xxxxxxxx) rewrote xnetcdf.f in C, implemented additional operations (including operations relating to creation of netCDF files from Matlab), and named the mexfile mexcdf.c. The mexcdf.c code was rewritten by Chuck Denham to allow more flexibility in the way the netCDF operations are invoked, and to streamline the code to work on Macintosh and IBM PCs. EXAMPLE ftp session: ftp crusty.er.usgs.gov user anonymous cd pub/mexcdf/bin binary get mexcdf.mex4 (for sun4) ascii cd pub/mexcdf/tools mget * bye
netcdfgroup
archives: