Astrophysics Source Code Library

Making codes discoverable since 1999

Welcome to the ASCL

The Astrophysics Source Code Library (ASCL) is a free online registry for source codes of interest to astronomers and astrophysicists and lists codes that have been used in research that has appeared in, or been submitted to, peer-reviewed publications. The ASCL is indexed by the SAO/NASA Astrophysics Data System (ADS) and Web of Science and is citable by using the unique ascl ID assigned to each code. The ascl ID can be used to link to the code entry by prefacing the number with (i.e.,

Most Recently Added Codes

2019 Mar 14

[submitted] dfitspy: a dfits|fitsort implementation in python

The FITS format (Flexible Image Transport System) is a widely used format to store astronomical data. It is used to store a lot of different types of data such as 1D or 2D spectra, 3D data cubes. It has been developed in the late 1970 to reach its final form almost two decades ago. FITS files are built with two components. The data themselves are stored as tables and contains any types of data. A header is built containing set of keywords-value pairs aiming at describing the data themselves.

Accessing and displaying metadata inside FITS files is important in order to get an overview of their content properties without having to read the data themselves. It is particularly useful when dealing with large amount of files at once. Tools have been already publicly available for years with the dfits and fitsort algorithms (the documentation is available here The main limitation is that they are stand-alone programs useable only in a terminal. They can not be used natively inside another program.

The python module presented here, dfitspy, is a project that migrates the main dfits and fitsort capabilities to python. It is a metadata searcher/displayer for FITS files. As dfits and fitsort, dfitspy is able to display in the terminal the result of a metadata search and is able to grep certain values of keywords inside large samples of files. Therefore it can be used directly with the command line interface. Nevertheless, dfitspy can be, and it is its strength, imported as a python module and the user can use these functionnalities inside another python code or the python interpretor.

2019 Mar 07

[submitted] allesfitter: flexible star and exoplanet inference from photometry and radial velocity

We present allesfitter, a tool for flexible and robust inference of stars and exoplanets given photometric and radial velocity (RV) data. allesfitter offers a rich selection of orbital and transit models, accommodating multiple exoplanets, multi-star systems, star spots, stellar flares, and various noise models. It features both parameter estimation and model selection. A graphical user interface allows to specify input parameters, and to easily run a nested sampling or Markov Chain Monte Carlo (MCMC) fit, producing publication-ready tables, LaTex code, and plots. For all this, allesfitter provides an inference framework that unites the versatile packages ellc (light curve and RV models; Maxted 2016), aflare (flare model; Davenport et al. 2014), dynesty (static and dynamic nested sampling;, emcee (MCMC sampling; Foreman-Mackey et al. 2013) and celerite (Gaussian Process models; Foreman-Mackey et al. 2017). The code is publicly available at

2019 Mar 06

[submitted] PyP-BEAGLE: Python-based post-processing of the BEAGLE (BayEsian Analysis of GaLaxy sEds) code output

PyP-BEAGLE enables one to post-process the BEAGLE outputs to create different type of publication-quality plots, as well as to prepare LaTeX tables that can be included in scientific publications.

[submitted] BEAGLE: BayEsian Analysis of GaLaxy sEds

Beagle (for BayEsian Analysis of GaLaxy sEds) is a new-generation tool to model and interpret spectral energy distributions (SEDs) of galaxies. Beagle incorporates in a consistent way the production of radiation form stars and its transfer through the interstellar (ISM) and intergalactic media and it allows one to build mock galaxy catalogues as well as to interpret any combination of photometric and spectroscopic galaxy observations in terms of physical parameters. The current version of the tool includes versatile modelling of the emission from stars and photoionized gas, attenuation by dust and accounting for different instrumental effects, such as spectroscopic flux calibration and line spread function, while modules describing emission from dust and from an Active Galactic Nucleus (AGN), and emission and absorption from the neutral ISM are under development.

2019 Feb 28

[submitted] brutifus: a Python module to post-process datacubes from integral field spectrographs

brutifus contains a set of Python routines that can aid to post-process datacubes from integral field spectrographs. The spirit of brutifus is to deal with generic tasks with as little user interactions as possible: for example, the registration of a datacube WCS solution with the Gaia catalogue, the correction of Galactic reddening, or the subtraction of the nebular/stellar continuum on a spaxel-per-spaxel basis. brutifus is modular, in that the order in which the post-processing routines are run is entirely customizable.

2019 Feb 23

[ascl:1902.012] Specutils: Spectroscopic analysis and reduction

Specutils provides a basic interface for the loading, manipulation, and common forms of analysis of spectroscopic data. Its generic data containers and accompanying modules can be used to build a particular scientific workflow or higher-level analysis tool. It is an AstroPy (ascl:1304.002) affiliated package, and SpecViz (ascl:1902.011), which is built on top of Specutils, provides a visual, interactive interface to its analysis capabilities.

[ascl:1902.011] SpecViz: 1D Spectral Visualization Tool

SpecViz interactively visualizes and analyzes 1D astronomical spectra. It reads data from FITS and ASCII tables and allows spectra to be easily plotted and examined. It supports instrument-specific data quality handling, flexible spectral units conversions, custom plotting attributes, plot annotations, tiled plots, among other features. SpecViz includes a measurement tool for spectral lines for performing and recording measurements and a model fitting capability for creating simple (e.g., single Gaussian) or multi-component models (e.g., multiple Gaussians for emission and absorption lines in addition to regions of flat continua). SpecViz is built on top of the Specutils (ascl:1902.012) Astropy-affiliated python library, providing a visual, interactive interface to the analysis capabilities in that library.

2019 Feb 22

[ascl:1902.010] dyPolyChord: Super fast dynamic nested sampling with PolyChord

dyPolyChord implements dynamic nested sampling using the efficient PolyChord (ascl:1502.011) sampler to provide state-of-the-art nested sampling performance. Any likelihoods and priors which work with PolyChord can be used (Python, C++ or Fortran), and the output files produced are in the PolyChord format.

[ascl:1902.009] ExPRES: Exoplanetary and Planetary Radio Emissions Simulator

ExPRES (Exoplanetary and Planetary Radio Emission Simulator) reproduces the occurrence of CMI-generated radio emissions from planetary magnetospheres, exoplanets or star-planet interacting systems in time-frequency plane, with special attention given to computation of the radio emission beaming at and near its source. Physical information drawn from such radio observations may include the location and dynamics of the radio sources, the type of current system leading to electron acceleration and their energy and, for exoplanetary systems, the magnetic field strength, the orbital period of the emitting body and the rotation period, tilt and offset of the planetary magnetic field. Most of these parameters can be remotely measured only via radio observations. ExPRES code provides the proper framework of analysis and interpretation for past (Cassini, Voyager, Galileo), current (Juno, ground-based radio telescopes) and future (BepiColombo, Juice) observations of planetary radio emissions, as well as for future detection of radio emissions from exoplanetary systems.

[ascl:1902.008] Radynversion: Solar atmospheric properties during a solar flare

Radynversion infers solar atmospheric properties during a solar flare. The code is based on an Invertible Neural Network (INN) that is trained to learn an approximate bijective mapping between the atmospheric properties of electron density, temperature, and bulk velocity (all as a function of altitude), and the observed Hα and Ca II λ8542 line profiles. As information is lost in the forward process of radiation transfer, this information is injected back into the model during the inverse process by means of a latent space; the training allows this latent space to be filled using an n-dimensional unit Gaussian distribution, where n is the dimensionality of the latent space. The code is based on a model trained by simulations made by RADYN, a 1D non-equilibrium radiation hydrodynamic model with good optically thick radiation treatment that does not consider magnetic effects.