|
|
|
|
|
# Arepo wiki
|
|
|
|
|
|
AREPO is a massively parallel code for gravitational n-body systems and
|
|
|
magnetohydrodynamics, both on Newtonian as well as cosmological background.
|
|
|
It is a flexible code that can be applied to a variety of different types of
|
|
|
simulations, offering a number of sophisticated simulation algorithms. A
|
|
|
description of the numerical algorithms employed by the code is given in the
|
|
|
original code paper and subsequent publications. This documentation addresses
|
|
|
the question how to use the different numerical algorithms.
|
|
|
|
|
|
AREPO was written by Volker Springel (vspringel@mpa-garching.mpg.de) with further
|
|
|
development by Rüdiger Pakmor (rpakmor@mpa-garching.mpg.de) and contributions by
|
|
|
many other authors. The public version of the code was compiled by Rainer
|
|
|
Weinberger (rainer.weinberger@cfa.harvard.edu).
|
|
|
|
|
|
Overview
|
|
|
========
|
|
|
|
|
|
The AREPO code was initially developed to combine the advantages of
|
|
|
finite-volume hydrodynamics schemes with the Lagrangian invariance of
|
|
|
Smoothed Particle Hydrodynamics schemes. To this end, Arepo makes use of an
|
|
|
unstructured Voronoi-mesh which is, in its standard setting, moving with
|
|
|
the fluid in an quasi-Lagrangian fashion. The fluxes between cells are computed
|
|
|
using a finite-volume approach, and further spatial adaptivity is
|
|
|
provided by the possibility to add and remove cells from the
|
|
|
mesh according to defined criteria. In addition to gas, AREPO allows for a
|
|
|
number of additional particle types which interact only gravitationally, as
|
|
|
well as for forces from external gravitational potentials.
|
|
|
|
|
|
AREPO is optimized for, but not limited to, cosmological simulations of galaxy
|
|
|
formation and consequently for simulations with very high dynamic ranges in
|
|
|
space and time. Therefore, AREPO employes an adaptive timestepping for each
|
|
|
individual cell and particle as well as a dynamic, on-the fly load and memory
|
|
|
balancing scheme. In its current version, AREPO is fully MPI parallel, and tested
|
|
|
to run with >10,000 MPI tasks. The exact performance is, however, highly problem and
|
|
|
machine dependent.
|
|
|
|
|
|
|
|
|
Disclaimer
|
|
|
==========
|
|
|
|
|
|
It is important to note that the performance and accuracy of the code is a
|
|
|
sensitive function of some of the code parameters. We also stress that AREPO
|
|
|
comes without any warranty, and without any guarantee that it produces correct
|
|
|
results. If in doubt about something, reading (and potentially improving) the
|
|
|
source code is always the best strategy to understand what is going on!
|
|
|
|
|
|
**Please also note the following:**
|
|
|
|
|
|
The numerical parameter values used in the examples contained in the code
|
|
|
distribution do not represent a specific recommendation by the authors! In
|
|
|
particular, we do not endorse these parameter settings in any way as standard
|
|
|
values, nor do we claim that they will provide fully converged results for the
|
|
|
example problems, or for other initial conditions. We think that it is extremely
|
|
|
difficult to make general statements about what accuracy is sufficient for
|
|
|
certain scientific goals, especially when one desires to achieve it with the
|
|
|
smallest possible computational effort. For this reason we refrain from making
|
|
|
such recommendations. We encourage every simulator to find out for
|
|
|
herself/himself what integration settings are needed to achieve sufficient
|
|
|
accuracy for the system under study. We strongly recommend to make convergence
|
|
|
and resolution studies to establish the range of validity and the uncertainty of
|
|
|
any numerical result obtained with AREPO.
|
|
|
|
|
|
|
|
|
Table of contents
|
|
|
=================
|
|
|
|
|
|
[Getting started](userguide/running)
|
|
|
|
|
|
[Simulation examples](userguide/simtypes)
|
|
|
|
|
|
[Code configuration](userguide/config-options)
|
|
|
|
|
|
[Parameterfile](userguide/parameterfile)
|
|
|
|
|
|
[Simulation output](userguide/snapshotformat)
|
|
|
|
|
|
[Diagnostic output](userguide/diagnosticfiles)
|
|
|
|
|
|
[Related codes](userguide/migration)
|
|
|
|
|
|
[Code development](userguide/development) |