You are here


Isosurfaces and stellar cartography

Submitted by Kevin Jardine on 7 March, 2017 - 08:11
Auklet flock

Flocks of birds, schools of fish and concentrations of stars can all be mapped using isosurfaces.

The TGAS (Tycho-Gaia Astrometric Solution) data set released as part of Gaia DR1 in September 2016 contains positions and parallaxes for 2057050 stars, about 85% of the 2432906 stars in the Tycho-2 catalog. This is the first time that parallaxes (and hence distance estimates) have been available for such a large number of stars.

Nevertheless, TGAS contains a tiny fraction of the hundreds of millions of star parallaxes that will be released as part of Gaia DR2, currently scheduled for April 2018.

How can we construct a map from such an enormous amount of information?


We know already that stars are not distributed randomly but are found in vast concentrations, much like flocks of birds or schools of fish on Earth. These concentrations range in scale from systems with multiple stars, clusters, and associations all the way up to spiral arms. There is structure at every scale. One important tool to map this stellar distribution is isosurfaces of constant star density.

Adrirondacks map

Isosurfaces are the three-dimensional equivalent of the isolines on a topographic elevation map.

Adrirondacks map

Isosurfaces fit inside each other like complex Russian nesting dolls.

An algorithm for converting the point set of a scalar field with a given value into a surface mesh was invented by William E. Lorensen and Harvey E. Cline and published in 1987. The marching cubes algorithm is most often used to convert MRI scans into images of tissues and bones for medical diagnosis and research. It has many other uses for scalar fields, including the analysis of stellar distribution.

We can think of the isosurfaces generated by the marching cubes algorithm as the three dimensional equivalent of the isolines used in topographic maps to show lines of constant elevation. In an elevation map, lines representing higher elevation appear inside lines representing lower elevation. The sequence of isolines of increasing elevation define a mountain peak. Similarly, a sequence of isosurfaces representing increasing star density represents a "star peak".

One difficulty in visualizing isosurfaces is that they are three-dimensional structures and representing a sequence of isosurfaces enclosing each other is often confusing and difficult to interpret - a bit like a series of very complex Russian nesting dolls. We can use translucent surfaces to represent a few enclosed surfaces as in this image:

However, for a larger sequence of isosurfaces, an animation that shows less dense isosurfaces fading or evaporating to reveal denser surfaces inside is often clearer.

Star selection

Converting the Gaia parallax data into density isosurfaces is straightforward. First I select the most accurate parallax data with error/parallax < 0.2. There are about a million stars in the TGAS data set with this parallax accuracy. A second step is required because simply computing density surfaces of this data set does not give a map of the solar neighbourhood! Instead it returns a sequence of nested ellipsoids. This is because an unfiltered analysis is limited by what Gaia can see and Gaia sees more stars at shorter distances than further away. What we need to do to produce a map is to select stars that Gaia can see out to a reasonable distance of 600-800 parsecs. So we need intrinsically bright stars to construct a map.

After some experimenting, I found two TGAS subsets of the low error stars that generate reasonable maps. The first is the 400 thousand "bright" stars with absolute magnitude <= 3 (remember that the brighter the star, the lower the magnitude value). The second is the 20 thousand "hot" stars with colour index <= 0. Except for some very dim but hot white dwarfs close to the Sun, the hot stars are essentially a subset of the bright stars in the TGAS data set.

For each of these "bright" and "hot" star sets, I convert the parallax and positions into (x,y,z) coordinates and then count the stars in each 2x2x2 parsec bin.

In order to produce reasonably smooth isosurfaces, I then used a gaussian smoothing function (usually with a sigma of 15 parsecs) to produce a scalar field defined within a cube with a radius of 800 parsecs from the Sun. The scalar density field can then be converted into isosurface meshes using the marching cubes algorithm mentioned above.

You can see an animation showing the lower density bright isosurfaces fading into higher density surfaces below. The bright star isosurfaces dissolve from the low density 20% isosurface by 5% increments until they reach the high density 95% bright star isosurface. (The percentages used to define isosurfaces are always a percentage of the maximum density found in the data set. So a 40% isosurface contains all the stars with a density that is 40% or more of the maximum value.)

