OpenDX at NERSC
Table of Contents
- Description
- OPENDX is an interactive command driven package that runs
on systems running the X window system.
The current default version of OPENDX is 4.1.3
- Features
-
OPENDX has a rich set of functionality. A complete list of the
functionality, Image Gallery, technical tips, etc., can be found at
OPENDX's web site.
- Accessing OPENDX
- OPENDX is available on several NERSC platforms
via the modules facility.
- Documentation
-
Links to online local documentation (html format).
- Additional Resources
-
Not available.
Sample Screen Shots
Why is OpenDX Unsupported at NERSC?
We have attempted to install OpenDX on seaborg, but were unsuccessful.
Attempts to get help from one of the OpenDX developers - an IBM employee -
to debug the OpenDX installation on seaborg were not fruitful. We will
likely remove OpenDX from all NERSC platforms in the not-too-distant
future. If you need to use OpenDX, you should download it and install
it on your workstation. NERSC does not provide support for the installation
or use of OpenDX.
Description
-
Open Visualization Data Explorer is a visualization framework that
gives users the ability to apply advanced visualization and analysis
techniques to their data. These techniques can be applied to help
users gain new insights into data from applications in a wide variety
of fields including science, engineering, medicine and business. Data
Explorer provides a full set of tools for manipulating, transforming,
processing, realizing, rendering and animating data and allow for
visualization and analysis methods based on points, lines, areas,
volumes, images or geometric primitives in any combination. Data
Explorer is discipline-independent and easily adapts to new
applications and data. The integrated object-oriented graphical user
interface is intuitive to learn and easy to use.
- OPENDX is an Open Source no longer a licensed product and is available
on SEABORG and the NERSC Visualization Server (escher.nersc.gov).
Features
- Open Visualization Data Explorer (DX) is a portable,
general-purpose software package for data analysis and
visualization. It is a flexible and interactive system, offering a
large variety of processing, realization and rendering capabilities
through several different interfaces (Motif widgets, visual
programming, script language programming and an API). This
programmable system is employed directly by end users as well as to
build complete applications.
- Since its introduction by IBM Research in 1991, It is widely used
in academia, industry and government worldwide for many research,
design, commercial, education and operational endeavors such as
aerospace and automotive engineering, chemistry, device design, earth
and environmental sciences, finance, market research, medicine,
petroleum exploration, space sciences, transportation and other
discipline.
- DX employs an extended data-flow-driven client-server execution
model. The client process is the graphics user interface and it is
always operate on a workstation. The server process does all of the
computation; it may reside on the same of different
workstation. Medium or fine-grain configurations of Symmetric
multi-processor workstation or servers provide significant scaling for
the server process when applied to larger, more complex data sets or
to support greater interactivity or both.
- The server is controlled via the data flow executive, which
determines what tasks need to be executed base upon user requests and
schedules their execution. Unlike traditional data flow
implementations, DX supports conditional execution, caching, graph
evaluation and looping. Under user control, portions of a DX program
may be specified to execute within a peer server process operation on
another system. In addition, user-defined computations/modules may be
utilized via separate executables from the server process(es). User
created modules may be dynamically loaded. The user interface can
interface with other software applications for control or
communications.
- The executive accepts a well-defined protocol (a script language),
which the user interface generates based upon input it receives. The
executive can be operated independently of the user interface via the
scripting/programming language. It also supports caching of
communications, which may be chosen on a module-by-module basis. The
executive can interface with other software applications for control
or communications.
- DX supports hardware graphics with OpenGL. If a workstation does
not have hardware graphics support, then images are rendered in
software and displayed using 24 bits. If a workstation only supports
8-bit Xwindow (or 12-bite extension), then the 24-bit image rendered
is dithered for display. Bo the hardware and software rendering
support perspective and orthogonal cameras, multiple light sources and
viewing, and arbitrary clipping. They both accept collections of
opaque and translucent volumes, surfaces, lines, and points
simultaneously independent of color, grid size or type, opacity, etc.
- In general, DX provides support for interactive visualization and
analysis of both observed and simulated data. It is easy to learn and
use. It supports interactions in a number of ways, including via
graphical user interface with direct(i.e., in images) and indirect
interactors, visual programming, a high-level scripting language and
programming APIs. Furthermore, the interactors may be data driven
(i.e., self-configuring by data characteristics). Visual and scripting
language programming support hierarchy (i.e., macros) is
available. From visual programming level, one can control the
availability of images and control panels. The programming API
provides data support, error handling, access to level tools, etc. for
building modules and is associated with a Module Builder
utility. There are also APIs for interfacing externally to the user
interface or the executive or both, and the computational tools and
data model without the user interface and executive. Thus, DX can be
used to build complete applications.
- DX is a very flexible. It is easily adaptable to new applications
to new applications and data because it is built on a foundation of an
integrated, discipline-independent data model. This generalized data
model provides unified data handling, implementation of polymorphic
operations and user-defined extensions to self-describing data structu
res. These capabilities allow it to support disparate types of data
simultaneously and to be adaptable to diverse problem. This data model
describes and provides uniform ac cess services for any data bought
into, generated by, or exported from the software. D X supports a
number of different classes of data, which can be described by its
shape (size and number of dimensions), rank (e.g., scalar, vector,
tensor, type (float, inte ger, byte, etc. or real, complex,
quaternion), where the data are located in space (po sitions), how the
locations are related to each other (connections), mesh dependency o f
data (i.e., node or cell center) or aggregation (e.g., hierarchies,
series, composit es, multizone and adaptive grids, etc). It also
supports those entities required for graphics and imaging operations
within th e context o DX. Hence regular and irregular, structured and
unstructured data are supp orted as well as the notion of missing data
(i.e., regions of invalidity). At the user level the details of the
data model and its interface are hidden. This data model is fully
supported by an external disk-based representation (format) for import
and expor t. Data may also be imported through public domain
structures like Unidata's netCDF, N ASA's CDF and NASA's HDF,
user-created custom filters and general array handler. The g eneral
array importer provides a mechanism for the format of layout of data
stored on disk, and then converts the data directly to the data model
representation internal to DX. A graphical Data Prompter supports
it. In addition, various image format are supp orted for import (e.g.,
RGB, TIFF, GIF,) and export (e.g., RGB, Postscript, TIFF, GIF, YUV).
-
- An important consequence of this unified data handling approach is
the operations in DX (modules) are polymorphic, interoperable and
appear typeless to the user. On symmetr ic, multi-processor parallel
workstations and servers, intramodule parallelism is supp orted
through a simple fork-joint shared-memory paradigm. On a collection of
networked workstations, parallelism is supported distributed servers
(with a master-peer relati onship) to minimize
intraprocessor/workstation communication and distributed process m
anagement. Thus, DX is scalable to large data sets and can work with
more than one kind of data simultaneously.
- DX supports a number of realization techniques for generating
renderable geometry from data. These include color and opacity
mapping, contours and isosurfaces, histograms, two-dimensional and
tree-dimensional plotting, surface deformation, etc. for scalar da
ta. For vector data, arrow plots, streamlines, streaklines, etc. are
provided. Realiza tions may be annotated with ribbons, tubes, axes,
glyphs, text and display of data loc ations, meshes and
boundaries. Data probing, picking, arbitrary surface and volume sam
pling, and arbitrary cutting/mapping planes are supported.
- DX supports a number of non-graphical functions such as point-wise
mathematical expres sion (e.g., arithmetic, transcendental, Boolean,
type conversions, etc.), univariate s tatistics and image processing
(e.g., transformation, filter, wrap, FFT/DFT, edge dete ction,
convolution, equalization, blending, morphological operations,
etc.). Field/vec tor operations such as divergence, gradient and curl,
dot and cross products, etc. are provided. Scattered data may be
interpolated to an arbitrary grid or triangulated, de pending on the
analysis requirements. The length, area or volume of geometry may also
be computed. Tools for data manipulation such as removal of data
points, subsetting by positions, sub/super sampling, grid
construction, mapping, interpolation, regridding, sorting,
transportation, etc., are available.
Accessing OPENDX
- On LBNL UNIX machines (Sun, SGI, DEC Alphas (OSF-1) Workstations) do:
module load dx
- For NERSC machines (escher, seaborg):
module load dx
followed by:
dx
- OPENDX has a rich set of demos. To try them out after starting up OPENDX:
select the demonstrations button.
- For help, click on the "help" button.
Documentation
HTML Documentation
Man Pages
Examples
Additional Resources
Not available.
General Information
Sample Screen Shots