Skip to content
Snippets Groups Projects

Updated homepage text for all 3 sections

Merged Matthieu Schaller requested to merge updated_homepage into master
3 files
+ 219
69
Compare changes
  • Side-by-side
  • Inline
Files
3
+ 140
37
# Astronomer
# Astronomer
Want to get started using SWIFT? Check out the onboarding guide available
Want to get started using SWIFT? Check out the on-boarding guide available
[here](onboarding.pdf).
[here](onboarding.pdf). SWIFT can be used as a drop-in replacement for
Gadget-2 and initial conditions in hdf5 format for Gadget can
 
directly be read by SWIFT. The only difference is the parameter file
 
that will need to be adapted for SWIFT.
 
 
SWIFT combines multiple numerical methods that are briefly outlined
 
here. The whole art is to efficiently couple them to
 
exploit modern computer architectures.
 
## Gravity
## Gravity
SWIFT uses the Fast Multipole Method to calculate gravitational forces between
SWIFT uses the Fast Multipole Method (FMM) to calculate gravitational
particles. As well as this self-gravity mode, we also make many useful external
forces between nearby particles. These forces are combined with
potentials available, such as a softened point mass and sine wave.
long-range forces provided by a mesh that captures both the periodic
nature of the calculation and the expansion of the simulated universe.
Gravtiational accuracy can be tuned through use of a standard 'opening angle',
SWIFT currently uses a single fixed but time-variable softening length
which is controlled at runtime in the parameterfile.
for all the particles.
## SPH Emulation Modes
As well as this self-gravity mode, we also make many useful external
potentials available, such as galaxy haloes or stratified boxes that
There are many hydrodynamics schemes implemented in SWIFT, and SWIFT is designed
are used in idealised problems.
such that it should be (relatively) simple for users to add their own. The three
main modes are as follows:
Gravitational accuracy can be tuned through use of the opening angle
 
and the choice of a multipole order for the short-range gravity
 
calculation. The mesh forces are controlled by the cell size and
 
frequency of the update.
 
 
## Cosmology
 
 
SWIFT implements a standard LCDM cosmology background expansion and
 
solves the equations in a comoving frame. We allow for equations of
 
state of dark-energy that evolve with scale-factor. The structure of
 
the code can easily allow for modified-gravity solvers or
 
self-interacting dark matter schemes to be implemented. These will be
 
part of future releases of the code.
 
 
Unlike other cosmological codes, SWIFT does not express quantities in
 
units of the reduced Hubble parameter. This reduces the possible
 
confusion created by this convention when using the data product but
 
requires users to convert their initial conditions (using a specific
 
mode of operation of SWIFT!) when taking them from a different code.
 
 
## Hydrodynamics Schemes
 
 
There are many hydrodynamics schemes implemented in SWIFT, and SWIFT
 
is designed such that it should be simple for users to add their
 
own.
 
 
All the schemes can be combined with a time-step limiter inspired by
 
