Freely Available Software
- Bathymetric Attributed Grid data format
- The Open Navigation Surface Working Group has collaborated on the Bathymetric Attributed Grid data format, which relies on HDF5 for the underlying file structure. We also provide an API for interacting with this data, driven by the needs of the community. In the tradition of open source, the code base is openly available.
- Bear is a tool for computing Bers slices and holonomy representations of complex projective structures on punctured tori. It uses HDF5 as its primary output file format.
- The Basic ENVISAT Atmospheric Toolbox (BEAT) is an open source toolbox
that includes data access to a wide range of atmospheric data products,
including HDF4 and HDF5. The BEAT project, funded by the European Space
Agency, aims to provide scientists with tools for ingesting, processing,
and analyzing atmospheric remote sensing data.
- Cactus is an open source problem solving environment designed for scientists
It uses HDF5 as one of its underlying I/O libraries and data formats to read/write simulation data and to implement user level-based checkpointing and recovery.
- The Chombo package provides a set of tools for implementing finite
difference methods for the solution
of partial differential equations on block-structured adaptively refined
rectangular grids. Both elliptic
and time-dependent modules are included. Uses HDF5 to support parallel
platforms and standardized
self-describing file formats.
Chombo provides a distributed infrastructure for parallel calculations over block-structured, adaptively refined grids. Chombo's design is uniquely flexible and accessible. Any collaborator will be able to develop parallel applications to solve the partial differential equations in which she is interested with far shorter development times than would be possible without the infrastructure. Very careful design and documentation allows said collaborator to enter the software at many levels. She will be able to use Chombo to investigate deep technical issues of adaptive mesh refinement algorithms or to simply adapt the example applications to solve different scientific problems.
- Contributed Software
- This is software contributed by HDF users, which is available from The HDF Group ftp server.
- The dxhdf5 package consists of software for importing HDF5 data into OpenDX.
The CFD General Notation System (CGNS) provides a general, portable, and extensible standard for the storage and retrieval of computational fluid dynamics (CFD) analysis data. It consists of a collection of conventions, and free and open software implementing those conventions. HDF5 has been chosen as the default data storage mechanism for the CGNS software.
- The ASCI/Alliances Center for Astrophysical Thermonuclear Flashes at the University of Chicago has developed a tool called FLASH to aid in the study of thermonuclear flashes on the surfaces of compact stars. The FLASH code is a modular, adaptive, parallel simulation code capable of handling general compressible flow problems in astrophysical environments. It uses parallel HDF5.
- GNU Octave
- This is a MATLAB-like program, which
supports reading and writing HDF5 files as a native file format. You can
save/restore all of your variables and data structures in an Octave session
to/from an HDF5 file. Complicated HDF5 files (with nested groups of varying
data types) are supported via Octave "structure" types.
- GriKSL (April 2002-March 2004)
- The German GriKSL project developed Grid-based simulation and visualization
techniques for the Cactus framework (http://www.cactuscode.org).
Two virtual file drivers were added to the HDF5 library to provide transparent access to (a) live simulation data streamed via TCP socket connections, and (b) to file-based data located on remote GridFTP servers.
Visualization programs such as the OpenDX toolkit could make use of these drivers in order to provide remote online/offline visualizations of Cactus data.
- The H5hut library is an implementation of several data models for particle-based simulations that encapsulates the complexity of parallel HDF5 and is simple to use, yet does not compromise performance.
- The HDF-EOS software used by NASA on the
Earth Science Enterprise
project, expands the capabilities of HDF, adding datatypes that
are specifically designed for the storage of geophysical data. These
datatypes are called swath, grid, and point.
- HDF5 Mesh API prototype
- An organizational structure and API for HDF5 to support the data and attributes used commonly by computational fluid dynamics (CFD), finite element analysis (FEA) and fluid-structure interaction (FSI). Includes a utility to convert EnSight data into HDF5.
- HL-HDF (C and Python)
- HL-HDF is a high level interface to HDF5. It is designed to focus on
selected HDF5 functionality and make it available to users at a high level
of abstraction to facilitate management of virtually any scientific
data. It includes a
Python programming language interface,
called PyHL. HL-HDF was developed at the
Swedish Meteorological and
Hydrological Institute (SMHI).
- The h5py package provides both a high- and low-level interface to the HDF5 library from Python. The low-level interface is intended to be a complete wrapping of the HDF5 API, while the high-level component supports Python-style object-oriented access to HDF5 files, datasets and groups. It is available on
Linux, Mac OS-X and Windows.
- This package contains the following utilities for HDF5 visualization:
- A program to convert single-dataset HDF(4) files into HDF5 files.
- A program to convert simple text input into
multi-dimensional numeric HDF5 datasets.
- A plug-in for GNU Octave (a
free Matlab-like program) allowing Octave to import slices from HDF5 files.
- A utility for
extracting 2d slices from HDF5 datasets and exporting them
as images in PNG format.
- A program for extracting 2D slices
of HDF5 datasets and exporting them as comma-delimited text for import
into spreadsheets, etc.
- A program to convert multidimensional HDF5 datasets to v5d
format for visualization in Vis5d, a free volumetric visualization tool
for 3d, 4d, and even 5d data.
- A program to convert HDF5 datasets into VTK format
for use in the Visualization ToolKit (VTK) and supporting software.
- The HDF5 Web Service (H5WS) is an API for working with remote data. It
partially mirrors the high level HDF5 Lite API, but allows users to query
and work with remote data. It is implemented using the client-server
infrastructure provided by Globus, gridFTP and HDF5.
- The HDF Group HDF5 Tools
- The HDF5 utilities that are available for analyzing and converting HDF5 files.
- The HDF Group HDF Java Products
- The HDF Java Products are a revised and reorganized version of the earlier Java HDF Products. They include: a) the Java HDF Interface for HDF4, b) the Java HDF5 Interface for HDF5, c) a NEW hdf-object package, which is a pure Java implementation of an abstract model of data and can read either HDF4 or HDF5 files, and d) HDFView, a Java-based tool for browsing and editing HDF4 and HDF5 files.
- Integrative Genomics Viewer (IGV)
- The Integrative Genomics Viewer (IGV) is a high-performance visualization tool for interactive exploration of large, integrated datasets. It supports a wide variety of data types including sequence alignments, microarrays, and genomic annotations.
- LIBGPIV is a software library for the (Digital) Particle Image Velocimetry technique (PIV). It contains core functions for image evaluation, validation of PIV data, post-processing, input/output functions, and utility functions. Data in LIBGPIV can be read from and stored in an HDF5 file.
- H5labview provides an interface between National Instruments LabVIEW and the HDF5 library. It provides a simple, high-level interface to common HDF5 tasks, which making available the full power of HDF5 at the low level.
- The Open Source Software Image Map (OSSIM) library is used in image processing for geospatial solutions. (3/05)
- PARAMESH is a package of Fortran 90 subroutines designed to provide an application developer with an easy route to extend an existing serial code which uses a logically cartesian structured mesh into a parallel code with adaptive mesh refinement(AMR).
- ParaView is an application designed with the need to visualize large data sets in mind. It runs on distributed and shared memory in parallel as well as on single processor systems and has been successfully tested on Windows, Linux and various Unix workstations and clusters. Under the hood, ParaView uses the Visualization Toolkit as the data processing and rendering engine and has a user interface written using a unique blend of Tcl/Tk and C .
- Pomegranate is an open source python application that implements w10n-sci API. It can be installed to provide web services for remote access of science data files, or used as a standalone library/command line tool. Supported formats include NetCDF, HDF4, HDF5, GRIB and FITS.
- PyTables is a Python package that enables the end user to easily organize and manipulate scientific data tables as well as Numeric and numarray data objects that reside on disk. PyTables is intended to be easy-to-use, and tries to be a high-performance interface to HDF5.
- Q5Cost is a library and interface built on top of HDF5, that provides a common data format for Quantum Chemistry applications. It allows tree structures of the data, is portable between different platforms and operating systems, and makes code interoperability and communications much easier.
- RAMS, the Regional Atmospheric Modeling System, is a limited area model for simulating and forecasting meteorological phenomena, and for depicting results. As of RAMS version 6.0, all intermediate and output files are written in HDF5.
- R is a system for statistical computation and graphics. It consists of
a language plus a run-time environment with graphics, a debugger, access to
certain system functions, and the ability to run programs stored in script
files. As of version R0.99, hdf5 support is available as a separate package,
which, like other R addons, is a library that is loadable at runtime.
R runs on many Unix platforms, Windows NT/95, and the Power Macintosh.
- SLh5 is an open-source HDF5 module for S-Lang
The S-Lang interpreter provides a scripting environment well-suited for
scientific and engineering tasks, due to the powerful vectorized numerical
capabilities that are native to the language.
SLh5 provides a fast, high-level interface which makes it very easy to create multidimensional S-Lang objects from HDF5 files, or vice versa. The SLh5 interface is also unique in that it is vectorized for S-Lang, allowing multiple HDF5 files to be opened or created, or multiple datasets or attributes to be read, in a single call.
SLh5 may be imported at runtime into any suitable application which embeds the S-Lang interpreter, such as the ISIS astrophysical modeling and analysis system.
- Swarm is a simulator that provides fine-grained, composable
scheduling. It is eventually intended to work in both distributed and
multithreaded shared-memory configurations. HDF5 is the primary object
serialization backend in Swarm. Object storage in HDF5 is expected to be
a natural substrate for parallel, high performance random read/write access
to objects in Swarm models.
Swarm has another backend that reads and writes objects in Scheme, so Swarm can be used to convert HDF5 files to and from Scheme.
- SWX: Space Weather Explorer
- The SWX: Space Weather Explorer from CCMC/NASA/GSFC is a program
written to visualize in 3D output from space weather models. (EOS User, 03/02)
- See h5tov5d above.
- VisAD is a Java toolkit for constructing interactive and collaborative visualization and analysis of numerical data. VisAD is a product of the University of Wisconsin-Madison and collaborators.
- VisIt is a free interactive parallel visualization and graphical analysis tool for viewing scientific data on Unix/Linux, Mac and Windows platforms. It is used to visualize scalar and vector fields defined on a wide variety of two- and three-dimensional (2D and 3D) meshes. VisIt reads a wide variety of HDF5 formatted scientific data files including Chombo, SAMRAI, Flash and XDMF.
- ViTables is a graphical tool for browsing and editing files in both PyTables and HDF5 formats. It is written on top of PyTables, and, as with the entire PyTables family, its main strength is its ability to easily manage very large datasets. Also, it was designed to be a multi-platform application, running on Unix, Windows, and MacOS X.
- Zori is an open-source program for the calculation of properties of atoms and molecules using the quantum Monte Carlo method. It outputs its checkpoint files and output files in HDF5 format, and interfaces with visualization programs that support HDF5.
- Array Visualizer
- The Intel® Array Visualizer is a software package included with Intel Fortran for Windows that can be used to read, write, and display HDF4 and HDF5 data. Array Visualizer can be used with C, Fortran, .Net, or script languages . The product also includes Array Viewer®, a Windows application that can be used to browse and edit HDF4 and HDF5 files.
- Data Visualizer for O-Matrix
- The Data Visualizer for
O-Matrixprovides an O-Matrixcommand-line interface for manipulating, and rendering plots and data in the Intel® Array Visualizer.
- EnSight - Extreme Visualization Software
- CEI offers a suite of tools for engineering and scientific simulation, including meshing, plotting, animation and data visualization. The company's software can be run on every type of computer, from laptops to clusters to supercomputers. It interfaces seamlessly to all popular CAE software and most scientific research codes, and can drive the most advanced VR displays. CEI has corporate headquarters in Apex, N.C., and authorized distributors around the world.
- HDF Explorer
- HDF Explorer is a data visualization program designed to read HDF and HDF5 files. Its main features are: reads all HDF data types, supports image generation from both scalar and vector data, easy browsing through 3D datasets, data exporting facilities, and an easy-to-use yet powerful interface. HDF Explorer is available for Windows NT/95.
- IDL-HDF5 Interface
- IDL now supports tools for querying and reading HDF5 files. The HDF5
module is included as part of the standard IDL application. The IDL
application consists of a dynamically loadable module that provides a
set of IDL software routines to directly access The HDF Group HDF5 C library.
- Igor Pro
Igor Pro is a scientific graphing and data analysis program that runs on Macintosh and Windows. It supports 1D, 2D and 3D graphics and data analysis. Its HDF5 support includes an HDF5 browser, reading and writing datasets, attributes and groups, and reading and writing HDF5 images formatted according to the HDF5 Image and Palette Specification.
- Acqiris offers a portable data acquisition system, the MAQbox, that offers oscilliscope capabilities in a small package. The MAQbox software also includes an Autostore mode that allows streaming of a series of acquisitions to disk for storage in the HDF5 format.
- MATLAB from The MathWorks, Inc. supports the HDF5 format
It is a high-level programming language for technical computing that combines
numeric computation, advanced graphics and visualization.
See: Summary of MATLAB HDF5 Capabilities
- Mathematica 5.1 from Wolfram Research supports HDF5. Mathematica provides a comprehensive environment for technical computing tasks, ranging from simple computations, to visualizing or modeling data. Also see the user-contributed HDF5 Mathematica Wrappers and Examples. The examples correspond to the C examples in the HDF5 Introductory Tutorial.
- NI-HWS is a library that exposes a limited subset of the HDF5 functionality to store and retrieve waveforms and some predefined attributes of those waveforms. It was written to provide easy access to the waveforms created by the National Instruments Analog and Digital waveform editors. NI-HWS is distributed with the National Instrument analog and digital waveform editors and the NI-SCOPE, NI-FGEN, and NI-HSDIO instrument drivers. Questions regarding these product should be directed to the support group at National Instruments. For more information, visit http://www.ni.com/.
- O-Matrix is an interpreted matrix language for data analysis and visualization. The newest release now includes functions for reading and writing HDF5 data files. See the overview of O-Matrix for further details.
- PV-WAVE is a proprietary data visualization and analysis language and environment, with which users write and compile their own applications in the PV-WAVE language. Support for HDF5 in PV-WAVE includes full read and write capabilities, with support for everything but opaque datatypes and iterators. (It includes full support for variable length types.)
- SYSTEMA / THERMICA
- SYSTEMA V4 is a framework designed for space analysis tools. It includes
a powerful 3D modeler, a trajectory, a kinematics and a mission module.
Analysis tools can then be plugged to this framework, get all the
data generated as inputs and return the results in HDF5 files. SYSTEMA
can then display all the results with the animation of the spacecraft
and can also export videos of the results.
THERMICA is the major tool plugged into SYSTEMA. It deals with thermal simulation for space systems i.e. radiation, conduction, external fluxes (solar, planet IR, planet Albedo), internal dissipations, thermal controls, temperature computation (steady-state and transient analysis). For more information, visit http://www.systema.astrium.eads.net.
- Tecplot, from Amtec Engineering Inc., is a fast, interactive visualization program that allows users to view their data in a wide variety of ways: wire-mesh plots, contour lines and flooding, vector fields, light-source shared plots, and many types of XY plots. It supports reading of HDF5 files Tecplot runs on most UNIX platforms and on IBM PCs running most versions of MicroSoft Windows (and soon on VMS).
- THESEUS-FE is a professional software tool for steady-state and
fully transient thermal management applications. It is designed for
use in the automotive, transportation and aerospace industries, but is
applicable to other markets, as well. It is based on an implicit
Finite-Element solver methodology, which handles all kinds of