Skip to content
EdoardoCarlesi edited this page Jan 23, 2019 · 4 revisions

METROC++ (MErger TRees On C++)

(C) Edoardo Carlesi (2018-2019)

This code computes the merger trees of halos in cosmological simulations, given a set of halo and particle catalogs. It has been tested on AHF (Amiga Halo Finder) catalogs so far but it can be extended easily to other file formats. If you have any questions you can get in touch with me at ecarlesi @ aip.de

Download

You can download the latest version of the code from github typing

git clone https://github.com/EdoardoCarlesi/MetroCPP.git

from the command line

Configure

METROC++ requires a C++11-compatible compiler and MPI to run, so just make sure that your machine has a working MPI implementation e.g. OpenMPI or MPICH. Code optimization flags and other system-specific directives can be specified in the Makefile.config file.

Installation

To install, go to the MetroCPP main folder and type:

make

this will compile the source code in the src/ subfolder and create the binary executable MetroCPP, which will be moved to the bin/ folder.

Execution

Edit the configuration file following the instructions and run as:

mpiexec -n 8 ./bin/metroCPP config/my_config_file.cfg

This assumes that the total number of parts into which each halo catalog is divided is a multiple of 8, so that each task reads an equal number of file chunks. E.g. if you ran AHF on 32 cores you should expect the halo catalogs to be composed of 32 files at each step. Running MetroCPP on 8 cores will assign 4 file chunks to each task.

Clone this wiki locally