In this animation, the Sun is at the centre and the direction to the galactic nucleus (0° galactic longitude) is at the top.

A similar animation for hot isosurfaces is here:

Bright versus hot stars

Because the hot stars are essentially a subset of the bright stars, it is tempting to think that the regions within the bright star isosurfaces always contain a hot star core, much like human tissue is supported by a bony skeleton, but this is not the case! There are significant bright star concentrations that contain no hot star cores.

As I explained in my previous blog post, the dense hot star concentrations within the TGAS data are found largely within three major regions, or stellar continents. The bright stars, on the other hand, form a ring around the local bubble. As a result, there are large concentrations of bright stars found between the hot star continents, especially in the hot star gaps I've nicknamed the Strait of Centaurus and the Gulf of Auriga.

I've created a few animations to make the differences between the bright star and hot star concentrations clearer.

The first example shows the above bright star dissolve animation (this time in green) and within this dissolve, I have included the 40% hot star isosurface (in blue). You can see how the blue hot star isosurface is embedded within the green bright star isosurfaces, but also how there are bright stars located where there is no hot star core.

Here is a similar example, except that this time the bright star dissolve reveals the 50% hot star isosurface:

And the 60% hot star isosurface:

And the 70% hot star isosurface:

The difference between the distribution of the hot and bright stars tells us that mapping stars in the galaxy is not as straightforward as mapping land on the Earth. Depending upon the stars we select, many maps are possible.

A topographic map of the solar neighbourhood

Submitted by Kevin Jardine on 27 February, 2017 - 12:11

I have used the TGAS (Tycho-Gaia Astrometric Solution) data released as part of Gaia DR1 to create a topographic map of the solar neighbourhood within a distance of 800 parsecs.


Links to various ways to see the map are below. First, some caveats:

  • The TGAS data is known to be incomplete. A more complete and accurate data set extending far beyond the solar neighbourhood into the spiral arms and the galactic nucleus is scheduled to be released in April 2018. For now TGAS is the best data we have for mapping the Milky Way.
  • This is a topographic map showing isosurfaces of constant star density and is analogous to a hiking map showing isolines of constant elevation. If you want a visualization showing, for example, what it would be like to fly through the Hyades cluster, this is not it. For direct visualizations of the star data, you might want to look at Gaia Sky.
  • When generating the map, I created names for several hundred isosurface peaks, analogous to mountain peaks or ranges on a hiking map. Although in many cases these names have been inspired by Greek mythology or other traditional star lore, the names are in no way official and were created largely because it is easier for me to remember them and their locations on the map than isosurface region identifiers like TR1 40-54. Only the International Astronomical Union (IAU) can give official names to celestial objects.

The density functions

The isosurfaces on this map are each defined by a density value. The density value is determined by a star density function. There are two density functions used for this map. The first is computed from 20 thousand hot stars (colour index <= 0). The second is computed from 400 thousand bright stars (absolute magnitude <= 3).

In both cases the density functions are computed by filtering for low error stars in the TGAS data set (err/plx < 0.2), counting the number of stars (hot or bright) in each bin of a 2x2x2 grid and then applying a gaussian smoothing function to define a scalar field for each cubic parsec. For the hot star isosurfaces I used a fairly large gaussian sigma of 15 parsecs. For the bright star isosurfaces I used a smaller gaussian sigma of 5 parsecs, resulting in a larger number of smaller isosurfaces compared to the larger sigma.

The net effect is that the hot star isosurfaces identify large regions in space and the bright star isosurfaces define smaller clumps of bright stars.

The density functions range between 0 and a maximum value. I have used an exponential spread function to normalize this range to between 0 and 1. A specific isosurface can be defined by selecting a value between 0 and 1 (or more conveniently between 0 and 100). The 0% isosurface contains all the density values >= 0 and so in both cases is a solid sphere. As the density value rises, the number of disconnected isosurface regions starts to multiply and their size is reduced. Eventually as the density value reaches 100%, there are only a few very dense star clumps remaining.

