VisIt


VisIt is an open-source interactive parallel visualization and graphical analysis tool for viewing scientific data. It can be used to visualize scalar and vector fields defined on 2D and 3D structured and unstructured meshes. VisIt was designed to handle very large data set sizes in the terascale range and yet can also handle small data sets in the kilobyte range.

History

VisIt was developed by the Department of Energy Advanced Simulation and Computing Initiative to visualize and analyze the results of terascale simulations. It was developed as a framework for adding custom capabilities and rapidly deploying new visualization technologies. After an initial prototype effort, work on VisIt began in the summer of 2000, and the initial version of VisIt was released in the fall of 2002. Although the primary driving force behind the development of VisIt was for visualizing extremely large data, it is also well suited for visualizing data from typical simulations on desktop systems. Because of its applicability beyond visualizing terascale data, VisIt is made freely available. In 2005 it won an R&D 100 Award.
VisIt is now supported by the DOE's SciDAC program to assist with analysis and visualization of the large datasets generated by open scientific computing. As such, it is now developed in part by many organizations, including Oak Ridge National Laboratory, Lawrence Berkeley National Laboratory, and the University of California, Davis, among others. Since VisIt is open source and released under the BSD license, many others have made contributions as well.

Summary

VisIt is an open source, turnkey application for large scale simulated and
experimental data sets. Its charter goes beyond pretty pictures; the
application is an infrastructure for parallelized, general post-processing of
extremely massive data sets. Target use cases include data exploration,
comparative analysis, visual debugging, quantitative analysis, and
presentation graphics.
The VisIt product delivers the efforts of many software developers in a single
package. First, VisIt leverages several third party libraries: the Qt widget
library for its user interface, the Python programming language for a command
line interpreter, and the Visualization ToolKit library for its data
model and many of its visualization algorithms. On top of that, an
additional fifty man-years worth of effort have been devoted to the
development of VisIt itself. The VisIt-specific effort has largely been
focused on parallelization for large data sets, user interface, implementing
custom data analysis routines, addressing non-standard data models, and creating a
robust overall product. VisIt consists over one and a half million lines of
code, and its third party libraries have an additional million lines of code.
It has been ported to Windows, Mac, and many Unix variants, including AIX,
IRIX, Solaris, Tru64, and Linux, including ports for SGI's Altix,
Cray's XT4, and many commodity clusters.
The basic design is a client–server model, where the server is parallelized.
The client–server aspect allows for effective visualization in a remote
setting, while the parallelization of the server allows for the largest data
sets to be processed reasonably interactively. The tool has been used to
visualize many large data sets, including a twenty seven billion data point
structured grid, a one billion point particle simulation, and
curvilinear, unstructured, and AMR meshes with hundreds of millions to billions of
elements. The most common form of the server is as a stand-alone process
that reads in data from files. However, an alternate form exists where a
simulation code can link in "lib-VisIt" and become itself the server,
allowing for in situ visualization and analysis.
VisIt follows a data flow network paradigm where interoperable modules are
connected to perform custom analysis. The modules come from VisIt's five
primary user interface abstractions and there are many examples of each.
There are twenty one "plots", forty-two
"operators", eighty-five file format readers, over
fifty "queries", and over one
hundred "expressions". Further, a
plugin capability allows for dynamic incorporation of new plot, operator, and
database modules. These plugins can be partially code generated, even
including automatic generation of Qt and Python user interfaces.
The VisIt project originated at Lawrence Livermore National Laboratory as part
of the Advanced Simulation and Computing program of the Department of Energy's National Nuclear Security Agency, but it has gone on to become
a distributed project being developed by several groups. Major hubs for the
project come from:
The project has twenty developers from many organizations and universities, including five DOE Laboratories.
VisIt received an R&D 100 Award in 2005 and is downloaded approximately twenty five thousand times per year.

Features