Simulating cosmic structure formation with the GADGET-4 code
  Numerical methods have become a powerful tool for research in astrophysics,
but their utility depends critically on the availability of suitable simulation
codes. This calls for continuous efforts in code development, which is
necessitated also by the rapidly evolving technology underlying today's
computing hardware. Here we discuss recent methodological progress in the
GADGET code, which has been widely applied in cosmic structure formation over
the past two decades. The new version offers improvements in force accuracy, in
time-stepping, in adaptivity to a large dynamic range in timescales, in
computational efficiency, and in parallel scalability through a special
MPI/shared-memory parallelization and communication strategy, and a
more-sophisticated domain decomposition algorithm. A manifestly momentum
conserving fast multipole method (FMM) can be employed as an alternative to the
one-sided TreePM gravity solver introduced in earlier versions. Two different
flavours of smoothed particle hydrodynamics, a classic entropy-conserving
formulation and a pressure-based approach, are supported for dealing with
gaseous flows. The code is able to cope with very large problem sizes, thus
allowing accurate predictions for cosmic structure formation in support of
future precision tests of cosmology, and at the same time is well adapted to
high dynamic range zoom-calculations with extreme variability of the particle
number density in the simulated volume. The GADGET-4 code is publicly released
to the community and contains infrastructure for on-the-fly group and
substructure finding and tracking, as well as merger tree building, a simple
model for radiative cooling and star formation, a high dynamic range power
spectrum estimator, and an initial conditions generator based on second-order
Lagrangian perturbation theory.
