RELXILL_NK is a relativistic reflection model for testing Einstein’s theory of general relativity with black holes [1,2]. It is an extension of the RELXILL package [3,4] to non-Kerr spacetimes.

The study of the reflection spectrum of accretion disks around black holes is potentially a powerful tool to probe the strong gravity region of these objects. RELXILL_NK can calculate the reflection spectrum of accretion disks in parametric black hole spacetimes. Some “deformation parameters” quantify possible deviations from the Kerr background. From the comparison of X-ray data of astrophysical black holes with the theoretical predictions of RELXILL_NK we can measure these deformation parameters and check whether they vanish, as it would be required by general relativity.

The current public version of RELXILL_NK is 1.3.2 and employs the Johannsen metric with the deformation parameters alpha13 and alpha22 [5]. The model and the associated FITS files can be downloaded from one of the following servers:

Server at Fudan University (China):

Server at the University of Tuebingen (Germany):

Support: relxill_nk[at]

[1] Bambi et al., ApJ 842, 76 (2017)
[2] Abdikamalov et al., arXiv:1902.09665
[3] Garcia et al., ApJ, 782, 76 (2014)
[4] Dauser et al., MNRAS, 444, 100 (2014)
[5] Johannsen, PRD 88, 044002 (2013)

New code: EFTofPNG (version 1.0)

EFTofPNG is a public Mathematica code for high precision Feynman computation in the Effective Field Theory of Post-Newtonian Gravity. The code covers the current state of the art PN accuracy including spinning components in the merging compact binaries. Its final unit computes observables useful for the waveform modelling, and serves as a pipeline chain for the wave templates.

This package was created in view of the timely need to publicly share automated computation tools, which integrate the various types of physics manifested in the expected increasing influx of gravitational waves data.

The code is available as a public repository in GitHub.

We aimed for a code accessible to the classical Gravity community, yet of possible use to the broader community.


