SIMPUT - Simulation input

The SIMPUT (SIMulation inPUT) file format developed by Schmid et al. (2013) is a FITS-based standard for handling source descriptions for simulations of astronomical observations. It is optimized for X-Ray telescopes but can be used for different energy regimes. You can find examples of such SIMPUT files below.

SIMPUT format description
Example Simput Files

SIMPUT format description

A SIMPUT file describes one or more sources by information about position, flux and energy spectrum as well as optional spatial flux distribution ("images") and timing information ("lightcurves"). The description on this page aims to give an overview on the format. For more details, unit conventions and examples please refer to the format definition document.

The core of each SIMPUT description is contained in the "Source Catalog", which is a binary table FITS extension called SRC_CAT. Each row in this table specifies one simulated source. The table has the following columns:

  • SRC_ID    (required)
  • SRC_NAME  (optional)
  • RA         (required)
  • DEC        (required)
  • IMGROTA   (optional)
  • IMGSCAL   (optional)
  • E_MIN     (required)
  • E_MAX     (required)
  • FLUX      (required)
  • SPECTRUM (required)
  • IMAGE     (optional)
  • TIMING    (optional)
Columns marked as (optional) need not to be filled.

The values of E_MIN and E_MAX define a reference energy band in which the integrated spectrum of the source has a flux of FLUX. The latter value is used to rescale the spectrum referenced by the FITS Extended Filename Syntax expression contained in the string SPECTRUM (this approach allows to reuse the same spectral shape for several sources, as is necessary, e.g., when simulating the X-ray background as the sum of thousands of point sources). It points to a row in another FITS extension (which may be located in another file). In this table, the spectrum is defined. The preferred way for the definition is the Mission-Independent Spectrum. A binary table containing such spectra has the following columns:

  • NAME            (optional)
  • ENERGY        (required)
  • FLUXDENSITY  (required)
Each entry in the columns ENERGY and FLUXDENSITY contains a vector of energy or flux density values which define the spectral shape. The absolute height is neglected but substituted by the renormalization using the reference energy band flux.

Optional detail can be added to each source by defining the spatial brightness distribution with a FITS-image. If desired, such an image can be referenced with the entry of IMAGE in the same way as a spectrum. In addition, the image can be rotated and scaled by giving the respective values in the fields IMGROTA and IMGSCAL. For details about the process behind the evaluation of images please refer to Christian Schmid's PhD thesis.

With the reference contained in the field TIMING, information about the source's temporal behaviour can be given. This can either be achieved by a direct lightcurve or by a Power Spectral Density (PSD). For more information about the usage of timing information please refer to Christian Schmid's PhDthesis and the format definition document.


The SIMPUT-package is downloaded and maintained as a subpackage of the SIXTE-package using GIT (for installation instructions see Installation). It consists of the SIMPUT library and various predefined, stand-alone tools for basic SIMPUT tasks. For a lot of excercises the tools provide everything what is needed to create the required SIMPUT files or handle them properly. The most important are listed in the following:

  • simputfile: This tool produces a source catalog containing one source with the specified properties. It supports XSPEC and ISIS parameter files for the spectral property definition and ASCII tables with information about the lightcurve or PSD. Additionally, if no such information is prepared, it can be assembled from basic properties such as black body components and powerlaw index for the spectrum as well as Lorentzian functions for PSD properties. Image references are also supported.
  • simputmerge: This tool merges multiple SIMPUT files to one.
  • simputverify: This tool compares the specified SIMPUT file to the standard and gives an error if a conflict is encountered.
  • galabs: This tool applies the effect of Galactic absorption to the sources specified in the SIMPUT file. The galactic NH is determined by using a high-resolution map of the LAB 21cm radio survey of the full sky. The sources' spectra are folded with an absorption of the column density at their position and the flux is recalculated.
  • simputmultispec: In this advanced tool 2D maps can be used to specify how parameters of a model change over the observed image. An exmaple on how this tool is used can be found below.


Most of SIMPUT (and SIXTE) is implemented in C-language. The SIMPUT C-library contains low- and high-level routines for access and writing of SIMPUT files. It is used by the SIXTE package but provides functionality for creating more elaborated source catalogs than the SIMPUT tools. It makes extensive use of the CFITSIO library and features functions for handling large numbers of individual sources.

Example: Usage of simputmultispec

simputmultispec is the perfect tool to simulate a more complicated setup of an extended source. While the standard simput tools already allow to add an image as a brightness distribution, this tool takes it even a step further. In addition to the brightness distribution, images of model parameters (such as, e.g., temperature or abundance) can be specified. Currently this option is working for ISIS or XSPEC models. Internally, not for every single value a different spectrum is used, but one avarage spectrum for a certain range of values. The number of different values for which the model should be calculated can be specified.

Below an example call in the case of XSPEC is given.

