Binary Neutron Star Collision
David Bock
NCSA Visualization and Virtual
Environments
August, 1998
The Science
Computation simulating the collision of binary neutron stars.
http://access.ncsa.uiuc.edu/CoverStories/NeutronStar/neutron_1.html
The Scientists
Doug Swesty, NCSA
Alan Calder, NCSA
Edward Wang, NCSA
The Data
Grid: structured
Dimensions: 132x132x132
Data: scalar, log of density, 218 time steps
The Visualization
David Bock, NCSA Visualization
Neutron Star Collision - MPEG movie (2 MB)
Neutron Star Collision - MPEG movie (2
MB) - gamma-boosted
Neutron Star Collision (Run 4) - MPEG movie (3.5 MB)
Neutron Star Collision w/ Gravitational Emmissivity
Stills from the movie at different time steps:
time = 1, 25
time = 50, 100
time = 150, 200
The Implementation
Original slices (shown here with various color-mappings) through this
volumetric dataset, reveal a higher density region in the center of the
volume surrounded by a lower density region:
In order to represent and reveal as much of the data as possible, we would like to visualize both the higher density "interior" and lower density "exterior" regions within the same representation. To accomplish this, we would like to integrate different types of visualization primitives together in one scene -- 1) an interior color-mapped slice plane, 2) an isosurface (geometric primitive) near the boundary area between the two density regions, and 3) an accurate volume rendering of the entire region.
To accomplish this type of integration, we use Blue
Moon Rendering Toolkit (BMRT) written by Larry
Gritz. We use BMRT to render all three primitives together in
one scene. We describe the various elements below. Note the
final images are NOT composites of three renderings but rather ONE render
for the entire scene.
Volume Rendering
In order to volume render a dataset within BMRT, we need to develop
a shader that will take as input the dataset and trace rays through the
volume, collecting data-mapped color and opacity for the final pixel color.
Here we turn to the author of BMRT, Larry Gritz, who graciously provided
a shader to accomplish this functionality. We extend Larry's original
shader to map the data samples within the volume to an input colormap.
Thanks again to Larry for his original concepts and help in this work.
Below is a sample image of the volume-rendering only with the associated
colormap:
Isosurface
We need to shade this geometric primitive so we can see it's structure
and see "through" the surface. To accomplish this, we develop a shader
to generate a "halo" effect on a surface by shading the surface in regions
where the surface normal is perpendicular to the light direction within
a given spread region about the normal. Below is a sample image of
the isosurface only shaded with this "halo" shader:
Color-mapped slice plane
We generate a standard color-mapped slice plane isolating the higher
density region only. Below is the slice plane only along with the
associated colormap:
Volume rendering, Isosurface, Color-mapped slice plane
In order to see the interior slice plane, we ramp down the opacity
value for the "hot" white color in the volume shader colormap, combine
all three primitives, and render the entire scene in BMRT: