Visualizing Diffpack simulation results in VTK

This web page is maintained by Xing Cai.

Go to Diffpack home page Diffpack is an object-oriented software environment for scientific computing. The C++ Diffpack libraries contain, among other things, user-friendly objects for I/O, GUIs, arrays, linear systems and solvers, grids, scalar and vector fields, visualization and grid generation interfaces. The main strength of Diffpack lies in its flexible and structural design, which allows users to rapidly develop simulators by plugging and/or extending Diffpack's ready-built and well-tuned building blocks.

The emphasis of Diffpack is currently on running simulations by numerically solving partial differential equations using methods such as finite element and finite difference methods. It is well known that scientific visualization is vital for understanding and verifying large scale simulation results. Diffpack has thus been using a very general format for storing simulation results. The intermediately formatted data can then be filtered into different user specific data formats, such as AVS, IRIS Explorer, plotmtv etc. We mention that data filtering in Diffpack can either happen after the whole simulation is finished, thus as a post-processing work; or between different phases of a simulation such that interactive simulation and visualization can be introduced.

Lately, the strong-coming VTK package offers Diffpack yet a new and powerful visualization tool. It proves that filtering general Diffpack data into specific VTK data formats, in our case VTK_STRUCTURED_GRID and VTK_UNSTRUCTURED_GRID, is straightforward. Perhaps more importantly, the same object-oriented software design philosophy, which has been used in both Diffpack and VTK, enables an easy coupling on the source code level so that interactive simulation and visualization can be achieved. On the following web pages, we would like to report some progress that has been made in VTK visualization of Diffpack simulation results. More specifically, we will cover three topics:

A graphical user interface in form of a Tcl script that can treat scalar/vector VTK_STRUCTURED_GRID and VTK_UNSTRUCTURED_GRID data. The functionalities include contour curves/isosurfaces, arbitrary 3D slicing plane, animation/film generation of a series of data files.
Some preliminary results of interactive simulation and visualization, where VTK is used to immediately visualize the simulation results (without stopping the simulation program) so that new input parameters can be fed into the Diffpack simulator interactively for running new simulations.
VTK visualization results of a Diffpack 3D simulation of electrical potential depolarization in human heart. In this work we have been able to generate films of the depolarization process, in which we plot 1. wireframe of the surfaces of the heart and its ventricles, 2. a slicing plane through the 3D volume, 3. an isosurface of the 3D solution.
Send an email to Xing Cai Visit the home page of Diffpack For more information concerning this site, please send an email to Xing Cai. Diffpack is a commercial product from inuTech.