Tree Format

The subhalo merger trees come in two formats: minimal and extended. The minimal format contains the pointers between subhalos, along with a few basic quantities such as the subhalo mass and the number of particles. The extended format contains all of these fields, plus every subhalo field found in the subhalo catalogs.

Also, there are two flavors of merger trees: DM-only and baryonic. As the name suggests, the DM-only trees only track the dark matter (DM) particles, while the baryonic trees track all the stellar particles plus the star-forming gas particles.

For convenience, subhalo offset tables are also provided for each snapshot.

Minimal format
Extended format
Offset tables


Minimal format

Basic pointers found in the merger tree

Figure 1. The structure of the tree is very similar to the one described in Springel et al. (2005). Note that some arrows have been added to the original figure.



Column Type Units Description
SubhaloID int64 Unique identifier of this subhalo, assigned in a "depth-first" fashion (Lemson & Springel 2006).
SubhaloIDRaw int64 Unique identifier of this subhalo, in raw format (= SnapNum*10^12 + SubfindID).
LastProgenitorID int64 The ID of the last progenitor of the merger tree rooted in this subhalo. Since the subhalo IDs are assigned in a "depth-first" order, all the subhalos contained in the tree rooted in this subhalo are the ones with IDs between SubhaloID and LastProgenitorID.
MainLeafProgenitorID int64 The ID of the last progenitor along the main branch, i.e. the earliest progenitor obtained by following the FirstProgenitorID pointer.
RootDescendantID int64 The ID of the latest descendant of this subhalo, i.e. the root of the merger tree to which this subhalo belongs.
TreeID int64 Identifier of the tree to which this subhalo belongs. In most cases, this identifier corresponds to the SubfindID of the subhalo from the latest snapshot in which this tree is rooted.
SnapNum int16 The snapshot in which this subhalo was found.
FirstProgenitorID int64 The ID of the subhalo's first progenitor, if any (-1 otherwise). The first progenitor is the one with the "most massive history" behind it (e.g. De Lucia & Blaizot 2007).
NextProgenitorID int64 The ID of the next subhalo from the same snapshot which shares the same descendant, if any (-1 otherwise).
DescendantID int64 The ID of the subhalo's descendant, if any (-1 otherwise).
FirstSubhaloInFOFGroupID int64 The ID of the main subhalo (i.e. the one with the "most massive history") from the same FOF group.
NextSubhaloInFOFGroupID int64 The ID of the next subhalo from the same FOF group.
NumParticles uint32 Number of particles in the current subhalo, including only particles of interest to the current tree (e.g. DM-only or stars + star-forming gas).
Mass float32 10^10 Msun/h Mass of the current subhalo. For the DM-only trees, this is the DM mass. For the baryonic trees, this is the stellar mass plus the star-forming gas mass.
MassHistory float32 10^10 Msun/h Sum of the masses of the progenitors along the main branch (De Lucia & Blaizot 2007).
SubfindID int32 Index of this subhalo in the snapshot catalog.


Extended format

This format consists of all the columns from the minimal format, plus all the subhalo fields found in the SUBFIND catalogs.

Offset tables

For each snapshot, there is a file inside the offsets subdirectory that contains the subhalo offsets in the merger tree, arranged in depth-first fashion so that each row corresponds to a unique subhalo in the merger tree. An example of how to use the offset files is provided in
Example 6.

Column Type Units Description
FileOffsets int64 Offset of the current tree file with respect to the full merger tree.
RowNum int64 Row number in the full merger tree.
SubhaloID int64 Unique identifier of this subhalo, assigned in a "depth-first" fashion (Lemson & Springel 2006).
LastProgenitorID int64 The ID of the last progenitor of the merger tree rooted in this subhalo. Since the subhalo IDs are assigned in a "depth-first" order, all the subhalos contained in the tree rooted in this subhalo are the ones with IDs between SubhaloID and LastProgenitorID.
MainLeafProgenitorID int64 The ID of the last progenitor along the main branch, i.e. the earliest progenitor obtained by following the FirstProgenitorID pointer.