Climbing Halo Merger Trees with TreeFrog
  We present TreeFrog, a massively parallel halo merger tree builder that is
capable comparing different halo catalogues and producing halo merger trees.
The code is written in c++11, use the MPI and OpenMP API's for parallelisation,
and includes python tools to read/manipulate the data products produced. The
code correlates binding energy sorted particle ID lists between halo
catalogues, determining optimal descendant/progenitor matches using multiple
snapshots, a merit function that maximises the number of shared particles using
pseudo-radial moments, and a scheme for correcting halo merger tree
pathologies. Focusing on VELOCIraptor catalogues for this work, we demonstrate
how searching multiple snapshots spanning a dynamical time significantly
reduces the number of stranded halos, those lacking a descendant or a
progenitor, critically correcting poorly resolved halos. We present a new merit
function that improves the distinction between primary and secondary
progenitors, reducing tree pathologies. We find FOF accretion rates and merger
rates show similar mass ratio dependence. The model merger rates from Poole et
al, (2017) agree with the measured net growth of halos through mergers.