Panurania and the stellar continents

As I mentioned in some blog posts last year, the majority of hot stars can be found in a single isosurface up to and including a density value of about 30%. I have called this stellar supercontinent Panurania (Urania being the Muse of Astronomy and a great granddaughter of Ouranos/Uranus, the god of the heavens). It has many branches and empty spaces and resembles a gigantic Red Ridge sponge.

After 30%, Panurania breaks up into three stellar continents. It seems logical to name these after children of Ouranos and Gaia. The most famous of their children, the Titans, have been widely used for names of moons and asteroids. However, besides the Titans, their children also include the Cyclops and the hundred-armed Hecatoncheires, whose names seem much less widely used.

Given that the stellar continents have many branches, I named them after the hundred-armed Hecatoncheires: Briareus, Gyges and Cottus.


The isosurfaces consist of hundreds (or for some density values thousands) of disconnected regions. I have given each region an identifier using the recommended IAU identifier system: a three character acronym followed by a region identifier. The set of "hot" isosurfaces are called TR1 (TGAS Regions 1) and the set of "bright" isosurfaces are called TR2.

The identifiers are made up of a isosurface density followed by a region number. For example, the Gyges stellar continent is TR1 40-15. This means that each isosurface has a formal identifier (TR1 40-15) as well as a more fanciful name (Gyges).

Some links

There is a lot to say about the map, but only a tiny amount will fit in a single blog post. I want to get on to providing some links.

It is much more difficult to visualize isosurfaces than isolines on a more familiar contour elevation map, because these density isosurfaces are three-dimensional and have complex shapes. When we look at an elevation map, isolines representing higher elevations can be found within isolines representing lower elevations. The same is true for isosurfaces. However, because isosurfaces are 3D, we must visualize surfaces appearing inside other surfaces, much like very complex Russian dolls.

So I have represented the map using many different images, all of which reveal an aspect of the map.

One way to do this is through animations. For example, this video shows a sequence of hot star isosurfaces fading or melting into each other from 20% to 95%. As the animation goes on, denser pockets of hot stars are revealed inside less dense regions:

(I recommend full screen and perhaps loop mode for all the animations I link to as there is a lot to see.)

Unfortunately this animation does not given you an idea of the complex 3D shapes of the isosurfaces. Below is a rotating view of the 40% hot star isosurface. I have simplified it by filtering the regions so that the visible regions contain 5 or more hot stars (the larger regions contain thousands of hot stars):

Even this view does not given you a clear view of the main stellar continents, so I have uploaded the Briareus, Gyges and Cottus isosurfaces to Sketchfab. You can click on each and view them in 3D here:

In the Sketchfab isosurfaces you can see that:

  • Gyges has a complex structure, the Gyges reef, that extends below the galactic plane and appears below the local bubble. As I will show in another blog post, the OB association Lac OB1 is part of the Gyges reef
  • Briareus has a saddle structure with parts that rise well above the galactic plane at either end.
  • Cottus divides into two parts: the peaks and the grottoes. The peaks rise above the galactic plane and the grottoes descend well below it.

Of course, it is still useful to have a two-dimensional map, so I have provided a pannable and zoomable one here with quite a few viewing options:

I'll have a lot more to say about this 2D map in my next blog post, but for now you can click on the Help link at the bottom of the settings area at the upper right to read more about it.

Finally, I have uploaded the Python code I used to create the map and its various visualizations to GitHub here:

The stellar continents

Submitted by Kevin Jardine on 19 December, 2016 - 00:10

(Note: in all of these images, 0° galactic longitude is at the top, the Sun is at the centre, and the radius of the data is about 800 parsecs.)

Visualising isosurfaces is hard. They fit inside each other like very complex Russian dolls but no technique for showing several isosurfaces at once works perfectly.

