Software for Manipulating or Displaying NetCDF Data

This document provides references to software packages that may be
used for manipulating or displaying netCDF data. We include
information about both freely-available and licensed (commercial)
software that can be used with netCDF data. We rely on developers
to help keep this list up-to-date. If you know of corrections or
additions, please send them to us. Where practical, we would like
to include WWW links to information about these packages in the
HTML version of this document at
<http://www.unidata.ucar.edu/packages/netcdf/software.html>.

Another guide to netCDF utilities is available from
http://www.gfdl.gov/~jps/GFDL_VG_NetCDF_Utils.html.

------------------------------------------------------------------

Freely Available Software

   * ARGOS
   * CDAT
   * CIDS Tools
   * CRDtools
   * CSIRO MATLAB/netCDF interface
   * DDI
   * DODS
   * Envision
   * EPIC
   * EzGet
   * FAN
   * FERRET
   * FREUD
   * GMT
   * Grace
   * GrADS
   * Gri
   * HDF interface
   * HIPHOP
   * HOPS
   * Ingrid
   * IVE
   * Java interface
   * LinkWinds
   * MexEPS
   * ncBrowse
   * NCO
   * ncview
   * NetCDF File Calculator and Data Editor
   * Netcdf to HDF converter
   * NetCDF Toolbox for MATLAB-5
   * OpenDX (formerly IBM Data Explorer)
   * PolyPaint+
   * Python interfaces
   * Tcl/Tk interface
   * SciAn
   * VisAD
   * WebWinds
   * Xmgr
   * Zebra
   * User-contributed software

------------------------------------------------------------------

Commercial or Licensed Packages

   * AVS
   * Environmental WorkBench
   * IDL Interface
   * InterFormat
   * IRIS Explorer Module
   * MATLAB
   * NCAR Graphics
   * Noesys
   * PPLUS
   * PV-Wave
   * Slicer Dicer
   * VISAGE and Decimate
   * WXP

------------------------------------------------------------------

ARGOS

ARGOS (interActive thRee-dimensional Graphics ObServatory) is a
new IDL based interactive 3D visualization tool, developed by
David N. Bresch and Mark A. Liniger at the Institute for
Atmospheric Science at the Swiss Federal Institute of Technology,
ETH, Zürich.

A highly optimized graphical user interface allows quick and
elegant creation of even complex 3D graphics (volume rendering,
isosurfaces,...), including Z-buffered overlays (with hidden
lines), light and data shading, Xray images, 3D trajectories,
animations and virtual flights around your data, all documented in
a full on-line html-help. The netCDF data format is preferred, but
any other format can be read by providing an IDL (or FORTRAN or C
or C++) interface. Some toolboxes (for atmospheric model output,
trajectory display, radar data) have already been written, others
might easily be added (in IDL, FORTRAN or C code). All interactive
activities are tracked in a script, allowing quick reconstruction
of anything done as well as running ARGOS in batch script mode.

Information about copyright and licensing conditions are
available. For further information and installation, please E-mail
to: bresch@atmos.umnw.ethz.ch

CDAT

The Climate Data Analysis Tool (CDAT), developed by the Program
for Climate Model Diagnosis and Intercomparison (PCMDI) at
Lawrence Livermore National Laboratory, provides the capabilities
needed to analyze model data, perform complex mathematical
calculations, and graphically display the results. It provides the
necessary tools to diagnose, validate, and intercompare large
observational and global climate model data sets.

It includes the ability to ingest

     ... large climate datasets in netCDF, HDF, DRS, and
     GrADS/GRIB format; the Visualization and Computation
     System (VCS) module, visually displays and animates
     ingested or created data; and the Library of AMIP Data
     Transmission Standards (LATS) module, outputs data in
     the machine-independent netCDF or GrADS/GRIB file
     formats. ... In addition, the Command Line Interface
     (CLI) module allows CDAT to receive argument and
     function input via the command line and the Graphical
     User Interface (GUI) allows CDAT to receive argument and
     function input via a point-and-click environment.

     ... The software, which runs as a standalone process or
     within PCMDI's Visualization and Computation System
     (VCS), provides climate scientists with an easy and fast
     method to read different file formats, and to analyze
     and graphically display climate data in an integrated
     fashion. CDAT includes a set of pre-defined functions to
     allow the user to manipulate the data and send the
     output to a file which can be viewed as an image, or as
     a collection of images in an animation. The software has
     a gradual learning curve, allowing the novice user to
     quickly obtain useful results.

CIDS Tools

The Center for Clouds Chemistry and Climate (C4) Integrated Data
Systems (CIDS) group has developed several useful netCDF
utilities:

   * cdf2idl: Writes an IDL script to read a NetCDF file.
   * cdf2c: Writes C code to read a NetCDF file.
   * cdf2fortran: Writes FORTRAN source code to read a NetCDF
     file.
   * cdf2asc: Dumps NetCDF data to an ASCII file.

The source for these utilities can be downloaded from CIDS NetCDF
Visualization Tools site.

CRDtools

Climate Research Data Tools (CRDtools) provides data extraction,
analysis, and visualization functions for the climatology
researcher. This toolkit of X Windows applications was developed
at the NOAA Climate Diagnostics Center. CRDtools is written in C
and uses the NCAR Graphics plotting package to display some of its
output. In addition to netCDF, you will need the NCAR graphics
package to use CRDtools.

   * Current release information.
   * CRDtools installation instructions

For additional CRDtools help, contact crdtools@cdc.noaa.gov.

CSIRO MATLAB/netCDF interface

The CSIRO MATLAB/netCDF interface is now available from the CSIRO
Marine Laboratories.

The CSIRO MATLAB/netCDF interface is run from within MATLAB and
has a simple syntax. It has options for automatically handling
missing values, scale factors, and permutation of hyperslabs. It
is, however, limited to retrieving data from, and information
about, existing netCDF files.

The basis of the interface is a machine-dependent mex-file called
mexcdf53 (an older version running under matlab4 used mexcdf).
Rather than call the mex-file directly users are advised to employ
both Chuck Denham's netCDF toolbox and the CSIRO MATLAB/netCDF
interface described here. For read-only access to existing netCDF
data, the CSIRO interface has a simpler syntax than the netCDF
Toolbox, but the latter may also be used to create and manipulate
netCDF variables and datasets.

DDI

The Data and Dimensions Interface (DDI) addresses a significant
problem in the visualization of large data sets: Extracting only
the relevant data and providing it to a chosen graphics engine in
the required form without undue effort.

DDI transfers data between files, formats and visualization
systems. It works within the specifications of each supported
format to promote compatibility. DDI provides the following
capabilities:

   * Browsing through the contents of DRS, NetCDF, and HDF files
   * Randomly selecting data variables
   * Rearranging variables into the desired form
   * Modifying or creating new variable attributes
   * Saving variables into new files
   * Feeding variables directly to a visualization system

DDI operates in two modes:

   * As a module in a data flow environment such as AVS or IRIS
     Explorer
   * As a stand-alone application capable of sending data over the
     network to AVS, IRIS Explorer, IDL, NCSA Collage, and PV-WAVE

DDI is available for a number of computer systems via anonymous
FTP.

The Introduction to DDI and DDI Reference Manual are
WWW-accessible: http://www-pcmdi.llnl.gov/software/ddi/

DDI was developed as a collaboration between the Program for
Climate Model Diagnosis and Intercomparison (PCMDI), and the
National Energy Research Supercomputer Center (NERSC), both of
Lawrence Livermore National Laboratory (LLNL). DDI was developed
by Chris L. Anderson, Robert S. Drach, and Dean N. Williams.

DODS

The Distributed Oceanographic Data System (DODS) is an effort to
facilitate widespread exchange of scientific data sets between
scientists over the Internet. DODS is based on existing data
access tools; rather than developing a self contained system, it
makes extensive use of existing data access APIs and the World
Wide Web. DODS is being developed by the University of Rhode
Island and the Massachusetts Institute of Technology.

