Codes
List of software which might be useful in star cluster research.
(list taken from https://iaub1commission.github.io/index/resources/ and updated)
Agama
- Description: Agama is a software package for stellar dynamics, providing tools for working with gravitational potentials, orbits, action-angle coordinates, distribution functions, self-consistent models and more.
- Home page: Agama
- Leader: Eugene Vasiliev
- Reference paper(s):
- Laguages: C++, Python
- License: MIT, GPL
- Other: Github, public
AMUSE
- Description: AMUSE is the Astrophysical Multipurpose Software Environment
- Home page: AMUSE
- Leader: Portegies Zwart, Simon
- Reference paper(s): Portegies Zwart, S. 2018
- Laguages: Python, C++, Fortran
- License: Apache License (v2.0)
- Other: Github, public
Arepo
- Description: Arepo is a massively parallel gravity and magnetohydrodynamics code for astrophysics, designed for problems of large dynamic range. It employs a finite-volume approach to discretize the equations of hydrodynamics on a moving Voronoi mesh, and a tree-particle-mesh method for gravitational interactions. Arepo is originally optimized for cosmological simulations of structure formation, but has also been used in many other applications in astrophysics.
- Home page: AMUSE
- Leader: Volker Springel,Ruediger Pakmor,Rainer Weinberger
- Reference paper(s): Springel V.2010, Pakmor, R. et al 2016, Weinberger, R. et al. 2019
- Laguages: C
- License: GNU, GLPv3
- Other: Github, public
AstroBEAR
- Description: AstroBEAR is a parallelized hydrodynamic/MHD simulation code suitable for a variety of astrophysical problems. Derived from the BearCLAW package written by Sorin Mitran, AstroBEAR is designed for 2D and 3D adaptive mesh refinement (AMR), multiphysics simulations.
- Home page: AMUSE
- Leader: Adam Frank, Department of Physics and Astronomy (Rochester)
- Reference paper(s): Cunningham et al.2009, Carroll-Nellenback J. J. et al. 2013
- Laguages: Fortran
- License: GNU GPLv3
- Other: Web, registration needed
A-SLOTH
- Description: A-SLOTH (Ancient Starts and Local Observables by Tracing Halos) is a versatile semi-analytical model to simulate the formation of the first stars and galaxies.
- Home page:
- Leader: Tilman Hartwig
- Reference paper(s): Hartwig, Tilman et al. 2022, Magg, Mattis, Hartwig, Tilman et al. 2022
- Laguages: Fortran90, Python
- License: MIT
- Other: Github, public
Athena++
- Description: Grid-based adaptive mesh refinement (AMR) code for hydrodynamics, magnetohydrodynamics (MHD), and special and general relativistic MHD including other physics such as particles, self-gravity, chemistry, and radiation transport.
- Home page:
- Leader: James Stone (Princeton)
- Reference paper(s): Stone et al. (2019, in preparation)
- Laguages: C++
- License: BSD 3-Clause
- Other: Web, public
BHAC
- Description: BHAC (the Black Hole Accretion Code) is a multidimensional general relativistic magnetohydrodynamics code basedon the MPI-AMRVAC framework. BHAC solves the equations of ideal general relativistic magnetohydrodynamics in one, two or three dimensions on arbitrary stationary space-times, using an efficient block based adaptive mesh refinement approach.<\details>
- Home page:
- Leader: Oliver Porth, Hector Olivares and the BHAC developer team
- Reference paper(s): Porth, O. et al. 2017, Olivares, H. et al. 2019
- Laguages: Fortran 90
- License: GNU GPLv3
- Other: Web, public
CMC
- Description: CMC is a Monte Carlo technique for stellar dynamics, based on an aproach developed by Hénon in 1971. Instead of integrating the force of every particle on every other particle, Hénon’s approach was to model the effect of many two-body encounters as single “effective” encounters.
- Home page: CMC
- Leader: Carl Rodriguez
- Reference paper(s): Joshi et al. 2000, Pattabiraman et al. 2013, Rodriguez et al. 2022
- Laguages: C
- License: open-source
- Other: github, public
FARGO3D
- Description: FARGO3D is a versatile multifluid HD/MHD code that runs on clusters of CPUs or GPUs, with special emphasis on protoplanetary disks
- Home page:
- Leader: Pablo Benitez-Llambay, Frederic Masset, Leonardo Krapp
- Reference paper(s): Benitez-Llambay, Pablo et al.2016,2019(ApJS, submitted.)
- Laguages: C, CUDA
- License: GNU GPL
- Other: Bitbucket, public
FDPS
- Description: FDPS (Framework for Developing Particle Simulators) is a general-purpose, high-performance library for particle simulations. The current version is 5.0b.
- Home page:
- Leader: Iwasawa et al. 2016, RIKEN Center for Computational Science, Particle Simulator Research Team
- Reference paper(s):
- Laguages: C++
- License: MIT
- Other: Github, public
GAMER
- Description: GAMER is a GPU-accelerated adaptive mesh refinement code for astrophysics. It features extremely high performance and parallel scalability and supports a rich set of physics modules, including hydrodynamics, MHD, self-gravity, particles, chemistry, radiative processes, and wave (fuzzy) dark matter.
- Home page:
- Leader: Hsi-Yu Schive (Taiwan)
- Reference paper(s): Schive et al.2018, ②2010, ③2018
- Laguages: C++, CUDA
- License: BSD 3-Clause
- Other: Github, public
Gadget-2
- Description: GADGET is a code for cosmological N-body/SPH simulations on massively parallel computers with distributed memory. GADGET uses an explicit communication model that is implemented with the standardized MPI communication interface. The code can be run on essentially all supercomputer systems presently in use, including clusters of workstations or individual PCs. GADGET computes gravitational forces with a hierarchical tree algorithm (optionally in combination with a particle-mesh scheme for long-range gravitational forces) and represents fluids by means of smoothed particle hydrodynamics (SPH). The code can be used for studies of isolated systems, or for simulations that include the cosmological expansion of space, both with or without periodic boundary conditions. In all these types of simulations, GADGET follows the evolution of a self-gravitating collisionless N-body system, and allows gas dynamics to be optionally included. Both the force computation and the time stepping of GADGET are fully adaptive. GADGET can therefore be used to address a wide array of astrophysically interesting problems, ranging from colliding and merging galaxies, to the formation of large-scale structure in the Universe. With the inclusion of additional physical processes such as radiative cooling and heating, GADGET can also be used to study the dynamics of the gaseous intergalactic medium, or to address star formation and its regulation by feedback processes.
- Home page:
- Leader: Volker Springel (MPA)
- Reference paper(s): Springel 2005
- Laguages: C
- License: GNU GPLv2
- Other: Web, public
GIZMO
- Description: GIZMO is a flexible, massively-parallel, multi-physics simulation code. The code lets you solve the fluid equations using a variety of different methods – whatever is best for the problem at hand. It introduces new Lagrangian Godunov-type methods that allow you to solve the fluid equations with a moving particle distribution that is automatically adaptive in resolution and avoids the advection errors, angular momentum conservation errors, and excessive diffusion problems that limit the applicability of “adaptive mesh” (AMR) codes, while simultaneously avoiding the low-order errors inherent to simpler methods like smoothed-particle hydrodynamics (SPH). Meanwhile, self-gravity is solved fast, with fully-adaptive gravitational softenings. And the code is massively parallel — it has been run on everything from a Mac laptop to > 1 million CPUs on national supercomputers. It includes a variety of physics including magnetohydrodynamics, self-gravity, cosmology, radiative heating/cooling, radiation-hydrodynamics, sink particles, star and black hole formation and “feedback”, anisotropic conduction and viscosity, turbulent eddy diffusion, dust/particulate dynamics, non-standard dark matter and dark energy models, elastic and plastic dynamics, giant impact/material models, shearing boxes and large-eddy/driven-turbulent boxes, and more.
- Home page:
- Leader: Philip F. Hopkins (Caltech)
- Reference paper(s): Hopkins et al. 2015
- Laguages: C
- License: GNU GPL
- Other: Bitbucket, public
HARM-COOL
- Description: GR MHD code to simulate black hole accretion with optional nuclear Equation of State and neutrino cooling. MPI-parallelized, 3D simulation of accretion and jet ejection in the Kerr metric around rotating black hole, in case of the gamma-ray burst engine, is its main application.The code was built upon the HARM-2D General Relativistic scheme for magneto-hydrodynamical simulations for black hole accretion (Gammie et al. 2003). It was extensively upgraded and supplied with novel functionality. The EOS functions are computed for the Fermi Gas of free proton, neutron, electron-positron, under arbitrary degeneracy (Yuan 2005). Tables with the equation of state and neutrino cooling are tabulated in the function of temperature and density and dynamically stored during the simulation. The physical units adopted in the code are scaled with the black hole mass and density scale in the accretion disk. The interpolation over EOS tables is implemented within the conversion scheme between conserved and primitive variables in GR MHD solver. In addition, code makes use of the tracer particles, and stores output on them for the subsequent post-processing of the r-process nucleosynthesis. Output formats in current version are ASCII and HDF5.This version, as of 2020, was developed since 2012, by Agnieszka Janiuk, Ireneusz Janiuk, and Kostas Sapountzis. From our website one can download .zip with sources, sample initail condition, and sample makefile. One can find there also the README file with technical details.
- Home page:
- Leader: Agnieszka Janiuk
- Reference paper(s): Yuan Y.-F. ①2005, Janiuk A. et al. ①2007, ②2013, ③2018, ④2019 Janiuk A. ①2017
- Laguages: C++, Fortran90
- License: GPLv3, LGPLv3
- Other: Web, public
Icarus
- Description: 3D MHD heliospheric modelling tool covering domain from 0.1 AU to 2 AU. Icarus simulates solar wind and Coronal Mass Ejections in the co-rotating frame with the Sun.
- Home page:
- Leader: Tinatin Baratashvili, Stefaan Poedts
- Reference paper(s): Baratashvili, T. et al. ①2023, Baratashvili, T. et al. ①2022, Verbeke, C. et al. ①2022
- Laguages: Fortran90
- License: GNU, GPLv3
- Other: Github, public
K-Athena
- Description: A performance portable version (using Kokkos ) of Athena++ for structured grid (magnetohydro)dynamics simulations on any architecture (CPUs, KNLs, GPUs, …)
- Home page:
- Leader: Philipp Grete, Forrest Glines, and B. W. O’Shea. Michigan State University
- Reference paper(s): Grete, Glines, and O’Shea (under review)
- Laguages: C++
- License: BSD 3-Clause
- Other: Github
Legolas
- Description: Legolas is a finite element code for MHD spectroscopy of 1D Cartesian/cylindrical equilibria with flow that balance pressure gradients, gravity and Lorentz forces.
- Home page:
- Leader: Niels Claes, Jordi De Jonghe, Rony Keppens
- Reference paper(s): Niels Claes, Jordi De Jonghe, and Rony Keppens 2020
- Laguages: Fortran, Python
- License: GNU GPL v3
- Other: Github
MPI-AMRVAC
- Description: A generic tool for block-grid-adaptive simulations of your favourite system of PDEs, in any dimensionality. This includes hydro, MHD, reaction-diffusion, …)
- Home page:
- Leader: Rony Keppens and collaborator
- Reference paper(s): R. Keppens ①2020, J. Teunissen ①2019, C. Xia ① 2018, O. Porth ①2014
- Laguages: Fortran 90
- License: GNU GPL v3.0
- Other: Github, public
Nbody6++GPU
- Description: This code is designed to simulate large collisional N-body systems (star clusters), including the accurate treatment of binary and few-body dynamics. The single and binary stellar evolutions codes, SSE/BSE, are implemented. The time-evolving external tidal fields based on tidal tensor methods are imported from NBODY6TT as an optional package.
- Home page:
- Leader: Long Wang & Rainer Spurzem, SilkRoad Team and DRAGON project
- Reference paper(s): Wang et al. 2015
- Laguages: FORTRAN 77, C++, CUDA
- License: MIT
- Other: Github, public
Optab
- Description: Public Fortran90 code package for generating ideal-gas opacity tables for radiation hydrodynamics simulations
- Home page:
- Leader: Shigenobu Hirose (JAMSTEC)
- Reference paper(s): Hirose et al., Hirose et al.
- Laguages: Fortran 90
- License: GPL-3.0
- Other: Github, public
Pencil Code
- Description: A high-order finite-difference code for compressible hydrodynamic flows with magnetic fields and particles.
- Home page:
- Leader: The 14 owners of the code
- Reference paper(s): CRA Data Management et al. 2014
- Laguages: Fortran 90
- License: GPLv2
- Other: Github, public
PeTar
- Description: The high-performance N-body code is designed for modeling massive collisional stellar systems, featuring accurate orbital evolution of multiple systems (binaries, triples), comprehensive stellar evolution (single and binary using BSE based packages), and inclusion of a galactic potential using Galpy.
- Home page:
- Leader: Long Wang, Masaki Iwasawa, Keigo Nitadori and Junichiro Makino
- Reference paper(s): Long Wang et al. 2020
- Laguages: C++, Fortran, Cuda (GPU), Python
- License: MIT License
- Other: Github, public
PHANTOM
- Description: Phantom is a 3D Smoothed Particle Hydrodynamics and Magnetohydrodynamics code for astrophysics. It was written and developed by Daniel Price with contributions from many others. It is designed to be a fast 3D SPH code with a low memory footprint, for production runs. Physics includes hydro, MHD, multigrain dust, self-gravity and sink particles.
- Home page:
- Leader: Daniel Price (Monash)
- Reference paper(s): Price et al. 2018
- Laguages: Fortran 95/2008
- License: GPLv3 + must cite code paper + redistri-butions must include “Phantom” in code name
- Other: Web,Github, public
PION
- Description: PION is a grid-based fluid dynamics code for hydrodynamics and magnetohydrodynamics code. It also includes a ray-tracing module for calculating the attenuation of radiation from point sources of ionizing photons. The code also has a module for coupling fluid dynamics and the radiation field to microphysical processes such as heating/cooling and ionization/recombination.
- Home page:
- Leader: Jonathan Mackey (DIAS)
- Reference paper(s): Mackey et. al. 2021, Mackey and Lim 2010
- Laguages: C++
- License: BSD 3-Clause License
- Other: Public Download
PLUTO
- Description: PLUTO is a freely-distributed software for the numerical solution of mixed hyperbolic/parabolic systems of partial differential equations.
- Home page: PLUTO
- Leader: Andrea Mignone and the PLUTO code development team
- Reference paper(s): Mignone et. al. 2007
- Laguages: C
- License: GNU, GPL
- Other: Public Download
RADMC-3D
- Description: RADMC-3D is a highly flexible diagnostic radiative transfer code for “postprocessing” models to compute predictions for observable images and spectra. It is not a “model” itself, but a code with which the observational appearance of models can be computed. These “input models” can be e.g. the results from hydrodynamic simulations or parameterized density distributions. Typical applications are protoplanetary disks, AGN tori, molecular clouds, ISM turbulence etc.
- Home page:
- Leader: Cornelis Dullemond
- Reference paper(s): Dullemond, C. P. et al. 2012
- Laguages: Fortran90, with Python interface.No knowledge of Fortran90 is necessary.
- License: Scientific use permitted, as long as website and/or reference is cited in resulting publication.
- Other: Web, public
RAMSES
- Description: RAMSES is an open source code to model astrophysical systems, featuring self-gravitating, magnetised, compressible, radiative fluid flows. It is based on the Adaptive Mesh Refinement (AMR) technique on a fully-threaded graded octree. RAMSES is written in Fortran 90 and is making intensive use of the Message Passing Interface (MPI) library.
- Home page:
- Leader: Romain Teyssier (Zürich)
- Reference paper(s): Teyssier et al. 2002,2006,2006
- Laguages: Fortran 90, MPI Library
- License: CeCILL
- Other: Bitbucket, public
REBOUND
- Description: REBOUND is an N-body integrator, i.e. a software package that can integrate the motion of particles under the influence of gravity. The particles can represent stars, planets, moons, ring or dust particles. REBOUND is very flexible and can be customized to accurately and efficiently solve many problems in astrophysics.
- Home page:
- Leader: Hanno Rein, Daniel Tamayo, David S. Spiegel (Toronto)
- Reference paper(s): Rein et al.2012,2014,2015
- Laguages: C, Python
- License: GNU GPLv3
- Other: Github, public