Skip to content
Snippets Groups Projects

Astronomer

Want to get started using SWIFT? Check out the on-boarding guide available here. SWIFT can be used as a replacement for different codes and initial conditions in hdf5 format from commonly used generators can directly be read by SWIFT. All you then need is a parameter file 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

SWIFT uses the Fast Multipole Method (FMM) to calculate gravitational forces between nearby particles. These forces can be combined with long-range forces provided by a mesh that captures the periodic nature of the calculation. SWIFT currently uses a single fixed but time-variable softening length for all the particles.

As well as this self-gravity mode, we also make many useful external potentials available, such as galaxy haloes or stratified boxes that are used in idealised problems.

Besides softening, gravitational accuracy can be tuned through use of the adaptive 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 variations.

All the schemes can be combined with a time-step limiter inspired by the method of Durier & Dalla Vecchia 2012, 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:

SPHENIX SPH

This is our default Smoothed Particle Hydrodynamics scheme. It is fully described by Borrow 2022. The core equations use a density-energy formulation of the equations of motion. This is combined with a variable artificial viscosity and conduction. These are accompanied by limiters to only apply these extra terms where they are necessary. This scheme was designed with galaxy formation applications in mind.

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 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

SWIFT contains a 'backwards-compatible' GADGET-2 SPH mode, which uses a standard Monaghan 1977 artificial viscosity scheme with a Balsara switch. Note that the GADGET-2 SPH scheme is implemented to be the same as in the public release of GADGET-2. This is to enable users to use SWIFT as a drop-in replacement for GADGET-2 and of course for comparison exercises!

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 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, the star-formation method of Schaye 2008, the stellar evolution and gas enrichment model of Wiersma 2009, feedback from stars following Dalla Vecchia 2012, super-massive black-hole accretion following Rosas-Guevara 2015 and black-hole feedback following Booth 2009. All these modules have been ported from the Gadget-3 code to SWIFT and will hence behave slightly differently.

GEAR model

The GEAR model is available in SWIFT. This model uses the GRACKLE library for cooling and is one of the many models that are part of the AGORA comparison project.

The following movie shows a dwarf galaxy done with our model using the zoom in technique. The gas is shown in blue, the stars in yellow and the dark matter in orange. The dwarf galaxy corresponds to h159 in Revaz & Jablonka 2018.

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 theory directory provided with SWIFT.

SWIFT also provides a large library of hydrodynamical test cases for you to use, the results of which are available on our developer Wiki here.