SDvision visualization code

 



The binary or the source of SDvision can be obtained by sending a request by email to 'COAST@cea.fr'.
It can be run with a IDL license to introduce personal modifications or without IDL license as a black box.

The SDvision (Saclay Data Visualization) software is deployed in the IDL ‘Interactive Data Language‘ platform.
IDL is the dominant data analysis and visualization package in astrophysics. It gives access to hardware-accelerated rendering techniques through its ‘Object Graphics‘ interfaces to OpenGL, as well as multi-threaded usage of multiple-core processors. The graphics objects can be coupled with GLSL (OpenGL Shading Language) shader algorithms to perform both scientific computation and visualization by graphics card. The SDvision visualization software consists in 96000 lines of code addressing the issue of handling a multiplicity of types of variables: scalar fields, vector fields and clouds of points.
Scalar fields, such as density or temperature fields, are visualized by the means of three complementary techniques:
1) Ray-casting volume rendering. The ray-casting is a CPU-intensive technique that propagates ray through the volume under scrutiny and builds-up on contributions from crossed cells, thus requiring a complete new computation at every change in the viewpoint. An example of rendering the density field of baryonic matter in a cosmological simulation is displayed in Figure 1. In this technique, several composite functions are available to measure the value of a pixel on the viewing plane by analyzing the voxels falling along the corresponding ray: the most basic function is the Maximum Intensity Projection where the color of each pixel on the viewing plane is determined by the voxel with the highest opacity value along the corresponding ray, the color of the voxel being obtained against some lookup tables providing three color functions.
This is the technique preferred in most case for simulations exposing the formation of structure growing from initial fluctuations.
A more sophisticated compositing function is the Alpha blending, where a recursive equation assumes that the color tables have been pre-multiplied by the opacity table to obtain semi-transparent volumes. This technique is preferred to expose turbulent developments in radiation-hydrodynamics simulations where multiple layers of structures can hide each other. Finally the ray-casting algorithm can be engaged to produce RGBA renderings where each red, green, blue, and alpha channels are associated to four different physical fields.
An example of RGBA rendering obtained in the context of a CUDA-enabled simulation of cosmological reionization is shown in Figure 2. The ray-casting algorithm is multithreaded, exploiting all available computing cores on shared-memory computing systems. 2) Isosurfaces reconstruction is used to display surfaces of constant value taken by the scalar field. The reconstruction is performed using the Marching-cube algorithm. The resulting surface is visualized as a Gouraud-Shaded polygon.
The interactive visualization of this polygon benefits from the hardware acceleration by the graphics card. In Figure 3 is shown an example of two surfaces of opposite signs of the azimuthal component of the magnetic field in the solar convection zone obtained with this technique. 3) Slicing is used to map a texture on a simple slice of the volume under scrutiny, at any position and orientation.
Vector fields, such as velocity fields or magnetic fields, are visualized by two techniques: 1) Streamlines reconstruction. This procedure traces the path of a massless particle through a vector field, given a set of starting points (or seed points). Particles are tracked by treating the vector field as a velocity field and integrating. Each particle is tracked from the seed point until the path leaves the input volume or a maximum number of iterations is reached. The vertices generated along the paths are returned packed into a single array along with a polyline connectivity array used to feed a polyline object. The collection of seeds can obey some predefined distribution (2D or 3D uniform grid, spherical grid) or seeds can be selected interactively by clicking on any graphics object on display, a most useful feature to study the structure of flows. 2) Hedgehog display where three-dimensional arrows are anchored on the same collection of points or seeds as in the streamlines procedure.
Point Clouds used in N-body simulations are visualized using two techniques: 1) using markers of definite sizes (polylines or polygons). This is useful to get varying apparent sizes of the markers versus perspective and zooming. 2) Using sprites. In this technique a sprite shader forces the adjacent pixels of the projected position of the points to participate in the rendering, resulting in markers of fixed apparent sizes, independent of any perspective or zooming. This hardware-accelerated technique is extremely fast and efficient to render larger numbers of cloud points.