DODS can be used to make netCDF data files available over the
Internet and it can also be used to adapt existing software which
use the netCDF API (by re-linking) to read data served by a DODS
data server. In principle, any program written using netCDF can be
adapted to read data from a DODS data server - in other words any
program which uses netcdf can become a client in the DODS
client-server system. Included in the source and binary
distributions are two freely available programs which have already
been modified (re-linked).

With a client program accessing data from a netCDF server, it is
possible access a small subset of a large dataset over the
Internet without copying the entire dataset (as you would have to
do with FTP or AFS). The client can see changes to the netCDF
dataset, e.g. when new records are added (which would not be
possible with FTP). Finally, the client can also access
cross-sections of variable data without paging large amounts of
data across the network (as you would have to do with NFS, for
example).

While DODS currently supports netCDF only, the developers plan
support for other data access APIs including JGOFS. As new APIs
are added to DODS, existing clients will be able to read any of
those data sets, even those stored in a `foreign' API or format.

The first beta release of DODS software is freely available via
anonymous ftp in both source form (you will need the GNU C++
compiler and libg++) or binary form for selected platforms.

Envision

Envision is an interactive system for the management and
visualization of large scientific data sets. It runs on UNIX
workstations under X/Motif, manages data stored in netCDF or HDF
files, and does visualization using NCSA Collage, NCSA XDataSlice,
and IDL.

Envision is public domain software and is available by anonymous
FTP. The primary ftp site for Envision is vista.atmos.uiuc.edu in
pub/envision. A secondary FTP site is csrp.tamu.edu. Included in
the release are binaries for IBM RS6000, HP, Sun, and SGI, as well
as source and make files. Complete documentation, sample data, and
binaries to generate Envision project files for the sample data
are provided.

Envision was jointly developed at the Department of Atmospheric
Sciences at University of Illinois at Urbana-Champaign and the
Department of Meteorology at Texas A&M University, with funding
from NASA's Applied Information Systems Research Program.

For further information, contact Keith Searight
(krs@cdc.noaa.gov).

EPIC

NOAA's Pacific Marine Environmental Laboratory (PMEL) has
developed the EPIC software package for oceanographic data. EPIC
provides graphical display and data field manipulation for
multi-dimensional netCDF files (up to 4 dimensions). PMEL has been
using this software on Unix and VMS several years. At present,
they have:

   * a data file I/O library ( epslib, which is layered on top of
     the netCDF library).
   * epslib allows transparent access to multiple data file
     formats
   * a MATLAB MexEPS interface for using any supported EPIC file
     with MATLAB
   * suite of EPIC programs for graphics and analysis of
     hydrographic profile data and time series data.

This software was developed on Sun/Unix and is also supported for
DEC/Ultrix and VAX/VMS as a system for data management, display
and analysis system for observational oceanographic time series
and hydrographic data. The EPIC software includes over 50 programs
for oceanographic display and analysis, as well as utilities for
putting in-situ or observational data on-line (with on-the-fly
graphics and data download) on the WWW.

The developers are interested in coordinating with others who may
be developing oceanographic software for use with netCDF files.
The EPIC software is available via anonymous FTP from
ftp.noaapmel.gov in the epic/ and /eps directories. To obtain the
EPIC software, please see Web pages at
http://www.pmel.noaa.gov/epic/epic-toolkits.html. For information
about EPIC, please see the Web pages at
http://www.pmel.noaa.gov/epic/home.html. Contact
epic@pmel.noaa.gov, or Nancy Soreide, nns@noaapmel.gov, for more
information.

EzGet

A FORTRAN library called EzGet has been developed at PCMDI to
facilitate retrieval of modeled and observed climate data stored
in popular formats including DRS, netCDF, GrADS, and, if a control
file is supplied, GRIB. You can specify how the data should be
structured and whether it should undergo a grid transformation
before you receive it, even when you know little about the
original structure of the stored data (e.g., its original
dimension order, grid, and domain).

The EzGet library comprises a set of subroutines that can be
linked to any FORTRAN program. EzGet reads files through the
cdunif interface, but use of EzGet does not require familiarity
with cdunif. The main advantages of using EzGet instead of the
lower level cdunif library include:

   * Substantial error trapping capabilities and detailed error
     messages
   * Versatile capability of conveniently selecting data from
     specified regions (e.g., oceans, North America, all land
     areas north of 45 degrees latitude, etc.)
   * Ability to map data to a new grid at the time it is retrieved
     by EzGet
   * Automatic creation of ``weights'' for use in subsequent
     averaging or masking of data
   * Increased control in specifying the domain of the data to be
     retrieved.

For more information about EzGet, including instructions for
downloading the documentation or software, see the EzGet home page
at http://www-pcmdi.llnl.gov/ktaylor/ezget/ezget.html. For
questions or comments on EzGet, contact Karl Taylor
(taylor13@llnl.gov).

FAN

FAN (File Array Notation) is Harvey Davies' package for extracting
and manipulating array data from netCDF files. The package
includes the three utilities nc2text, text2nc, and ncrob for
printing selected data from netCDF arrays, copying ASCII data into
netCDF arrays, and performing various operations (sum, mean, max,
min, product, ...) on netCDF arrays. A library (fanlib) is also
included that supports the use of FAN from C programs. The package
is available via anonymous FTP from
ftp://ftp.unidata.ucar.edu/pub/netcdf/contrib/fan.tar.Z. Questions
and comments may be sent to Harvey Davies, hld@dar.csiro.au.

FERRET

FERRET is an interactive computer visualization and analysis
environment designed to meet the needs of oceanographers and
meteorologists analyzing large and complex gridded data sets. It
is available by anonymous ftp from abyss.pmel.noaa.gov for a
number of computer systems: SUN (Solaris and SUNOS), DECstation
(Ultrix and OSF/1), SGI, VAX/VMS and Macintosh (limited support),
and IBM RS-6000 (soon to be released).

FERRET offers a Mathematica-like approach to analysis; new
variables may be defined interactively as mathematical expressions
involving data set variables. Calculations may be applied over
arbitrarily shaped regions. Fully documented graphics are produced
with a single command. Graphics styles included line plots,
scatter plots, contour plots, color-filled contour plots, vector
plots, wire frame plots, etc. Detailed controls over plot
characteristics, page layout and overlays are provided. NetCDF is
supported both as an input and an output format.

Many excellent software packages have been developed recently for
scientific visualization. The features that make FERRET
distinctive among these packages are Mathematica-like flexibility,
geophysical formatting (latitude/longitude/date), "intelligent"
connection to its data base, special memory management for very
large calculations, and symmetrical processing in 4 dimensions.
Contact Steve Hankin, hankin@noaapmel.gov, for more information.

FREUD

Freud is a software environment that facilitates the production of
publication quality contour and vector plots. While there are many
public domain and commercial software packages that allow users to
create contour and vector plots, Freud is unique in that users can
quickly and easily customize the appearance of contour lines,
contour fills, map projections, or vector arrows with a couple of
mouse clicks. Freud allows researchers to:

   * create an unlimited number of contour and vector plot
     overlays that can be superimposed on up to six different map
     backgrounds.
   * interactively position an unlimited number of plots of any
     size at any position on a plotting page.
   * set the line style, line color, fill pattern, and fill color
     of contours, vectors or map background.
   * read in data in netCDF, binary, or ASCII data formats.
   * browse through netCDF variable attributes.
   * create scripts to automate plots by using extensions to the
     procedural scripting language TCL.
   * save a set of overlays to restore a given plot at a later
     date.

For more information, contact Joe Sirott
(sirott@atmos.washington.edu).

GMT

GMT (Generic Mapping Tools) is a free, public-domain collection of
about 50 UNIX tools that allow users to manipulate two- and
three-dimensional data sets (including filtering, trend fitting,
gridding, projecting, etc.) and produce Encapsulated PostScript
File (EPS) illustrations ranging from simple x-y plots through
contour maps to artificially illuminated surfaces and 3-D
perspective views in black and white, gray tone, hachure patterns,
and 24-bit color. GMT supports 20 common map projections plus
linear, log, and power scaling, and comes with support data such
as coastlines, rivers, and political boundaries.

Version 3.0 was recently announced in "New Version of the Generic
Mapping Tools Released," EOS Trans., AGU 72, 329.

The package can access netCDF data as well as ASCII, native
binary, or user-defined formats.

The GMT package is available via anonymous ftp from several
servers. Because of file sizes you are strongly encouraged to use
the closest server:

   * kiawe.soest.hawaii.edu in /pub/gmt. [Hawaii, US] Serving
     Asia/Australia/Pacific
   * ibis.grdl.noaa.gov in /pub/gmt. [Maryland, US] Serving North
     and South America
   * ftp.geologi.uio.no in /pub/gmt. [Oslo, Norway] Serving Europe

GMT was developed and is maintained by Paul Wessel
(wessel@soest.hawaii.edu) and Walter H. F. Smith
(walter@amos.grdl.noaa.gov).

Grace

Grace is a tool to make two-dimensional plots of scientific data.
It runs under the X Window System and OSF Motif (recent versions
of LessTif are, by and large, fine, too). Grace runs on
practically any version of Unix. As well, it has been successfully
ported to VMS, OS/2 and Win9*/NT (some functionality may be
missing, though). Grace is a descendant of ACE/gr, also known as
Xmgr.

A few features of Grace are:

   * User defined scaling, tick marks, labels, symbols, line
     styles, colors.
   * Batch mode for unattended plotting.
   * Read and write parameters used during a session.
   * Regressions, splines, running averages, DFT/FFT,
     cross/auto-correlation, ...
   * Support for dynamic module loading.
   * Hardcopy support for PostScript, PDF, GIF, and PNM formats.
   * Device-independent Type1 font rastering.
   * Ability to read or write netCDF data.

GrADS

GrADS (Grid Analysis and Display System) is an interactive desktop
tool from COLA/IGES that is currently in use worldwide for the
analysis and display of earth science data. GrADS is implemented
on all commonly available UNIX workstations, Apple Macintosh, and
DOS or Linux based PCs, and is freely available via anonymous ftp.
GrADS provides an integrated environment for access, manipulation,
and display of earth science data.

The SDF (Self-Describing Files) interface to GrADS is available
for UNIX platforms and permits reading netCDF or HDF-SDS files (
with some restrictions). SDF will be distributed with GrADS
version 1.6.

For additional info on the GrADS SDF interface, contact Don Hooper
at hoop@cdc.noaa.gov.

Gri

Gri is an extensible plotting language for producing scientific
graphs, such as x-y plots, contour plots, and image plots. Dan
Kelley of Dalhousie University is the author of Gri, which can
read data from netCDF files as well as ASCII and native binary
data. For more information on Gri, see the URL
http://www.phys.ocean.dal.ca/~kelley/gri/gri1.html.

HDF interface

The National Center for Supercomputing Applications (NCSA) has
added the netCDF interface to their Hierarchical Data Format (HDF)
software. HDF is an extensible data format for self-describing
files. A substantial set of applications and utilities based on
HDF is available; these support raster-image manipulation and
display and browsing through multidimensional scientific data. An
implementation is now available that provides the netCDF interface
to HDF. With this software, it is possible to use the netCDF
calling interface to place data into an HDF file. The netCDF
calling interface has not changed and netCDF files stored in XDR
format are readable, so existing programs and data will still be
usable (although programs will need to be relinked to the new
library). There is currently no support for the mixing of HDF and
netCDF structures. For example, a raster image can exist in the
same file as a netCDF object, but you have to use the Raster Image
interface to read the image and the netCDF interface to read the
netCDF object. The other HDF interfaces are currently being
modified to allow multi-file access, closer integration with the
netCDF interface will probably be delayed until the end of that
project.

Eventually, it will be possible to integrate netCDF objects with
the rest of the HDF tool suite. Such an integration will then
allow tools written for netCDF and tools written for HDF to both
interact intelligently with the new data files.

OpenDX

OpenDX (formerly IBM Data Explorer, also known as simply DX) is a
general-purpose software package for data visualization and
analysis. It employs a data-flow driven client-server execution
model and provides a graphical program editor that allows the user
to create a visualization using a point and click interface.

DX runs on 7 major UNIX platforms as well as Windows 95/NT and is
designed to take full advantage of multi-processor systems from
IBM, SGI and Sun.

DX is built upon an internal data model, which describes and
provides uniform access services for any data brought into,
generated by, or exported from the software. This data model
supports a number of different classes of scientific data, which
can be described by their shape (size and number of dimensions),
rank (e.g., scalar, vector, tensor), type (float, integer, byte,
etc. or real, complex, quaternion), where the data are located in
space (positions), how the locations are related to each other
(connections), aggregates or groups (e.g., hierarchies, series,
composites, multizone grids, etc.). It also supports those
entities required for graphics and imaging operations within the
context of Data Explorer. Regular and irregular, deformed or
curvilinear, structured and unstructured data as well as "missing"
or invalid data are supported.

The details of the data model are hidden at the user level. As a
result DX operations or modules are polymorphic and appear
typeless. The DX Import module, which reads data for use within
Data Explorer directly utilizes data in netCDF as well as other
formats (e.g., HDF, CDF). One or more variables may be selected as
well as step(s) of a time series. Data in conventional netCDFs are
directly imported. Since the DX data model is more comprehensive
than the netCDF data model, a methodology to extend netCDF via
attribute conventions (e.g., for unstructured meshes, non-scalar
data and hierarchies) for use with Data Explorer is available.

DX supports a number of realization techniques for generating
renderable geometry from data. These include color and opacity
mapping (e.g., for surface and volume rendering), contours and
isosurfaces, histograms, two-dimensional and three-dimensional
plotting, surface deformation, etc. for scalar data. For vector
data, arrow plots, streamlines, streaklines, etc. are provided.
Realizations may be annotated with ribbons, tubes, axes, glyphs,
text and display of data locations, meshes and boundaries. Data
probing, picking, arbitrary surface and volume sampling, and
arbitrary cutting/mapping planes are supported.

DX supports a number of non-graphical functions such as point-wise
mathematical expressions (e.g., arithmetic, transcendental,
boolean, type conversion, etc.), univariate statistics and image
processing (e.g., transformation, filter, warp, edge detection,
convolution, equalization, blending, morphological operations,
etc.). Field/vector operations such as divergence, gradient and
curl, dot and cross products, etc. are provided. Non-gridded or
scattered data may be interpolated to an arbitrary grid or
triangulated, depending on the analysis requirements. The length,
area or volume of various geometries may also be computed. Tools
for data manipulation such as removal of data points, subsetting
by position, sub/supersampling, grid construction, mapping,
interpolation, regridding, transposition, etc. are available.

Tools for doing cartographic projections and registration as well
as earth, space and environmental sciences examples are available
at Cornell University via info.tc.cornell.edu.

HIPHOP

HIPHOP, developed by Dominik Brunner, is a widget based IDL
application that largely facilitates the visualization and
analysis of 2D, 3D, and 4D atmospheric science data, in particular
atmospheric tracer distributions and meteorological fields.

Graphical output of (atmospheric model) data can be quickly
generated in a large number of different ways, including
horizontal maps at selected model or pressure levels, vertical
north-south, east-west, or slant cross-sections (including zonal
averages), time slices, animations, etc. It also allows
mathematical operations on the existing fields to generate new
fields for furher analysis, and it can be run as a batch
application.

The program handles data in netCDF, HDF and GRIB format.
Interfaces to other data formats (e.g. ASCII and binary data) can
be added easily.

Beginning with Version 4.0, it also supports the ability to
overlay meteorological fields on a number of different satellite
images, and to draw air parcel trajectories.

Hyperslab OPerator Suite (HOPS)

Hyperslab OPerator Suite (HOPS), developed by R. Saravanan at
NCAR, is a bilingual, multi-platform software package for
processing data in netCDF files conforming to the NCAR-CCM format
or the NCAR Ocean Model format. HOPS is implemented in IDL, the
widely-used commercial interpreted language, and also in Yorick, a
public-domain interpreted language that is freely available from
the Lawrence Livermore National Laboratory. The IDL version of
HOPS should run on any platform supported by IDL. The Yorick
version too runs on most common UNIX platforms, such as Sun, SGI,
Cray, and LINUX computers.

HOPS is not a monolithic program, but a suite of operators that
act on data units called "hyperslabs". The design of HOPS is
object-oriented, rather than procedure-oriented; the operators
treat the numeric data and the associated meta-data (like
coordinate information) as a single object.

Note that HOPS is not a general purpose netCDF utility and works
only for the NCAR CSM netCDF formats. For more information, check
the HOPS home page.

Ingrid

Ingrid, by M. Benno Blumenthal <benno@ldeo.columbia.edu>, is
designed to manipulate large datasets and model input/output.
Given the proper commands in its command file, it can read data
from its data catalog, a netCDF file, or a directly attached
model, and output the data, either by feeding it to a model,
creating a netCDF file, or creating plots and other
representations of the data.

Ingrid has a number of filters which allow simple data
manipulations, such as adding two datasets together, smoothing,
averaging, and regridding to a new coordinate.

Ingrid is still under development and the source code is not yet
available for public release. It currently runs only on SGI (it
uses the POINTER and STRUCTURE extensions to FORTRAN). In addition
to netCDF, it also reads HDF, CDF, VOGL, and SGI GL.

Ingrid is currently running as a WWW daemon that can be accessed
through http://rainbow.ldgo.columbia.edu/datacatalog.html to see
some of its capabilities on a climate data catalog maintained by
the Climate Group of the Lamont-Doherty Earth Observatory of
Columbia University. To quote the introduction:

     The Data Catalog is both a catalog and a library of
     datasets, i.e. it both helps you figure out which data
     you want, and helps you work with the data. The
     interface allows you to make plots, tables, and files
     from any dataset, its subsets, or processed versions
     thereof.

     This data server is designed to make data accessible to
     people using WWW clients (viewers) and to serve as a
     data resource for WWW documents. Since most documents
     cannot use raw data, the server is able to deliver the
     data in a variety of ways: as data files (netCDF and
     HDF), as tables (html), and in a variety of plots (line,
     contour, color, vector) and plot formats (PostScript and
     gif). Processing of the data, particularly averaging,
     can be requested as well.

     The Data Viewer in particular demonstrates the power of
     the Ingrid daemon.

IVE

IVE (Interactive Visualization Environment) is a software package
designed to interactively display and analyze gridded data. IVE
assumes the data to be displayed are contained in one- two-,
three- or four-dimensional arrays. By default, the numbers within
these arrays are assumed to represent grid point values of some
field variable (such as pressure) on a rectangular evenly spaced
grid. IVE is, nevertheless, capable of displaying data on
arbitrary curvilinear grids.

If the data points are not evenly spaced on a rectangular grid,
IVE must be informed of the grid structure, either by specifying
"attributes" in the data input or by specifying the coordinate
transform in a user supplied subroutine. Stretched rectangular
grids (which occur when the stretching along a given coordinate is
a function only of the value of that coordinate) can be
accommodated by specifying one-dimensional arrays containing the
grid-point locations along the stretched coordinate as part of the
IVE input data. Staggered meshes can also be accommodated by
setting "attributes" in the input data. The structure of more
complicated curvilinear grids must be communicated to IVE via user
supplied "transforms," which define the mapping between physical
space and the array indices.

Since four-dimensional data cannot be directly displayed on a flat
computer screen, it is necessary to reduced the dimensionality of
the data before it is displayed. One of IVE's primary capabilities
involves dimension reduction or "data slicing." IVE allows the
user to display lower-dimensional subsets of the data by fixing a
coordinate or by averaging over the coordinate.

IVE currently has the capability to display

   * scalar fields as
        o 2D scalar plots
        o 1D scalar plots
        o vertical soundings
        o a single point value
   * vector fields as 2D vector plots

IVE lets you overlay plots, loop plots, and control a wide variety
of display parameters.

IVE also can perform algebraic computations on the gridded data
and can calculate derivatives. More complicated computations can
be performed in user supplied subroutines.

IVE uses NetCDF for the data input format, and uses the NCAR
Graphics Library to produce graphical output (a license for NCAR
Graphics is required to run IVE and can be obtained from the
National Center for Atmospheric Research, NCAR). IVE is available
as source via anonymous ftp; and as binary on request for
licensees of NCAR graphics.

Java interface

A preliminary release of a Java netCDF implementation is available
for testing.

LinkWinds

LinkWinds version 2.3 applies a unique data-linking paradigm
resulting in a system which functions much like a graphical
spreadsheet. It is not only a powerful method for organizing large
amounts of data for analysis, but provides a highly intuitive,
easy-to-learn, easy-to-retain user interface on top of the
traditional graphical user interface. The linking of data displays
and controls for their manipulation provides great flexibility in
rapidly exploring large masses of complex data to quickly detect
trends, correlations and anomalies. The system is comprised of a
large and expanding suite of non-domain specific applications and
provides for the ingestion of a variety of database formats. Its
many functions and services include

   * 2-dimensional and 3-dimensional graphical displays of data.
   * The ability to deal with very large data files.
   * Interactive visual data subsetting either at the input or
     output
   * Supersetting to construct higher dimensionality data sets
     from sets of data files. This is useful for building time
     series from daily data accumulations.
   * Simultaneous display and analysis of multiple data sets which
     may be totally unrelated.
   * A unique and easy-to-use animation creation and display
     capability.
   * Interactive color manipulation.
   * A journal and macro capability allowing replay of an entire
     session or any portion thereof.
   * Hard copy of graphical displays and text.
   * A context-sensitive help system.
   * Network support for collaborative data analysis with partners
     anywhere on the internet, using virtually no bandwidth.
   * In addition to archived data sets, LinkWinds has demonstrated
     an ability to ingest and display real time data, which may be
     from spacecraft, laboratory experiments, or computer
     simulations.

The data file formats accepted by LinkWinds 2.3 are:

  1. Raw binary data in signed and unsigned 1, 2 and 4 byte
     integers and 4 and 8 byte floating point.
  2. The Hierarchical Data Format (HDF).
  3. The Common Data Format (CDF).
  4. NetCDF.
  5. The Silicon Graphics, Inc. native RGB image format.
  6. Data with Planetary Data System (PDS) headers.
  7. The astrophysics Flexible Image Transport System (FITS).
  8. ASCII text data.
  9. Two data formats of UARS, the Upper Atmosphere Research
     Satellite. Both the format maintained by the Goddard DAAC and
     the UNIX variant of the format of the Central Data Handling
     Facility (CDHF) are readable.
 10. The Stratospheric Aerosol and Gas Experiment (SAGE) data
     format.
 11. HDF-EOS including NASA Scatterometer data.

MEXCDF

Now obsolete interface that was developed for MATLAB-4. Use the
NetCDF Toolbox for MATLAB-5 instead.

MexEPS

PMEL has developed a MATLAB interface, MexEPS, which supports
several netCDF file conventions, including those adopted by PMEL.
Many styles of time axes are supported and time manipulation
routines ease the use of the time axis in MATLAB. The MexEPS
package supports the following data formats:

   * reading, writing and editing netCDF files;
   * reading and writing Classic EPIC files
   * reading formatted ASCII files

It includes:

   * VARIABLE, AXIS, ATTRIBUTE manipulation routines
   * TIME manipulation
        o TIME enters MATLAB as YYMMDDhhmmss.fff
        o Can be converted to netCDF udunits time convention (e.g.
          days since 1990-01-01 00:00:00)
   * MATLAB help and example scripts using MexEPS
   * ASCII2MAT mexFunction, which reads a formatted ASCII file
     into MATLAB as a matrix

The MexEPS package is freely available in PMEL's anonymous ftp
directory ftp://ftp.pmel.noaa.gov/eps/mexeps/

If you have any questions or comments, please contact the author,
Willa Zhu (willa@pmel.noaa.gov) or Nancy Soreide
(nns@pmel.noaa.gov).

ncBrowse

Donald Denbo of NOAA's Pacific Marine Environmental Laboratory has
developed and made available ncBrowse, a Java application (JDK1.2)
that provides flexible, interactive graphical displays of data and
attributes from a wide range of netCDF data file conventions.

Features

   * Designed to work with arbitrary netCDF files.
   * Browses file using the EPIC and COARDS conventions.
   * Provides a "tree" view of the netCDF file.
   * Handles character variables.
   * Handles dimensions without an associated variable.
   * Uses sgt graphics to perform 1 and 2 dimensional cuts through
     data.
   * Save to file single variable as a "cdl" text file.
   * InstallAnywhere scripts for UNIX, Win32, and MacOS.
   * Currently uses Java 2 and Swing.

Requirements

ncBrowse will run on any UNIX or Windows machine with a Java 2
(JDK1.2) virtual machine installed. Automated installation scripts
are available for Windows and UNIX. Additional information on
ncBrowse and download instructions are available at
http://www.epic.noaa.gov/java/ncBrowse.

Questions and suggestions should be directed to
<dwd@pmel.noaa.gov>. If you have problems reading a netCDF file
with ncBrowse, please send him a copy of the file and he'll get
ncBrowse to read it!

NCO

NCO (netCDF operators) is a package of command line operators that
work on generic netCDF or HDF4 files:

   * ncatted - attribute editor
   * ncdiff - differencer
   * ncea - ensemble averager
   * ncecat - ensemble concatenator
   * ncflint - file interpolator
   * ncks - kitchen sink (extract, cut, paste, print data)
   * ncra - running averager
   * ncrcat - record concatenator
   * ncrename - renamer
   * ncwa - weighted averager

All operators may now be DODS clients. DODS enables network
transparent data access to any DODS server. Thus DODS-enabled NCO
can operate on remote files accessible through any DODS server
without transferring the files. Only the required data (e.g., the
variable or hyperslab specified) are transferred.

The source code is freely available from the NCO home page, as is
the NCO User's Guide.

For more information, contact the author, Charlie Zender.

ncview

Ncview is a visual browser for netCDF files. Typically you would
use ncview to get a quick and easy, push-button look at your
netCDF files. You can view simple movies of the data, view along
various dimensions, take a look at the actual data values, change
color maps, invert the data, etc. It runs on UNIX platforms under
X11, R4 or higher. For more information, check out the README
file; you can also see a representative screen image (GIF, 66K) of
ncview in action.

The source may be downloaded from
ftp://cirrus.ucsd.edu/pub/ncview/. For more information, please
contact the author, David W. Pierce at dpierce@ucsd.edu.

NetCDF File Calculator and Data Editor

The netCDF calculator and data editor is part of the EPIC package,
described above.

Algebraic manipulations available under the netCDF calculator
include arithmetic operations (addition, subtraction,
multiplication and division), exponentiation, log functions,
square root, and some additional functions such as
differentiation, integration, regridding and removing the mean
value. In addition to the built-in functions, the calculator also
allows user written routines for manipulation of data. The netCDF
calculator also provides the ability to extract a subset of the
EPIC System Data sets by specifying limits in any or all of the
four dimensions (x,y,z,time) or (i,j,k,l).

The netCDF calculator includes an interactive data-editing
function for one dimensional data sets. This displays the data and
provides for replacement of individual points or a range of data
points by linear interpolation or by typing in a replacement
value. Data sets generated by the calculator data manipulation or
data editing functions can be plotted with the standard PPLUS
plotting commands and can also be written out as data files in any
of the EPIC System formats (including netCDF).

The netCDF calculator uses an expression language, much like C:
although there are several control-flow statements, most
statements such as assignments are expressions whose value is
disregarded. For example, the assignment operator "=" assigns the
value of its right operand to its left operand, and yields the
value, so multiple assignments work. The calculator knows about
four different data types: scalar (double precision floating
point), string, slab (a specification for a four dimensional
hyper-slab), and fields (a sub-sampled region of a four
dimensional data set). The syntax for each of the four types are
similar, however, not all operations are valid for all data types.

The netCDF calculator discussed here is a simple programmable
interpreter for floating point, string and field expressions. It
has been extensively modified from hoc (The UNIX Programming
Environment, Kernighan and Pike, Chapter 8). It has C-style
control flow, function definition and the usual numerical built-in
functions. The netCDF calculator has been developed using lex, a
lexical analyzer, and yacc, a parser generator. This allows a
systematic and consistent syntax to be implemented easily.

Netcdf to HDF converter

A NetCDF to HDF converter (Power Macintosh or Windows 95/NT) is
available free from Fortner Software. This utility converts netCDF
files to the HDF format so that datasets, their dimension scales
and any attributes can be viewed with Fortner's free HDF Browser.
Links to download the converter are available from the HDF Browser
page.

NetCDF Toolbox for MATLAB-5

The NetCDF Toolbox for MATLAB-5 combines netCDF-3 with MATLAB-5 to
form an interface that uses MATLAB operator-syntax for arithmetic,
logical, and subscripting operations on netCDF entities. This
toolbox greatly extends and supersedes the now obsolete MEXCDF
interface that was developed for MATLAB-4.

In the NetCDF Toolbox interface, dimensions, variables, and
attributes are represented by MATLAB objects that know how to do
arithmetic on subscripted arrays. These objects are referred to by
name rather than by ID, so the resulting MATLAB code is concise
and comprehensible. An example that creates a new netCDF file,
stores some data, and recalls the data illustrates use of the
NetCDF Toolbox. The NetCDF Toolbox greatly simplifies interactions
with netCDF files from within MATLAB, because the syntax is based
on operators and MATLAB indexing. The NetCDF Toolbox also includes
a NetCDF File Browser.

For more information, contact Dr. Charles R. Denham, U.S.
Geological Survey.

PolyPaint+

PolyPaint+ is an interactive scientific visualization tool that
displays complex structures within three-dimensional data fields.
It provides both color shaded-surface display and simple
volumetric rendering in either index or true color. For shaded
surface rendering, the PolyPaint+ routines first compute the
polygon set that describes a desired surface within the 3D data
volume. These polygons are then rendered as continuously shaded
surfaces. PolyPaint+ contains a wide variety of options that
control lighting, viewing, and shading. Objects rendered
volumetrically may be viewed along with shaded surfaces.
Additional data sets can be overlaid on shaded surfaces by color
coding the data according to a specified color ramp. 3D
visualizations can be viewed in stereo for added depth
perspective.

Currently supported 3D visualizations are the following:

   * Shaded isosurface
   * Transparent contour shells or isosurfaces at varying levels
   * Volumetric or density plot
   * Planes
   * Contour ribbons
   * Topographic surface from 2D geographic data sets

3D data volumes may be sliced in the X, Y, or Z plane using an
interactive cutting plane. A cross section of the data volume can
be viewed in a 2D window as a 2D contour plot, a vector plot, a
raster image or a combination of these options superimposed. Map
outlines can be used as a background for 2D cross section plots of
geographic data. All data is projected according to the
coordinates specified by the user for the cross section window.

The user interface provides direct manipulation tools for
specifying the eye position, center of view, light sources, and
color ramps. Subsetting of data can be done easily by selecting
the data by index or geographic coordinate. On-line contextual
help provides easy access to more detail about the software.
Tutorials which range from very simple visualizations to complex
combinations of data sets provide the user with a quick learning
tool.

Currently PolyPaint+ accepts only data which is in the NetCDF file
format. A file conversion utility which converts from raw binary
data to netCDf is a part of the application.

PolyPaint+ is a joint effort of the University of Colorado and
NCAR (National Center for Atmospheric Research) funded by the NASA
AISRP program. A beta version of PolyPaint+ is currently available
free of charge using FTP or for a nominal fee which would cover
tape distribution. A license agreement must be signed in order to
use it.

You may order by...

   * TELEPHONE : 303-492-7289 (Margi Klemp) : 303-497-8159 (Bill
     Boyd)
   * U.S. MAIL :

             Margi Klemp
             University of Colorado / LASP
             1234 Innovation Dr.
             Boulder, CO 80303
             USA

   * E-MAIL : margi@aries.colorado.edu

Python interfaces

Python is an interpreted, object-oriented language that is
supported on a wide range of hardware and operating systems.
Python information and sources can be obtained from
http://www.python.org/. There are now at least two netCDF
interfaces for Python.

The package from Konrad Hinsen has been integrated into his
ScientificPython package.

Bill Noon (noon@snow.cit.cornell.edu) has implemented another
netCDF Python module that allows easy creation, access, and
browsing of netCDF data. The bindings also use the udunits library
to do unit conversions. More information and source for Noon's
Python netCDF module are available from
http://snow.cit.cornell.edu/noon/ncmodule.html.

Tcl/Tk interface

Dan Schmitt has developed cdftcl, a Tcl/Tk interface for netCDF.
It allows the use of "wildcards" (*) or ranges (1-4) in the
subscript notation, and use of name references instead of variable
IDs. Contact dan@computer.org for more information.

SciAn

SciAn is a scientific visualization package developed at the
Supercomputer Computations Research Institute at Florida State
University. More information about SciAn is available from the URL
http://www.scri.fsu.edu/~lyons/scian/.

SciAn brings together the power of 3-dimensional scientific
visualization and movie making with the ease of use and
familiarity of object-oriented drawing packages. SciAn makes it
very easy to apply visualization to new data by minimizing the
number of decisions a researcher needs to make before seeing the
first image on the screen. Once there is an image to work with,
the researcher can modify the visualization to bring out details
in the data using a wide variety of controls.

SciAn can show any number of visualizations on the screen at one
time. The viewpoint of different visualizations can be linked,
enabling easy comparison of data from observation and simulation.
Complete movie scenes can be made by adding a few lines to a SciAn
generated script. SciAn can operate a laser videodisc recorder
automatically or save images to files for recording later.

SciAn produces isosurface, color mesh, line contour, trace, arrow,
ball & stick, point cloud, and numeric display visualizations. It
can work with fields defined over structured or nonstructured
grids and geometric data in several formats, including NCSA's
Hierarchical Data Format, NetCDF, and Protein Data Bank formats.

SciAn is available, with full documentation, in electronic form
over the network free of charge. For more information on SciAn,
send electronic mail to: scian-info@scri.fsu.edu or write
Supercomputer Computations Research Institute, Florida State
University, Tallahassee, Florida, 32306-4052.

SciAn requires:

   * a Silicon Graphics IRIS 4D series or IBM RISC System/6000
     workstation with GL graphics library
   * a Z-buffer
   * ANSI-compliant C

Desirable but not required are

   * an Alpha buffer
   * double buffering
   * FORTRAN and external libraries for more features

VisAD

VisAD is a Java class library for interactive and collaborative
visualization and analysis of numerical data. It combines:

   * The use of pure Java for platform independence and to support
     data sharing and real-time collaboration among geographically
     distributed users. Support for distributed computing is
     integrated at the lowest levels of the system using Java RMI
     distributed objects.
   * A general mathematical data model that can be adapted to
     virtually any numerical data, that supports data sharing
     among different users, different data sources and different
     scientific disciplines, and that provides transparent access
     to data independent of storage format and location (i.e.,
     memory, disk or remote). The data model has been adapted to
     netCDF, FITS, HDF-EOS, McIDAS, Vis5D, GIF and JPEG file
     formats.
   * A general display model that supports interactive 3-D, data
     fusion, multiple data views, direct manipulation,
     collaboration, and virtual reality. The display model has
     been adapted to Java3D and Java2D and used in an ImmersaDesk
     virtual reality display.
   * Data analysis and computation integrated with visualization
     to support computational steering and other complex
     interaction modes.
   * Support for two distinct communities: developers who create
     domain- specific systems based on VisAD, and users of those
     domain-specific systems. VisAD is designed to support a wide
     variety of user interfaces, ranging from simple data browser
     applets to complex applications that allow groups of
     scientists to collaboratively develop data analysis
     algorithms.
   * Developer extensibility in as many ways as possible.

VisAD was written by programmers at the SSEC Visualization Project
at the University of Wisconsin-Madison Space Science and
Engineering Center, and the Unidata Program Office.

WebWinds

WebWinds is a free Java-based science visualization and analysis
package. In addition to several new analysis tools, the current
fourth beta version does automatic scripting. This allows

  1. a user to rapidly and automatically create and store a
     session, either for his own use, or for use by a collaborator
     on another machine;
  2. a data provider to automatically create a specialized
     analysis environment which can be downloaded (as a small
     script file) along with a dataset from a Website; and
  3. realtime collaboration or sharing of sessions over (even
     low-bandwidth) networks, including the Internet.

This scripting requires no knowledge of the scripting language
syntax. Several sample script files are included with the
distribution.

In addition, this version contains a capability to geo-reference
some data and to read ASCII data in tabular format. Also new is
the ability to output data in numerical form (e.g. NetCDF) and a
context sensitive, integrated help system.

As with earlier versions, data in several different formats,
including NetCDF, can be read in easily from your local machine or
from the Web. In addition, most data can be subset or subsampled
on load, making it possible to visualize very large
multidimensional and/or multispectral datasets. The package
includes several step-by-step examples. Installation of the
software (including Java) on the PC or Mac is a process requiring
one file to be downloaded and opened. If you need help getting
started, a remote tutorial is available once you've downloaded the
package.

WebWinds is 'point and click' rather than language driven and it
runs well on Unix, Windows (95/98/NT) and Mac platforms. It
currently requires JDK 1.1. To download a copy of this release, go
to http://webwinds.jpl.nasa.gov.

Xmgr

Xmgr (also known as ACE/gr) is a 2D plotting tool for the X window
system. It uses a Motif-based interface, and runs on practically
any version of Unix. It can read a 1-dimensional variable from a
netCDF or HDF file and plot it against another 1-dimensional
variable from the same file. A few of the other features are:

   * User defined scaling, tick marks, labels, symbols, line
     styles, colors.
   * Batch mode for unattended plotting.
   * Read and write parameters used during a session.
   * Regressions, splines, running averages, DFT/FFT,
     cross/auto-correlation, ...
   * Support for dynamic module loading.
   * Hardcopy support for PostScript, HP-GL, FrameMaker and
     InterLeaf formats.

While ACE/gr has a convenient point-and-click interface, most
parameter settings and operations are available through a command
line interface. For more information, see the User Guide.

Zebra

Zebra (formerly named Zeb) is a system for data ingest, storage,
integration and display, designed to operate in both real time and
postprocessing modes. Zebra was developed by Jonathan Corbet and
others in NCAR's Research Data Program.

Zebra's primary use is for the superpositioning of observational
data sets (such as those collected by satellite, radar, mesonet
and aircraft) and analysis products (such as model results,
dual-Doppler synthesis or algorithm output). Data may be overlaid
on a variety of display types, including constant altitude planes,
vertical cross-sections, X-Y graphs, Skew-T plots and time-height
profiles. The fields for display, color tables, contour intervals
and various other display options are defined using an icon based
user-interface. This highly flexible system allows scientific
investigators to interactively superimpose and highlight diverse
data sets; thus aiding data interpretation.

Data handling capabilities permit external analysis programs to be
easily linked with display and data storage processes. The data
store accepts incoming data, stores it on disk, and makes it
available to processes which need it. An application library is
available for data handling. The library functions allow data
storage, retrieval and queries using a single applications
interface, regardless of the data's source and organization.
NetCDF data that conforms to Zebra conventions is supported by
this interface.

Zebra is currently available to the university research community
through the NCAR/ATD Research Data Program. Email requests to
rdp-support@atd.ucar.edu. More information is on the web page
http://www.atd.ucar.edu/rdp/zebra.html.

------------------------------------------------------------------

User-Contributed Software

Unidata makes available a separate catalog
(http://www.unidata.ucar.edu/packages/netcdf/contrib.html) to a
directory (ftp://ftp.unidata.ucar.edu/pub/netcdf/contrib/) of
freely available, user-contributed software and documentation
related to the netCDF library. This software may be retrieved by
anonymous FTP. We haven't necessarily used or tested this
software; we make it available "as is".

The criteria for inclusion in the netcdf/contrib/ directory of
user-contributed software are:

   * General usefulness to a significant part of the netCDF
     community
   * Small size
   * Infrequent need for updates
   * Free availability

------------------------------------------------------------------

AVS

AVS (Application Visualization System) is a visualization
application software and development environment. An AVS module
has been written that allows multi-dimensional netCDF data sets to
read into AVS as uniform or rectilinear field files. The AVS user
can point and click to specify the name of the variable in the
selected netCDF file, as well as selecting the hyperslab. If 1D
coordinate variables exist (a variable that has the same name as a
dimension) then the coordinate variable will be used to specify
the coordinates of resulting rectilinear field file. If no
coordinate variable exists, then the resulting field file will be
uniform. Once in AVS, there are hundreds of analysis and display
modules available for image processing, isosurface rendering,
arbitrary slicing, alpha blending, streamline and vorticity
calculation, particle advection, etc. AVS runs on many different
platforms (Stardent, DEC, Cray, Convex, E and S, SET, Sun, IBM,
SGI, HP, FPS and WaveTracer), and it has a flexible data model
capable of handling multidimensional data on non-Cartesian grids.

The module source code and documentation is available from the
International AVS Center, in the
ftp://testavs.ncsc.org/avs/AVS5/Module_Src/data_input/read_netcdf/
directory.

See also the information on DDI for another way to use netCDF data
with AVS.

Environmental WorkBench

SuperComputer Systems Engineering and Services Company (SSESCO)
has developed the Environmental WorkBench (EWB), an easy to use
visualization and analysis application targeted at environmental
data. The EWB currently has numerous users in the fields of
meteorological research, air quality work, and groundwater
remediation.

EWB system features include:

   * Random access file structure using the netCDF-based public
     domain MeRAF file system with support for gridded, discrete
     (non-grid-based observation), and particle types
   * Support for geo-referenced or Cartesian coordinate systems
   * Object oriented Graphical User Interface (GUI) that is very
     easy to use
   * Tools for converting model and observational data sets and
     data writers to netCDF
   * Interactive rotation/translation of scenes in 3D space
   * Time sequencing controls to step forward/backward, animate
     sequentially, or go to a chosen time step; including multiple
     asynchronous or non-uniform time steps
   * Interactive slicers to select cross sections through 3D data
     sets
   * Display operators available on the slices, including
        o Contour lines with selectable contour levels
        o Color shading by data value with variable transparency
          level
        o Arrow and streamline representation for vector
          quantities
        o Positional reference lines at user selected intervals
        o Color coded shapes at each grid node
   * Multiple 3D isosurfaces at selected parameters and values
     with variable transparency
   * Display of particle positions with coloring by type, height,
     and source
   * Display of discrete data using colored spheres and labels for
     scalar data and arrows for vectors (with arrowheads or
     meteorological style)
   * Multiple user definable color maps to which isosurface and
     colored field shading may be separately assigned
   * On screen annotation for generation of report ready figures
   * Image export in any of the common image formats (gif, tiff,
     encapsulated postscript, etc.)
   * Graceful handling of missing or bad data values by all the
     graphics rendering routines
   * Automatic data synchronization to allow automatic screen
     updating as new data arrives in real-time from a model or set
     of sensors
   * Two and three dimensional interpolation from scattered
     observations to a grid, using the Natural Neighbor Method.
     This robust volume based method yields results far superior
     to distance weighting schemes.

Systems currently supported include Win95, WinNT, OS/2, IBM
RS/6000, Silicon Graphics, HP and SUN workstations.

SSESCO has implemented a meta-file layer on top of the netCDF
library, called MeRAF. It handles multiple netCDF files as well as
automatic max-min calculations, time-varying gridded, particle,
and discrete data, logical groupings for discrete data, and an
overall simplified and flexible interface for storing scientific
data. MeRAF is being used by the DOE at the Hanford-Meteorological
Site for observational data and will be used for their
weather-modeling.

IDL Interface

IDL (Interactive Data Language) is a scientific computing
environment that combines mathematics, advanced data
visualization, scientific graphics, and a graphical user interface
toolkit to analyze and visualize scientific data. Designed for use
by scientists and scientific application developers, IDL's
array-oriented, fourth-generation programming language allows you
to prototype and develop complete applications. IDL now supports
data in netCDF format.

As an example, here is how to read data from a netCDF variable
named GP in a file named "data/aprin.nc" into an IDL variable
named gp using the IDL language:

   id = ncdf_open('data/april.nc')
    ncdf_varget,id, ncdf_varid( id, 'GP'), gp

Now you can visualize the data in the gp variable in a large
variety of ways and use it in other computations in IDL. You can
FTP a demo version of IDL, including the netCDF interface, by
following the instructions in pub/idl/README available via
anonymous FTP from gateway.rsinc.com or boulder.colorado.edu.

Other software packages that use or interoperate with IDL to
access netCDF data includes ARGOS, CIDS Tools, DDI, HIPHOP,
Hyperslab OPerator Suite (HOPS), and Noesys.

InterFormat

InterFormat is a medical image format conversion program with both
Motif and character interfaces. InterFormat can automatically
identify and convert most popular medical image formats and write
output files in many standard medical image formats, or in formats
such as netCDF that are suitable for input to leading scientific
visualization packages. InterFormat runs on UNIX workstations; a
version for OpenVMS is also available. A separate external module
for IBM Data Explorer is available for use in IBM Data Explorer's
Visual Program Editor.

For more details about the formats handled, program features, and
pricing, see the Radio-Logic web site at
<http://www.radio-logic.com>.

IRIS Explorer Module

The Atmospheric and Oceanic Sciences Group at the National Center
for Supercomputing Applications (NCSA) and the Mesoscale Dynamics
and Precipitation Branch at NASA-Goddard Space Flight Center have
developed the NCSA PATHFINDER module set for IRIS Explorer. Two of
the modules, ReadDFG (to output Grids), and ReadDF (to output
Lattices) are capable of reading from NCSA HDF files, MFHDF/3.3
files, and Unidata netCDF files. A user-friendly interface
provides control and information about the contents of the files.

For ReadDF, the format translation is handled transparently. Up to
five unique lattices may be generated from the file (as these
files can contain multiple data fields) using a single module. A
variety of dimensionalities and data types are supported also.
Multiple variables may be combined in a single lattice to generate
vector data. All three Explorer coordinate systems are supported.

With ReadDFG, user selected variables from the file are output in
up to five PATHFINDER grids. Each grid can consist of scalar data
from one variable or vector data from multiple variables.
Coordinate information from the file is also included in the
grids. Any number of dimensions in any of the Explorer coordinate
types are supported.

For more information on the NCSA PATHFINDER project and other
available modules, visit the WWW/Mosaic PATHFINDER Home Page at
http://redrock.ncsa.uiuc.edu/PATHFINDER/pathrel2/top/top.html The
ReadDF module may be downloaded either via the WWW server or
anonymous ftp at redrock.ncsa.uiuc.edu in the /pub/PATHFINDER
directory. For more information please send email to:
pathfinder@redrock.ncsa.uiuc.edu

See also the information on DDI for another way to use netCDF data
with IRIS Explorer.

MATLAB

MATLAB is an integrated technical computing environment that
combines numeric computation, advanced graphics and visualization,
and a high-level programming language.

Several freely-available software packages that implement a
MATLAB/netCDF interface are available: NetCDF Toolbox for
MATLAB-5, MexEPS, the CSIRO MATLAB/netCDF interface and fanmat.

NCAR Graphics

The Scientific Visualization Group of the NCAR Scientific
Computing Division has developed the NCAR Command Language (NCL)
for interactive data manipulation and plot specification. This
language supports a project to create, from existing utilities, a
scientific visualization environment that provides a means of
reading and writing data, a means of manipulating that data, and a
means of visually analyzing the data interactively.

NCL is intended to provide easy and intuitive access to datasets
and allow users to explore and process their data prior to
visualization. Since datasets often come in a variety of data
formats, grid sizes, grid resolutions, and units, very different
datasets often need to be combined, compared, and used at the same
time. Currently, specialized applications must be developed to
read individual datasets and transform them into a form that is
compatible with other datasets being used, as well as with the
graphics package being used.

NCL allows different datasets, in different storage formats, to be
imported into one uniform and consistent data manipulation
environment. The primary data format used internally by NCL is the
netCDF data format. NCL doesn't place any restrictions or
conventions on the organization of input netCDF files.

NCL is a complete programming language that provides flexibility
and configurability. In NCL the primary data type is the data file
record. A data file record stores one or more variables, dimension
information, coordinate variable information and attribute
information as one NCL object. A binary file can be read in,
dimension names, variable names, attributes and coordinate
variables can be assigned to it using NCL language constructs and
the resulting file record can be written to any of the currently
supported formats, including netCDF, without writing a single line
of source code.

The NCL language also provides the ability to specify
configuration parameters for visualizations of data. These
descriptions can be stored and used as user defaults and reused as
plot specifications.

The function set of NCL contains built-in data processing and
mathematical functions and can be extended by the user to provide
custom data processing techniques, as well as custom data
ingestion.

Contact Ethan Alpert, the NCAR Interactive project coordinator, at
ethan@ncar.ucar.edu for more information.

Noesys

Noesys, developed by Fortner Software, is an environment for
desktop science data access and visualization. Available for both
Windows and Power Macintosh platforms, Noesys allows users to
access, process, organize and visualize large amounts of technical
data.

Noesys can be used to:

   * Access and organize complex technical data
   * Export data objects to text and binary
   * View and edit large multidimensional data sets (up to 7D) in
     a spreadsheet-like environment
   * Manipulate and process data using IDLŽ, the Interactive Data
     Language, from Research Systems, Inc.
   * Interactively visualize column, matrix, and volumetric data
     sets
   * Image global datasets as various map projections
   * Create various projections from partial data or partial
     projections from global data (Windows only)
   * View and Edit HDF-EOS grid object data
   * Subset datasets and data tables with a GUI dialog
   * Change and save the number format of datasets and data table
     fields
   * Drag and Drop HDF objects between files to organize or subset
     files
   * Attach text annotations directly to the data file
   * Add new data objects to files and create hierarchical groups
   * Edit or create new color palettes
   * Generate publication-quality graphics for data presentation

Noesys 2.0 has an interface to IDLŽ, allowing data to move back
and forth between Noesys and IDL with the click of a mouse. Noesys
includes the visual data analysis tools, Transform, T3D and Plot,
for menu driven plotting, rendering, and image analysis. Noesys
can import HDF, HDF-EOS, netCDF, ASCII, Binary, DTED, GeoTIFF,
SDTS, TIFF, PICT, and BMP files, create annotations, macros,
images, projections and color palettes specific to the data and
save it the result as an HDF file. Noesys also includes an HDF-EOS
Grid Editor. Noesys runs on Windows 95/98 & NT and Power Macintosh
OS. More details and information about ordering Noesys are
available from <http://www.fortner.com/>.

PPLUS

Plot-Plus (PPLUS) is a general purpose scientific graphics
package, which is used in several PMEL applications. It will read
most standard ascii or binary files, as well as netCDF file
format, which used by the TOGA-TAO Project and the EPIC system for
management display and analysis. PPLUS is an interactive, command
driven, scientific graphics package which includes features such
as Mercator projection, Polar Stereographic projection, color or
gray scale area-fill contour plotting, and support for many
devices: X-windows, PostScript, HP, Tektronix, and others. This
powerful and flexible package recognizes netCDF data format, and
it can extract axis lables and graph titles from the data files.
The user can customize a plots, or combine several plots into a
composite. Plots are of publication quality. The PPLUS graphics
package is used for all the TAO workstation displays, including
the animations. The animations are created by generating a PPLUS
plot for each frame, transforming the PPLUS metacode files into
hdf format with the PPLUS m2hdf filter, and then displaying the
resulting bit maps as an animation with the XDataSlice utility,
which is freely available on Internet from the National Center for
Supercomputing Applications, at anonymous@ftp.ncsa.uiuc.edu
(141.142.20.50). There is also a new m2gif utility which produces
GIF files from PPLUS metacode files.

PPLUS is supported for most Unix systems and for VAX/VMS, and is
in use at many oceanographic institutes in the US (e.g., (PMEL,
Harvard, WHOI, Scripps, NCAR, NASA, University of Rhode Island,
University of Oregon, Texas A&M...) and also internationally
(Japan, Germany, Australia, Korea...). Examples of PPLUS graphics
are any of the graphs in the Web pages at:

   * http://www.pmel.noaa.gov/epic/home.html
   * http://www.pmel.noaa.gov/toga-tao/home.html
   * http://www.pmel.noaa.gov/toga-tao/realtime.html

Plot Plus is now available at no charge. It does require licensing
on a per computer basis, but the license is at no cost. For more
information about licensing, see http://www.halcyon.com/www2/dwd/;
source and documentation are available via anonymous FTP from
ftp://ftp.halcyon.com/pub/users/dwd/pplus1_2g.tar.gz and
ftp://ftp.halcyon.com/pub/users/dwd/ppldoc.tar.gz.

    Email:      plot_plus@halcyon.com
    Postal mail:    c/o Donald Denbo
            2138 N 186th St
            Shoreline, WA 98133
    Fax and Voice:  (206) 366-0624

PV-Wave

PV-Wave is a software environment from Visual Numerics for solving
problems requiring the application of graphics, mathematics,
numerics and statistics to data and equations.

PV-WAVE uses a fourth generation language (4GL) that analyzes and
displays data as you enter commands. PV-WAVE includes integrated
graphics, numerics, data I/O, and data management. The latest
version of PV-Wave supports data access in numerous formats,
including netCDF.

See also the information on DDI for another way to use netCDF data
with PV-Wave.

Slicer Dicer

Slicer Dicer is a volumetric data visualization tool from
Visualogic, currently available for Windows (95 and NT) and under
development for other platforms. The Slicer Dicer Web site
includes a complete list of features, an on-line user's guide, and
examples of Slicer Dicer output. Visualizations features include:

   * Perspective view of data rendered on interactively selected
     orthogonal slices, oblique slices, blocks (arbitrary
     rectilinear sub-volumes), cutouts, isosurfaces, and projected
     volumes (projected maximum, minimum, maximum absolute, or
     minimum absolute).
   * Optional annotations: caption, axes ticks and labels (default
     "pretty" ticks, or override to place ticks where you want
     them), color legend, data-cube outline.
   * Animation modes: slices, space, time (any parametric
     dimension), transparency, oblique slice orientation,
     rotation. Built-in animation viewer supports speed and image
     size controls, single-step, forward, backward, loop, and
     back-and-forth modes.
   * Select color scale from 25+ built in color tables, or import
     from palette file. Any data level or range of levels can be
     painted with an arbitrary color.
   * Any data level or range of levels can be rendered as either
     opaque or transparent.

VISAGE and Decimate

VISAGE (VISualization, Animation, and Graphics Environment) is a
turnkey 3D visualization system developed at General Electric
Corporate Research and Development, (Schroeder, WJ et al, "VISAGE:
An Object-Oriented Scientific Visualization System", Proceedings
of Visualization `92 Conference). VISAGE is designed to interface
with a wide variety of data, and uses netCDF as the preferred
format.

VISAGE is used at GE Corporate R & D, GE Aircraft Engine, GE
Canada, GE Power Generation, as well as ETH Zurich, Switzerland,
MQS In Chieti, Italy, and Rensselaer Polytechnic Institute in
Troy, New York.

GE has another application called "Decimate" that does polygon
reduction/decimation (Schroeder,WJ et al, "Decimation of Triangle
Meshes", Proceedings of SIGGRAPH `92). This application uses
netCDF as a preferred format. Decimate is currently licensed to
Cyberware, Inc., makers of 3D laser digitizing hardware. Decimate
is currently bundled with the scanners, and will soon be available
as a commercial product.

WXP

WXP is a software package developed at Purdue University in the
Department of Earth and Atmospheric Sciences. It is intended to be
an general purpose weather visualization tool for current and
archived meteorological data. The products available with this
server are derived from data obtained from the National Weather
Service and the University of Wisconsin. WXP decodes broadcast
weather data and model outputs into WXP-specific netCDF files, and
provides analysis and display application programs for
manipulating and displaying the data in those files. Universities
must be licensed by Unidata and Purdue to obtain the WXP software.
For information on obtaining a WXP license, contact
support@unidata.ucar.edu.

------------------------------------------------------------------