A common technique is to make one isosurface partially transparent so you can see one inside the other, as is done in the image at the top of this article (which also includes the local dust clouds in orange and a yellow dot representing the location of the Sun). However, this only works for two or three surfaces and is difficult for the larger less-dense TGAS isosurfaces because of the complex sponge-like structure of the solar neighbourhood.

(The dust clouds in the above image are derived from data presented in this paper:

Lallement, R., Vergely, J. L., Valette, B., Puspitarini, L., Eyer, L., & Casagrande, L. (2014). 3D maps of the local ISM from inversion of individual color excess measurements. Astronomy & Astrophysics, 561, A91.)

Perhaps the simplest isosurface visualisation technique is an animation in which the larger isosurfaces evaporate to reveal the ones inside.

The following Youtube video was created using the hot star density isosurfaces I described in a previous blog post:

(The best view is 4K full screen.)

The lower density surfaces clearly reveal a crater-like structure in the third quadrant. This is caused by missing TGAS data in this quadrant and is not a real structure.

The animation is interesting, however a traditional map requires a still image or at least something that can be labelled.

Another option is to overlay several isosurfaces on top of each other. This obscures the three dimensional structure but at least shows how one surface fits inside the other.

For example, this image shows the isosurfaces for which the star density is greater than or equal to d%, where d is 5, 55, 80 and 90:

The highest 80% and 90% concentrations in this image and the one at the top of this post represent dense hot star concentrations, including OB associations.

You can see the three stellar "continents" of the solar neighbourhood in this image and the one created using three of these isosurfaces at the top of this blog post.

Here's another experiment, this time combining dust and the 60% and 85% isosurfaces:

A successful 3D map of the solar neighbourhood will likely require a combination of these techniques as viewed from several directions.

I hope in my next blog post to present the first draft of a real map of the solar neighbourhood with star clusters, dust clouds, hot star concentrations and labels. Given the limitations of the TGAS data, this first draft will inevitably be incomplete, but it will prepare the way for a more complete map when Gaia DR2 is released about a year from now.

The map will take a while to put together, so look for it early in the new year!

A map of Panurania

Submitted by Kevin Jardine on 14 December, 2016 - 09:16

In my last blog post, I introduced Panurania, the stellar "supercontinent" that contains most of the high temperature stars in the solar neighbourhood. The above image is an isosurface of a temperature density function (25% of the maximum) derived from the hot stars (colour index < 0) in the Tycho-Gaia Astrometric Solution (TGAS) data set from Gaia DR1.

Clicking on the above image (which has galactic longitude 0° at the top) will bring you to a much more detailed zoomable graphic with a distance and galactic longitude display. Our sun is located at the centre of the image, well inside the Panurania structure.

