Shadowfax is a simulation code aimed at simulations of galaxy formation and evolution, which contains the necessary physics to integrate a mixture of gas and a collisionless component (dark matter, stars…) under the influence of gravity and hydrodynamics.
To carry out the hydrodynamical integration, Shadowfax uses a moving mesh method, whereby the computational domain is discretized using an unstructured Voronoi mesh, which moves along with the flow. The integration itself is done using a classic finite volume method: the hydrodynamic quantities (density, flow velocity and pressure) are converted into conserved variables for each (unstructured) cell (mass, momentum and energy), and the time evolution of the system is given by a flux exchange between cells. To incorporate the necessary physical solutions into the integration method, fluxes at the faces are estimated using the solution of a local Riemann problem, which encapsulates all physical solutions of the Euler equations. To provide second order accuracy in space and time, a MUSCL-Hancock type gradient reconstruction step is added to this integration scheme.
The gravitational interaction is handled using a classic tree N-body integrator, and is a heavily rewritten version of the gravity solver of Gadget-21, which employs C++ templates to increase readability and code reuse.
Shadowfax contains an auxiliary program to generate initial conditions, based on the block-based initial condition specification format of RAMSES2, as well as an auxiliary program to convert snapshot files into .vtk-files that can be easily visualized.
Shadowfax is free software: anyone can use and edit it, and distribute copies of the software. This is ensured by the GNU Affero General Public License. Furthermore, Shadowfax is written in modular, object-oriented C++, and should be easily extendible. All this ensures that anyone who wishes can edit and use Shadowfax without contacting us. However, we would much appreciate it if you tell us about your Shadowfax adventures, and if you would cite the Shadowfax code paper3. The code itself can be downloaded from the Shadowfax github repository.
On this website, you can find more information about Shadowfax: the latest news about new results or features, a gallery with images and movies illustrating the capabilities of the code, initial conditions and parameter files for a number of test problems, and a list of publications about Shadowfax or research conducted using Shadowfax.