PVWave at NERSC
Table of Contents
- Description
- PV-WAVE is an array-oriented fourth-generation programming language
(4GL) used for Visual Data Analysis (VDA) applications.
The current default version of PV-WAVE is 7.5. Version 6.1,
the previous version, will be removed from the system when version
7.5 is made available.
- Features
-
More information can be found at the
vendor's web site.
- Accessing PVWAVE
-
PV-WAVE is available on ESCHER, the NERSC visualization Server
via the modules facility.
- Documentation
-
Links to online local documentation (html format) and additional pdf files.
- Additional Resources
-
Links to the PVWAVE distribution site,
Tutorials, User Forums, USENET groups, supplemental information, a FAQ page,
emacs modes, etc.
- Sample Screen Shots
Description
- PV-WAVE is an array-oriented fourth-generation programming language
(4GL) used by engineers, scientists, researchers, business analysts
and software developers to build and deploy Visual Data Analysis (VDA)
applications. These applications let users manipulate and visualize
complex or extremely large technical datasets to detect and display
patterns, trends, anomalies and other vital information.
- PVWAVE is a licensed product and is available for multiple UNIX systems
(SUN, SGI, AIX, LINUX).
Features
Array-Based Language
- Loosely-typed and extensible 4GL with an interactive command
line interface to an event-driven interpreter.
- Commands can be interactively interpreted or compiled into programs.
- Sessions can be saved and restored.
- Support for functions, subroutines, global and local variables.
- Complete set of data types for constants and variables (byte,
integer, long integer, floating point, complex, double precision,
double precision complex, string, date/time) in a variety of structures
(scalar, array, table, structure, list, associative array).
- Arrays of up to 8 dimensions.
- Operators work on both scalars and arrays.
- Looping and branching constructs.
- Arrays can be subscripted conventionally or subscripted with
other arrays.
- Execute commands contained in strings.
- Debugging utilities.
- Powerful and convenient array creation/manipulation functions.
- Complete set of utilities for processing string and date/time
variables.
- Trap and handle errors.
- SQL-like query functions for tables.
- Context-sensitive on-line help.
- Full on-line documentation set.
Numerics
- Operators (array-enabled): numeric, relational, Boolean.
- Common Functions (array-enabled): abs, min, max, trigonometric,
hyperbolic, etc.
- Special Functions (array-enabled): Bessel, error, gamma, etc.
- Tensor Functions: generalized tensor products, traces, transpositions.
- Filters: multidimensional, convolution, parametric, polynomial,
relational, Boolean.
- Linear Systems: inversion, determinants, decomposition, roots,
least-squares, full and sparse matrix support, generalized eigensystems.
- Nonlinear Equations: systems, roots of polynomials and functions.
- Transforms: Laplace, multidimensional FFT.
- Quadrature: multivariate differentiation and integration.
- Differential Equations: systems, ODEs, PDEs.
- Optimization: multivariate, linear and nonlinear, constrained
and unconstrained.
- Interpolation and Approximation: multidimensional gridding,
n-linear interpolation, multi-variate polynomials, multivariate
splines.
- Regression: multivariate, linear, polynomial, nonlinear.
- Basic Statistics: simple summary statistics, histograms, nonparametric
statistics, goodness-of-fit tests, tabulation, sorting, ranking.
- Correlation and Covariance.
- Analysis of Variance.
- Categorical and Discrete Data Analysis.
- Time Series and Forecasting: autocorrelation, autoregression,
lack-of-fit, GARCH.
- Multivariate Cluster and Factor Analysis.
- Survival Analysis.
- Probability Distribution Functions and Random Number Generation.
Graphics
- Plotting: 2D and 3D line, 2D and 3D scatter, 2D and 3D vector,
2D and 3D bar, 2D and 3D contours, meshed and shaded surfaces.
- Basic Image Processing: equalize, scale, shrink, expand, warp,
zoom, pan, copy, rotate, threshold, profile, smooth, convolve,
erode and dilate images; filters (predefined and user-defined);
define and analyze irregular regions of interest; algebraic operations;
3D projection.
- Animation.
- Polygonal Rendering: 3D mesh generation, iso-surfaces, light
source control.
- Volume Rendering: isosurfaces, opacity, diffusivity, shading,
slicing, light source control.
- Mapping: comprehensive geopolitical world database; wide variety
of projections; overlay lines, images, contours and vectors; support
for user-supplied databases and projections.
- Annotation: flexible axis, line and symbol styles; scalable/rotatable
software/hardware fonts.
- Comprehensive Colortable Control.
- 3D View Control.
- VRML Support.
Data Import/Export
- Formatted and unformatted read/write; XDR read/write; HDF read/write;
powerful ASCII read/write; 8- and 24-bit image import/export (support
for wide variety of image formats).
Open Architecture
- Spawn sub-tasks, transfer data via bi-directional pipes.
- Call PV-WAVE from a C or FORTRAN program.
- Call C or FORTRAN code from PV-WAVE.
- Communicate between PV-WAVE and another application via Remote
Procedure Calls.
- Create an optional PV-WAVE module using the Options Programming
Interface.
Graphical User Interface Development
- Comprehensive set of high-level and low-level widgets.
- Resource file support and string services.
Visual Data Analysis Tools
- "Super-widgets" allow non-programmers to do animation, image
analysis, line plots, scatter plots, surface plots, contour plots,
histogram plots, color table manipulation, variable manipulation
and data import/export.
Signal Processing Toolkit
- Filter Analysis: complex frequency response, analog and digital
transfer functions.
- Classical Filter Design: bilinear transform; windowed FIR and
IIR.
- Advanced Filter Design: least squares and optimal FIR and IIR.
- Multirate Filter Functions: decimation, interpolation, quadrature.
- Filter Realization: FIR/IIR causal and anticausal, multi-rate.
- Statistical Signal Processing: filter design, Toeplitz matrix
factorization, autocorrelation.
- Transforms and Spectral Analysis: spectogram, power spectrum
analysis, wavelet transforms.
- Polynomial Manipulation: spectral factorization, stabilization,
algebraic operations.
- Specialized Plotting Routines: zero-pole plot of filter; comb
plot of digital signal.
Advanced Image Processing Toolkit
- Graphical User Interface (GUI).
- Image file formats: import/export, most common formats.
- Support for multi-layered images, volumes, signals, animation
and regions of interest.
- Point Operations: algebraic, Boolean, trigonometric, logarithmic,
thresholding, slicing.
- General Filtering: edge, noise removal/generation, linear (convolutions,
user-defined).
- Advanced Filtering: spatial (nonlinear, adaptive), frequency
(butterworth, ideal, etc.).
- Morphological Image Processing: erode/dilate, open/close, outline,
skeletonize.
- Mensuration: shape (moments, major axis, perimeter), statistical,
distance mapping.
- Representation and Description: histograms, spatial/spectral
textural analysis.
- Image Transforms: FFT, DCT, PCT, Hough, Slant, Radon, Wavelet.
- Geometric Transforms: scale, rotate, translate, interactive warp.
- Color: linear and nonlinear conversions between grayscale and
8-bit/24-bit color.
- Classification and Segmentation.
Advanced Gridding Toolkit
- Minimum curvature solutions even for data with creases, tears
and faults.
- User control over sensitivity to discontinuities, gridding accuracy,
level of smoothing.
- Choose between bilinear interpolation or advanced adaptive and
convergent techniques.
- Algorithms: scatter, cluster, weighted, direct.
Database Connection Toolkit
- Direct link between Oracle, Sybase or ODBC database.
- Use standard SQL syntax to interactively open, query, subset,
sort and filter null values.
- Support for multi-row fetches with adjustable row counts for
Oracle and Sybase connections.
- User control over commits and rollbacks for ODBC connection.
Supported Computing Platforms
Accessing PV-WAVE
At LBNL, PV-WAVE is only available on the NERSC Visualization
server, escher.nersc.gov. To access PV-WAVE, you need to use
the modules facility as follows:
% module load pv-wave
Then, to launch the application, type the following:
% wave
For a more complete list of the capabilities of PV-WAVE, see the
vendor's web site.
On-line help is available by typing 'help' at the PV-WAVE prompt.
Documentation
HTML Documentation
Local Documentation Downloads: (Use shift left-mouse to download files)