The SageManifolds project aims at extending the modern computer algebra system SageMath ( towards differential geometry and tensor calculus. All SageManifolds code is included in SageMath (from version 7.5), so that it does not require any separate installation. Key features of SageMath are
– being fully open-source
– using the Python language
– embarquing many high-quality tools of the Python ecosystem (NumPy, SymPy, SciPy, Matplotlib, etc.) and beyond (Maxima, R, GAP, GSL, etc.)
– running in the powerful Jupyter Notebook (

SageManifolds is devoted to explicit tensor calculus (as opposed to “abstract tensor calculus”): the dimension of the manifold must be specified and some atlas must be provided. SageManifolds 1.3 functionalities include
– topological manifolds: charts, open subsets, maps between manifolds, scalar fields
– differentiable manifolds: tangent spaces, vector frames, tensor fields, curves, pullback and pushforward operators
– standard tensor calculus (tensor product, contraction, symmetrization, etc.), even on non-parallelizable manifolds
– taking into account any monoterm tensor symmetry
– exterior calculus (wedge product, exterior derivative, Hodge duality)
– Lie derivatives of tensor fields
– affine connections (curvature, torsion)
– pseudo-Riemannian metrics
– numerical computation of geodesics
– some plotting capabilities (charts, points, curves, vector fields)
– submanifolds and their extrinsic geometry

See for examples of use, in particular in the context of general relativity.

GRTensorIII for Maple

GRTensorIII is a Maple package for component calculations in General Relativity. It is now available for free download from It provides a number of useful features:
– interactive entry of spacetime metrics (including basis and NP formats)
– large number of standard tensor definitions (curvature tensors, vector field expansion/shear, scalar invariants)
– a powerful mechanism to define new tensor objects (grdef) without programming
– commands to simplify and extract component values

GRTensorIII is provided as a standard Maple package. It has been tested with Maple 2015 and 2016.

GRTensorIII is an update of the package GRTensorII developed by Peter Musgrave, Denis Pollney and Kayll Lake in the 1990s. GRTensorII has continued to be used by relativists and this update brings the package in line with “modern” Maple versions and fixes some platform-specific issues on MacOS. Most of the original code has been retained, with changes to allow it be released as a Maple module in a single package.

Peter Musgrave would like to thank Maple Software for the donation of Maple licenses. Thanks also to Eric Poisson for beta testing.

Peter Musgrave
Denis Pollney
Kayll Lake


DifferentialGeometry in Maple

DifferentialGeometry (DG) is a Maple software package which symbolically performs fundamental operations of calculus on manifolds, differential geometry, tensor calculus, Lie algebras, Lie groups, transformation groups, jet spaces, and the variational calculus.

At present, the DG software contains approximately 300 commands, divided into 5 packages. The main DG package contains all the commands for what is often referred to as calculus on manifolds – basic operations with vector fields, differential forms and transformations. The Tensor package contains an extensive set of commands for general algebraic and differential tensor operations as well as commands for specialized computations in general relativity. The Lie algebra package provides commands for creating and manipulating Lie algebras, for calculating various sub-algebras and automorphism groups, and for checking properties of Lie algebras and sub-algebras. The GroupActions package provides functionalities for the symbolic analysis of Lie groups and group actions. The JetCalculus package provides the basis for studying differential equations and the calculus of variations. Finally, the Library package contains tables of Lie algebras, group actions, differential equations and solutions of the Einstein equations. The DG software also contains many utilities to support the creation of new specialized software applications.

Additional information, particularly worksheets which demonstrate functionality, provide code, support reseach results, etc. can be found at the DifferentialGeometry website:

SimulationTools for Mathematica

15th August 2013

We present “SimulationTools for Mathematica” <>, available as free software under the GNU General Public License. SimulationTools is a Mathematica application for analysing data from numerical simulations. It has a modular design applicable to general grid-based numerical simulations, and contains specific support for the Cactus code, with a focus on the field of Numerical Relativity and the Einstein Toolkit.

SimulationTools provides a functional, programmable interface to simulation data. A highly-optimised HDF5 module can be used for reading HDF5 data from production simulations, including 1D, 2D and 3D grid data produced by the Carpet code. Simulation details such as filenames, file formats, and details of parallel I/O are hidden from the user.

Numeric data with attached coordinate information is manipulated using new data types. Many useful new functions are defined on these types, and most built-in numerical Mathematica functions such as +, -, *, /, Abs, Sin, Log and Max can be used transparently. There is also support for testing numerical convergence, with automatic resampling onto a common grid if desired.

SimulationTools has generic functionality useful for analysis of many types of data, as well as explicit support for codes including Cactus, Carpet, Llama, SimFactory and many other components of the Einstein Toolkit. It provides an overview of the state of a simulation, including speed, memory usage, and physics (e.g. trajectories and waveforms from a binary system). The design is modular, and support for output from other codes can be added.

Specific functionality for Numerical Relativity is available. Gravitational waveforms can be read from simulations using natural function semantics, and the waveforms can be manipulated, for example converting between Psi4 and strain and extrapolation to infinity. An abstraction for “binary systems” provides a convenient interface to the trajectories of members of a binary system tracked with codes from the Einstein Toolkit. Support for reading black hole masses and spins is also included. Data in the Numerical Relativity Data Format (as used in the NINJA and NR-AR projects) can be read using the same functions that are used for normal simulation data.

More details are available on the SimulationTools website <>, including an extensive feature summary, a list of capabilities and online documentation <>. Tutorials and reference documentation are also available within the standard Mathematica documentation system. Code quality is maintained to a high standard with ~400 unit tests.

SimulationTools has been in production use for over 5 years and has been used at several research institutions worldwide. We invite you to try out the code  <>, join the mailing list <> and freely use SimulationTools for your research.

Ian Hinder and Barry Wardell

Llama Multi-Block Infrastructure

The Llama code is a 3-dimensional multiblock infrastructure with adaptive mesh-refinement for Cactus based on Carpet. It provides different patch systems that cover the simulation domain by a set of overlapping patches. Each of these patches has local cooordinates with a well-defined relation to global Cartesian coordinates. However, all computations are carried out using a global Cartesian tensor basis such that complicated tensor transformations between patch systems can be avoided. Information between the different patches is communicated via interpolation in the overlap zones.

The main field of application is currently numerical relativity, and especially the full non-linear 3-dimensional evolution of binary black hole mergers, stellar core-collapse and computation of the associated gravitational-wave signatures.

With topologically spherical grids in the wave-zone, it is possible to resolve the gravitational waves with high accuracy, while at the same time employing Cartesian adaptive mesh refinement grids around the black holes to provide a well established discretized representation of the strong field region.

Einstein Toolkit

The Einstein Toolkit is a collection of software components and tools for simulating and analyzing general relativistic astrophysical systems. Such systems include gravitational wave space-times, collisions of compact objects such as black holes or neutron stars, accretion onto compact objects, core collapse supernovae and Gamma-Ray Bursts.

The Einstein Toolkit builds on numerous software efforts in the numerical relativity community including CactusEinstein, Whisky, and Carpet. The Einstein Toolkit currently uses the Cactus Framework as the underlying computational infrastructure that provides large-scale parallelization, general computational components, and a model for collaborative, portable code development.

The Toolkit includes a set of mix-and-match components (or Thorns) that support the development of codes for relativistic astrophysics. A number of full examples provide prototype, production examples of complete astrophysical codes including black hole spacetimes and relativistic hydrodynamical spacetimes. There is also a step-by-step tutorial for new users.


LORENE is a set of C++ classes to solve various problems arising in numerical relativity, and more generally in computational astrophysics. It provides tools to solve partial differential equations by means of multi-domain spectral methods.

Relativistic Figures of Equilibrium

The codes available at this link allow to compute accurate solutions of relativistic figures of equilibrium (either spheroidal or toroidal). The codes are part of the book “Relavistic Figures of Equilibrium” by Reinhard Meinel, Marcus Ansorg, Andreas Kleinwächter, Gernot Neugebauer and David Petroff, Cambridge University Press 2008.

Rapidly Rotating Neutron Star (RNS)

RNS is a code written by Nikolaos Stergioulas which constructs models of rapidly rotating, relativistic, compact stars using tabulated equations of state which are supplied by the user. Please direct questions about this program to either Sharon Morsink or Nikolaos Stergioulas.

The code is based on the method developed by Komatsu, Eriguchi & Hachisu (1989) and modifications introduced by Cook, Shapiro & Teukolsky (1994). It can compute individual models as well as sequences of fixed mass, rest mass, angular velocity or angular momentum models. All models assume uniform rotation. You can read more about this code in Stergioulas and Friedman (1995) and in Nozawa, Stergioulas, Gourgoulhon & Eriguchi (1998) and references therein.


Whisky is a code to evolve the equations of general relativistic hydrodynamics (GRHD) and magnetohydrodynamics (GRMHD) in 3D Cartesian coordinates on a curved dynamical background. It was originally developed by and for members of the EU Network on Sources of Gravitational Radiation and is based on the Cactus Computational Toolkit. Whisky can also implement adaptive mesh refinement (AMR) if compiled together with Carpet.


Carpet is an adaptive mesh refinement and multi-patch driver for the Cactus Framework. Cactus is a software framework for solving time-dependent partial differential equations on block-structured grids, and Carpet acts as driver layer providing adaptive mesh refinement, multi-patch capability, as well as parallelisation and efficient I/O.


Cactus is an open source problem solving environment designed for scientists and engineers. Its modular structure easily enables parallel computation across different architectures and collaborative code development between different groups. Cactus originated in the academic research community, where it was developed and used over many years by a large international collaboration of physicists and computational scientists.

The name Cactus comes from the design of a central core (or “flesh”) which connects to application modules (or “thorns”) through an extensible interface. Thorns can implement custom developed scientific or engineering applications, such as computational fluid dynamics. Other thorns from a standard computational toolkit provide a range of computational capabilities, such as parallel I/O, data distribution, or checkpointing.

Cactus runs on many architectures. Applications, developed on standard workstations or laptops, can be seamlessly run on clusters or supercomputers. Cactus provides easy access to many cutting edge software technologies being developed in the academic research community, including the Globus Metacomputing Toolkit, HDF5 parallel file I/O, the PETSc scientific library, adaptive mesh refinement, web interfaces, and advanced visualization tools.