(As always, it is important to keep in mind that I am using the limited TGAS data set, which starts to fade out about 600 pc from the Sun and has significant gaps even within that distance. Gaia DR2, expected about a year from now, should have more detailed data extending to a much larger distance. I'll be preparing revised maps when that becomes available.)

The most prominent feature in Panurania is a crater-like structure at the lower right. You can see an animation of Panurania showing the camera moving from above to below this region in this Youtube video:

(This video is displayed at only 2 frames per second - I'll upload a smoother animation when I get more rendering time.)

Although it is exciting to think that this might be a real structure, in fact it is known that TGAS is missing a lot of data from the upper third quadrant and this is likely a void in the data rather than a vast crater in the interstellar medium.

The overall shape of Panurania, with its branches and ridges, is strikingly similar to a Red Ridge sponge (one species of which I believe is the Caribbean reef sponge Axinella corrugata).

That is worth repeating:

We are all living inside a gigantic sponge.

I'll be asking some astrophysicists about why Panurania resembles a sponge. One possible explanation is the way hot stars form out of collapsing filaments inside giant molecular clouds. See, for example, this recent blog post from Nick Wright.

Of course the image at the top of this blog post is not a full map. A full map would need labels and many overlays (prominent star clusters, dust clouds, supernova remnants, and so on).

That will evolve on this site over time. In my next blog post, I'll look at the three denser stellar continents that lie within Panurania.


Submitted by Kevin Jardine on 12 December, 2016 - 10:31

In my last blog post, I showed 3D slices of a TGAS density function that reveal the concentrations of high temperature stars. There is a very clever algorithm called the marching cubes algorithm that can take such 3D slices and convert them into 3D surface meshes that can be rendered in a 3D graphics program. In my case I used the vtkSliceCubes function in a Python port of the amazing VTK graphics library to generate the meshes and then rendered the resulting meshes in the Blender 3D program.

I'll be presenting some of these Blender images over the next few blog posts.

It is important to keep in mind that TGAS is missing many stars (especially high temperature stars) in the solar neighbourhood and the maps we generate using it will inevitably be incomplete. We can look forward to more complete maps a year from now with the release of Gaia DR2.

The marching cubes algorithm takes a function f on 3D points and a number v and generates isosurfaces that consist of all points (x,y,z) where f(z,y,z) >= v.

The isosurface typically consists of a number of disconnected pieces.

The value v ranges between a minimum value (usually 0) and a maximum value. At the minimum value, there is always one isosurface piece that contains all the points.

As the value v increases, the isosurface typically fragments into more and smaller pieces, until v reaches its maximum value when the isosurface may be empty or consists of a few small pieces around points that take on the maximum value.

The TGAS isosurfaces follow a similar pattern with the density function that I described in my previous blog posts, but what is interesting is what happens to the isosurface when v ranges between its maximum and minimum value.

Here is a table showing information about the isosurfaces as the TGAS temperature density v ranges between 5% and 95% of its maximum value.

density stars star percentage regions with 90% stars stars in 90% regions
5% 19305 95.27% 1 18778
10% 18241 90.02% 1 17655
15% 16182 79.86% 1 15811
20% 14480 71.46% 1 14071
25% 12712 62.74% 1 12249
30% 10945 54.01% 1 10485
35% 9264 45.72% 1 8769
40% 7819 38.59% 3 7308
45% 6527 32.21% 3 6054
50% 5292 26.12% 3 4834
55% 4183 20.64% 3 3854
60% 3239 15.98% 5 2934
65% 2448 12.08% 8 2225
70% 1747 8.62% 14 1574
75% 1222 6.03% 15 1100
80% 807 3.98% 10 727
85% 486 2.40% 9 439
90% 214 1.06% 9 195
95% 62 0.31% 4 60

The first column is the density value used to generate the isosurfaces. The second column is the number of high temperature stars inside the isosurface. The third column is the percentage of high temperature stars that are inside the isosurface compared to all TGAS high temperature stars. There are 20263 hot stars (color index <= 0) in TGAS with error ratios less than 0.2. So, for example, 95.27% of these 20623 stars are inside the isosurface where the density is greater than or equal to 5%.

The fourth column is the number of isosurface pieces that contain 90% of the isosurface stars.

It is not surprising that almost all the stars are within the 5% isosurface. What is more interesting is what happens as the density value goes up. Even when we reach 35% density, 45.72% of all the hot TGAS stars are still within the isosurface, and more than 90% of these are still within one giant stellar "supercontinent".

After 35%, the supercontinent breaks into three smaller stellar continents. The three continents are also persistent and only start to break up at 60% density, when the isosurfaces start to fragment into regions of dense hot star concentrations including well known local OB associations such as Ori OB1 and Sco OB2.

Since the stellar supercontinent and three denser continents contained within it are so persistent, this suggests that they are real structures and not just artifacts of the density function.

Earth once had a supercontinent that contained most of its land, called Pangaea. It seems inevitable therefore to call the stellar supercontinent Panurania, after both the goddess Gaea's husband Ouranos/Uranus, the god of the sky, and his great granddaughter Urania, the muse of astronomy.

We'll look at Panurania in more detail in the next blog post, but here is a teaser image of the 25% density isosurface rendered in Blender.

You can see that it has a very distinctive shape. We'll look at some possible reasons in the next blog post.


Subscribe to RSS - blogs