Skip to content

Tutorial: Generating galaxy merger trees

Andrew Benson edited this page Oct 18, 2024 · 1 revision

By "merger tree" we typically mean a merger tree of dark matter halos. However, we can also look at a galaxy merger tree. Since galaxies do not merge at the same time as their halos, the galaxy merger tree will be different from the associated halo merger tree.

To track and output galaxy merger trees requires adding a nodeOperator and nodePropertyExtractor:

    <nodeOperator value="galaxyMergerTree">
      <timeStep value="0.025"/>
      <nodePropertyExtractor value="massStellar"/>
      <nodePropertyExtractor value="massISM"/>
      <nodePropertyExtractor value="massBasic"/>
      <nodePropertyExtractor value="starFormationRate">
	<component value="total"/>
      </nodePropertyExtractor>
    </nodeOperator>

This nodeOperator records information needed to describe the merger tree of each galaxy. The timestep determines how frequently the properties of each galaxy are sampled in the tree. The nodePropertyExtractors here determine which properties are recorded for each galaxy. (Currently any member of the nodePropertyExtractorScalar class can be used here.)

    <nodePropertyExtractor value="galaxyMergerTree"/>

This nodePropertyExtractor causes the information recorded for the merger tree to be output to the output file.

As an example, you can generate a simple example by running this model:

./Galacticus.exe parameters/tutorials/galaxyMergerTree.xml

and then generate a plot of the tree from it using:

./scripts/analysis/galaxyMergerTree.py

which should look like this:

image

Clone this wiki locally