Scientific Visualization

Practical Exercise:
Data Party!

Corresponding lecture:

Julien Tierny
julien dot tierny at lip6 dot fr


The goal of this exercise is two-fold:
 · Review most of the concepts covered by the entire class;
 · Confront you to a real-life visualization scenario.

Software prerequisites

 · A recent version of ParaView should be installed (4.1 or higher);
 · A recent version of VTK (runtime libraries and headers) should be installed (6.0 or higher);
 · A recent version of CMake should be installed (2.8 or higher).

The remainder of these exercise instructions assumes that the employed IDE is KDevelop (version 4.4 or higher) under Linux. However, this exercise can be achieved with any IDE under any OS. For non-Linux users, an easy alternative consists in installing a Linux system (such as Kubuntu) within a virtual machine (such as VirtualBox, a readily configured virtual machine is available HERE, md5sum: f72a2e455e1533baef1fe19e745070df, password: ttk).


 · An up-to-date documentation of the VTK library can be found HERE.
 · A light-speed introduction to C++ programming can be found HERE.

Scientists need you!

Some domain experts have gathered 34 data-sets that they carefully collected through various simulation and acquisition processes. This data collection contains:
 · 4 elevation data-sets (including the sea elevation on earth, the elevation of a region of Mars and of two regions of the planet Earth);
 · 3 stress data-sets (measuring the intensity of a deformation on surface triangulations);
 · 1 volumetric acquisition of a foot with MRI;
 · 4 (planar) computational fluid dynamic simulations;
 · 4 volumetric chemical simulations;
 · 5 volumetric computation fluid dynamic simulations (including one on a fighter jet and one on a boat);
 · 1 simulation of liquid oxygen diffusion;
 · 1 simulation of fuel injection in a combustion chamber;
 · 1 simulation of earth quake;
 · Several solutions of the Laplace equations;
 · The derivatives of most of the quantities listed above.

Unfortunately, a distracted student completely mixed up their experiments before the scientists could even have a look at them!
Only the following zip archive remains from this disaster: HERE.
This archive contains one directory per data-set, with no explicit file name and no mention of the type of data it contains (regular grid or triangulation? 2D or 3D? scalar, vector or tensor field?)

Will you help these desperate scientists re-organize their data collection?
Will you further help them interpret the content of each data-set?

Question 1

 · For each data-set, determine to which category of data it corresponds, in terms of:
    · Dimensionality (2D? 3D?);
    · Domain representation (regular grids? triangulations? etc...);
    · Associated data (scalars? vectors? tensors? etc... ).

Question 2

 · By using your import programs (written during the exercises related to data conversion), figure out a way to convert each of these data-sets to VTK file formats. ...If it happens to be too much of a tedious task, you might want to use the bash script

Question 3

 · By either using ParaView or your own VTK programs, try to assign each data-set to one of the categories provided by our poor scientists in their initial collection description, given above.

Question 4

 · Select at least 4 data-sets that look appealing to you (at least one scalar field, one vector field and one tensor field). For each of these, use ParaView to generate the most informative and the most understandable visualization of the data to help the scientists interpret them.

Updated on December 13th, 2017.