the method of [Durier & Dalla Vecchia
 
2012](http://adsabs.harvard.edu/abs/2012MNRAS.419..465D), which is
 
necessary to ensure energy conservation in simulations that involve
 
sudden injection of energy such as in feedback events.
 
 
The four main modes are as follows:
 
 
### Minimal SPH
 
 
In this mode SWIFT uses the simplest energy-conserving SPH scheme that
 
can be written with no viscosity switches nor thermal diffusion
 
terms. It follows exactly the description in the review of the topic
 
by [Price 2012](http://adsabs.harvard.edu/abs/2012JCoPh.231..759P) and
 
is not optimised. This mode is used for education purposes or can
 
serve as a basis to help developers create other hydrodynamics
 
schemes.
### GADGET-2 SPH
### GADGET-2 SPH
SWIFT makes a 'backwards-compatible' GADGET-2 SPH mode, which uses a standard
SWIFT contains a 'backwards-compatible' [GADGET-2
[Monaghan 1977](http://adsabs.harvard.edu/abs/1977MNRAS.181..375G) artificial
SPH](http://adsabs.harvard.edu/abs/2002MNRAS.333..649S) mode, which
 
uses a standard [Monaghan
 
1977](http://adsabs.harvard.edu/abs/1977MNRAS.181..375G) artificial
viscosity scheme with a
viscosity scheme with a
[Balsara](https://www.ideals.illinois.edu/handle/2142/23836) switch. Note that
[Balsara](https://www.ideals.illinois.edu/handle/2142/23836)
the GADGET-2 SPH scheme is implemented to be the same as in the public release
switch. Note that the GADGET-2 SPH scheme is implemented to be the
of GADGET-2, rather than the equations as specified in the original paper, as
same as in the public release of GADGET-2. This is to enable users to
there are some differences. This is to enable users to use SWIFT as a drop-in
use SWIFT as a drop-in replacement for GADGET-2.
replacement for GADGET-2.
### Pressure-Entropy SPH
### Pressure-Entropy SPH
In SWIFT, the Pressure-Entropy and (in the future) Pressure-Energy schemes from
In SWIFT, the Pressure-Entropy and (in the future) Pressure-Energy
[Hopkins 2013](http://adsabs.harvard.edu/abs/2013MNRAS.428.2840H) are made
schemes from [Hopkins
available for use. These schemes use a weighting factor of either entropy or
2013](http://adsabs.harvard.edu/abs/2013MNRAS.428.2840H) are made
energy in the calculation of density, which has the effect of promoting mixing
available for use. These schemes use a weighting factor of either
and reducing spurious surface tensions that are present in a traditional
entropy or energy in the calculation of density, which has the effect
"Density-Entropy" scheme (such as the GADGET-2 one presented above).
of promoting mixing and reducing spurious surface tensions that are
 
present in a traditional "Density-Entropy" scheme (such as the GADGET-2 one
 
presented above). This scheme avoids artificial surface tension at contact
 
discontinuities and allows for better mixing between phases. This leads to much
 
better behaviour in cases such at the Kelvin-Helmholtz instabilities or the
 
infamous ['blob'
 
test](http://adsabs.harvard.edu/abs/2007MNRAS.380..963A).
### GIZMO (MFM)
### GIZMO (MFM)
Bert Vandenbrouke has also implemented a publicly-available GIZMO-like scheme
SWIFT can also use the GIZMO scheme ([Hopkins
([Hopkins 2015](http://adsabs.harvard.edu/cgi-bin/bib_query?arXiv:1409.7395))
2015](http://adsabs.harvard.edu/cgi-bin/bib_query?arXiv:1409.7395)),
in SWIFT. This promises higher-accuracy hydrodynamics, but with the natural
also know as 'SPH-ALE' outside of astrophysics. This scheme is a
adaptivity of SPH.
hybrid between a particle method and a finite volume method. Whilst
 
particles are used to represent the fluid, fluxes between them
 
are computed and exchanged using Riemann solvers and proper gradient
 
reconstruction. This allows for a much more accurate representation of
 
the physics without any ad-hoc switches for viscosity or thermal
 
diffusion but also comes at a higher computational cost.
 
 
<div class="videowrapper"><iframe width="100%" height="100%" src="https://www.youtube.com/embed/sce-AWTbXFI" frameborder="0" allowfullscreen></iframe>
 
</div>
 
 
## Subgrid models for galaxy formation
 
 
SWIFT implements two main models to study galaxy formation. These are
 
available in the public repository and different components (star
 
formation, cooling, feedback, etc.) can be mixed and matched for
 
comparison purposes.
 
 
### EAGLE model
 
 
The [EAGLE model](http://adsabs.harvard.edu/abs/2015MNRAS.446..521S)
 
of galaxy formation is available in SWIFT. This combines the cooling
 
of gas due to interaction with the UV and X-ray background radiation
 
of [Wiersma 2009](http://adsabs.harvard.edu/abs/2009MNRAS.393...99W),
 
the star-formation method of [Schaye
 
2008](http://adsabs.harvard.edu/abs/2008MNRAS.383.1210S), the stellar
 
evolution and gas enrichment model of [Wiersma
 
2009](http://adsabs.harvard.edu/abs/2009MNRAS.399..574W), feedback
 
from stars following [Dalla Vecchia
 
2012](http://adsabs.harvard.edu/abs/2012MNRAS.426..140D),
 
super-massive black-hole accretion following [Rosas-Guevara
 
2015](http://adsabs.harvard.edu/abs/2013arXiv1312.0598R) and
 
black-hole feedback following [Booth
 
2009](http://adsabs.harvard.edu/abs/2009MNRAS.398...53B). All these
 
modules have been ported from the Gadget-3 code to SWIFT and will
 
hence behave slightly differently.
 
 
### GEAR model
 
 
The [GEAR model](http://adsabs.harvard.edu/abs/2012ASPC..453..141R) is
 
available in SWIFT. This model uses the [GRACKLE
 
library](http://adsabs.harvard.edu/abs/2017MNRAS.466.2217S) for
 
cooling and is one of the many models that are part of the [AGORA
 
comparison
 
project](http://adsabs.harvard.edu/abs/2014ApJS..210...14K).
 
 
## Structure finder
 
 
SWIFT can be linked to the VELOCIraptor phase-space structure finder
 
to return haloes and sub-haloes while the simulation is running. This
 
on-the-fly processing allows for a much faster time-to-science than in
 
the classic method of post-processing simulations after they are run.
 
 
## Documentation and tests
There is a large amount of background reading material available in the
There is a large amount of background reading material available in the
theory directory provided with SWIFT. You will need pdflatex to build
theory directory provided with SWIFT. You will need pdflatex to build
@@ -54,9 +162,4 @@ use, the results of which are available on our developer Wiki
@@ -54,9 +162,4 @@ use, the results of which are available on our developer Wiki
[here](https://gitlab.cosma.dur.ac.uk/swift/swiftsim/wikis/hydro-tests).
[here](https://gitlab.cosma.dur.ac.uk/swift/swiftsim/wikis/hydro-tests).
## Paralleisation strategy
SWIFT uses a hybrid OpenMP + MPI paralellisation scheme with the
[QuickShed](https://gitlab.cosma.dur.ac.uk/swift/quicksched) tasking library.
This enables SWIFT to achieve near-perfect weak scaling (see next section).
Loading