The SDvision software can be controlled either interactively or through scripts describing a sequence of commands. This latter option is used mainly to produce videos exposing the evolution in the simulation or to explore the volume following predefined selected routes. It has facilities to produce Stereo3D outputs and 8-cam outputs for autostereoscopic screens. The favored data structure for scalar and vector fields is the uniform grid. More sophisticated data structures such as AMR (Adaptive Mesh Refinement) are handled by projection onto uniform grid of adequate resolution.
The algorithms implemented SDvision favor the use of shared-memory architectures equipped by multiple-core processors and massive available RAM (to benefit to the ray-casting rendering technique) and with high-range graphics units (for the acceleration of polygon rendering and use of GLSL Shaders). Our group has its own visualization platforms with the typical following properties: 512 GB RAM, 4 octocore processors with dual-thread settings (64 computing cores) and NVIDIA Quadro FERMI 6000 graphics units. We also are pioneering users of the remote visualization facilities offered by CEA/CCRT and TGCC such as CESIUM (now decommissioned) and the dedicated visualization nodes of AIRAIN and CURIE now in operation.

Since the launch of the COAST program in 2005, the group has produced visualizations in the many fields of astrophysics under study at Irfu/SAp: Large-Scale Structure formation in a cosmological context, formation and evolution of spiral galaxies, interaction of galaxies, interstellar medium, star formation, solar magnetism, polar dwarves in binary systems, accretion disks, protoplanetary nebulae, and ring formation around giant planets. In 2008, following an initiative by DSM, the group started collaborations outside the fields of astrophysics. This most notably led to produce visualizations of the turbulences in the ITER fusion plasma as obtained with GYSELA code, as shown in Figure 4.
Other collaborations include particle accelerators simulations (IFMIF-EVEDA injector project for fusion research at Irfu/SACM), theoretical nuclear physics (visualization of wavefunctions in actinides collisions at Irfu/SPhN), cosmic-rays detectors (WatTo detector at Irfu/SEDI), and solid-state physics (ELF Electron Localization Function at DSM/IRAMIS). The group has been engaged in the visualization of observational astrophysical data, using the very same algorithms and expertise gained in the context of HPC simulations. The first initiative was proposed in the context of the XMM-LSS Survey of X-ray clusters, to study the three-dimensional distribution of these objects and compare them with the density fields obtained on galaxy redshift surveys in the CFHTLS-W1 and COSMOS fields.
This project is pursued in the context of XXL Survey with the largest ever observing time allocated on the XMM-Newton Satellite. Other contributions to the Irfu/SAp observing programs included the visualization of datacubes (a data structure expressed in the right-ascension, declination, and wavelength coordinate system) for the ALMA and IRAM observatories.
In 2011 we started a collaboration with a group led by R. Brent Tully at the University of Hawaii to explore the cosmography of the Local Universe. Visualization is an essential tool in this project. Catalogs of peculiar velocities of galaxies are used as input to a Wiener Filter reconstruction algorithm. This algorithm produces as output the three-dimensional velocity field of gravitational origin in which matter (galaxies and dark matter) is flowing. This velocity field and its by-products (density field, potential fied, shear tensor, cosmic velocity-web) are visualized using the very same algorithms used to visualize HPC simulations.
The visualization of the velocity on the basis of streamlines reconstruction led to the identification of a Basin of Attraction in which the flow converge onto a unique attractor. This concept of Basin of Attraction was proposed to give a proper definition of superclusters of galaxies. The identification of the nature and extent of our Home supercluster Laniakea lead to a publication in Nature (Figure 6). Our visualization expertise was used to produce a video which became the most viewed science video of the Nature channel on YouTube with 3.3 million views), demonstrating the impact on society of these research and technology https://www.youtube.com/watch?v=rENyyRwxpHo