Reproducibility package for the paper "Triple-induced mergers of black hole binaries. A comprehensive look at the role of stellar evolution, dynamical stability, and spin evolution."
Authors: Bruenech, Caspar William, Toonen, Silvia, Boekholt, Tjarda, Dorozsmai, Andris
Type: Dataset
Published: 2026-07-30

<p>This dataset contains the code and data required to reproduce the figures and tables in the paper "Triple-induced mergers of black hole binaries. A comprehensive look at the role of stellar evolution, dynamical stability, and spin evolution". Data files are stored as either <code>JLD2</code> data types, which can be read using the JLD2.jl Julia package, or as CSV files. Source code files, scripts, and Jupyter notebooks are written in Julia and can be run with Julia  1.12+. The structure of the dataset is as follows</p>
<ul>
<li>The <code>data</code> directory contains the output data from simulations and post-processed material. It consists of the following subdirectories
<ul>
<li><code>inspiral</code> contains the properties of the merging black hole binaries during the final part of the inspiral, calculated using the orbit-averaged Peters equations. Each JLD2 file is divided three levels, with the highest level describing a group with a specific initial spin alignment, initial metallicity, and stable/unstable triples. The following level contains the individual systems, and each system contains the initial and final orbital properties.</li>
<li><code>misc</code> contains the official LIGO data of observed GW events acquired from ...</li>
<li><code>rate-estimate</code> contains the properties of the merging binaries required to estimate the merger rates. </li>
<li><code>nbody</code>  contains files related to the N-body simulations.
<ul>
<li><code>input</code> contains a file with the properties of the systems that end up as merger.</li>
<li><code>output</code> contains the raw output data from the simulations, including the results with and without the inclusion of BH spins. Apart from the files that contain the words 'full_evolution', each data file contains only the initial and final properties of each system.</li>
</ul>
</li>
<li><code>secular</code> contains the output data from the secular evolution performed using TRES. Each of the two metallicity simulations has three associated data file: one that contains the properties of each system at each time-step, one that contains only the initial and final properties, and one that contains the properties at the time of the formation of an inner black hole binary. Additionally, a shell-script is included to transform one of these data files to a slightly different format.</li>
<li>The result of using the aforementioned transformation script in <code>data/secular</code> is contained in <code>data/reduced</code>.</li>
</ul>
</li>
<li><code>figures</code> is a directory where figures will be saved by default</li>
<li><code>notebooks</code> contains three Jupyter notebooks for analysing and producing plots the N-body simulations, the secular simulations, and the spin simulations.</li>
<li><code>src</code> contains source code including the N-body code Syzygy.jl and code for doing the orbit-averaged inspiral simulations in <code>CompactBinaryEvolution.jl</code></li>
<li><code>scripts</code> contains code files for making the figures in the paper Appendix and for calculating the estimated merger rates.</li>
</ul>
<p>To instantiate the project and install all dependencies:</p>
<ul>
<li>While in the base directory containing the <code>Project.toml</code> file, open a Julia session, enter package mode using <code>]</code>, type <code>activate .</code> followed by <code>instantiate</code></li>
</ul>