simputmultispec Simput=example_multispec.simput \
                ImageFile="data/A2146_SXB.fits" \
                Emin=0.5 Emax=10.0 \
                srcFlux=7.995076796356145e-12 \
                ParamFiles="data/A2146_kt.fits;data/A2146_ab.fits" \
                XSPECFile=mod.xcm \
                ParamNames="2;3" \
                ParamsNumValues="8;8" \
                ParamsLogScale="yes;no" \
                RA=239.064583333 Dec=66.3470277776 \
                Elow=0.1 Eup=15 Estep=0.001 \
                chatter=0 clobber=yes

  • ImageFile: Image of the Brightness Distribution
  • Emin/Emax: Energy band for which the source flux is given
  • srcFlux: Source flux of the complete image as given
  • ParamFiles: A list of parameter images (separated by a ';')
  • XSPECFile: The XSPEC model file (called ISISFile for ISIS)
  • ParamNames: Semicolon separated list of parameter names (real names in ISIS and number of the parameters in XSPEC), as given in the Parameter File. The first parameter in the list corresponds to the first image given.
  • ParamNumValues: Number of different parameter values for which the spectra are calculated (again, a list for each parameter).
  • ParamLogScale: Specify if the parameter values are linear ("no") or logarithmically ("yes") spaced.
  • RA/Dec (important): Here the RA/Dec values as given in the brightness distribution image for the WCS coordinate system should be given (named CRVAL1 and CRVAL2 in the FITS Header) unless you intentially want to put your source at a different position on the sky.

Example SIMPUT Files

In the following a list of examples of more complicated SIMPUT files is given. You are free to use them, but note that credits for creating them go to the SIXTE Software team and note also the reference to the data given below for each case.

In order use these SIMPUT files, download the files at the given link and extract them with:

   tar xfz your_filename.tgz

Chandra Deep Field South (CDFS): CDFS_combined_simput.tgz

Note that there are several catalogue files (see below for a list and explanation of each file) and additional files needed by these catalogues. Each of the catalogue files

  • CDFS_cat_lehmer.fits: Chandra sources from (Lehmer+2011)
  • CDFS_cat_galaxies.fits: Background galaxy clusters (Finoguenov+2015)
  • CDFS_cat_diffuse.fits: Diffuse Background (Finoguenov+2015)
  • CDFS_lissajous_80ksec.att: Attitude file with 80 ksec Lissajous pattern (A. Rau, priv. comm.)

Crab Nebula crab.simput.tgz

This simput file crab.simput contains the full Crab nebula and the point source in the middle with their respective spectra. The pulsations are also included.

Athena Crab Point Source athenacrab_flux0001000muCrab.simput.tgz

This simput file athenacrab_flux0001000muCrab.simput contains the standard Athena crab point source as defined and used in the WFI and X-IFU Bright Source Report. In this case the flux is 1mCrab.

Rosat All-Sky Survey Catalog (1RXS) rass.simput.tgz

Simput file rass.simput of the first Rosat X-ray all-sky survey (1RXS) containing 124731 point sources detected by ROSAT. Each source has a simple absorbed power law spectrum.

Rosat Soft X-ray Diffuse Background ROSAT_fullextended.simput.gz

The ROSAT Soft X-ray Diffuse Background put into a SIMPUT file (image data taken from Snowden et al, 1997), created for the Sixte publication (Dauser et al., 2019).

Cas A casa.simput.gz

Simput file showing the extended emission of the Supernove Remnant Cassiopeia A, using Chandra data as input.

Background: Galactice Ridge X-ray Emission grxe.simput.tgz

The file grxe.simput contains information about the Galactic ridge X-ray emission according to Revnivtsev+2006 and Türler+2010. It is accompanied by the files grxe_spec.fits and grxe_maps.fits, which contain the spectra and images.

Background: AGN List (3 deg cone) agnlist_clerk_3deg.simput.tgz

This SIMPUT file is provided by Nicolas Clerk. It was produced from a simulation of AGN under the following conditions:

  • 42 < log10(LX[0.5-2])<48
  • 0 < z < 5
  • uniform spatial random distribution of sources in a cone of 3.4 deg (leading to 100.000 sources)

Importantly, the sources in this file are centered on RA=35.5 and Dec=-4.5. In order to rotate them to the position you would like to simulate, you need to use the simput_rotate tool. In order to rotate it to RA=0.0 Dec=0.0, the command would be

  simputrotate \
      Infile=agnlist_clerk_3deg.simput \
      Outfile=agnlist_clerk_3deg_Ra0Dec0.simput \
      C1_RA=35.5   C1_Dec=-4.5 \
      C2_RA=0. C2_Dec=0
SIXTE team · Dr. Remeis-Sternwarte Bamberg · Sternwartstraße 7 · D-96049 Bamberg