Note

You are not reading the most up to date version of Gammapy documentation.
Access the latest stable version v1.3 or the list of Gammapy releases.

Astrophysical source population models (gammapy.astro.population)

Introduction

The gammapy.astro.population module provides a simple framework for population synthesis of gamma-ray sources, which is useful in the context of surveys and population studies.

Getting Started

The following example illustrates how to simulate a basic catalog including a spiral arm model.

import astropy.units as u
from gammapy.astro.population import make_base_catalog_galactic

max_age = 1E6 * u.yr
SN_rate = 3. / (100. * u.yr)
n_sources = int(max_age * SN_rate)
table = make_base_catalog_galactic(
    n_sources=n_sources,
    rad_dis='L06',
    vel_dis='F06B',
    max_age=max_age,
    spiralarms=True,
)

The total number of sources is determined assuming a maximum age and a supernova rate. The table returned is an instance of Table which can be used for further processing. The example population with spiral-arms is illustrated in the following plot.

(png, hires.png, pdf)

../../_images/plot_spiral_arms.png

Galactocentric spatial distributions

Here is a comparison plot of all available radial distribution functions of the surface density of pulsars and related objects used in literature:

(png, hires.png, pdf)

../../_images/plot_radial_distributions.png

TODO: add illustration of Galactocentric z-distribution model and combined (r, z) distribution for the Besancon model.

Spiral arm models

Two spiral arm models of the Milky way are available: ValleeSpiral and gammapy.astro.population.FaucherSpiral

(png, hires.png, pdf)

../../_images/plot_spiral_arm_models.png

Velocity distributions

Here is a comparison plot of all available velocity distribution functions:

(png, hires.png, pdf)

../../_images/plot_velocity_distributions.png

Reference/API

gammapy.astro.population Package

Astrophysical population models.

Functions

add_observed_parameters(table[, obs_pos])

Add observable parameters (such as sky position or distance).

add_pulsar_parameters(table[, B_mean, …])

Add pulsar parameters to the table.

add_pwn_parameters(table)

Add PWN parameters to the table.

add_snr_parameters(table)

Add SNR parameters to the table.

make_base_catalog_galactic(n_sources[, …])

Make a catalog of Galactic sources, with basic source parameters.

make_catalog_random_positions_cube([size, …])

Make a catalog of sources randomly distributed on a line, square or cube.

make_catalog_random_positions_sphere([size, …])

Sample random source locations in a sphere.

Classes

CaseBattacharya1998([amplitude, alpha, beta])

Radial distribution of the surface density of supernova remnants in the galaxy - Case & Battacharya 1998.

Exponential([amplitude, z_0])

Exponential distribution.

FaucherKaspi2006([amplitude, r_0, sigma])

Radial distribution of the birth surface density of pulsars in the galaxy - Faucher-Giguere & Kaspi 2006.

FaucherKaspi2006VelocityBimodal([amplitude, …])

Bimodal pulsar velocity distribution - Faucher & Kaspi (2006).

FaucherKaspi2006VelocityMaxwellian([…])

Maxwellian pulsar velocity distribution.

FaucherSpiral

Milky way spiral arm used in Faucher et al (2006).

LogSpiral

Logarithmic spiral.

Lorimer2006([amplitude, B, C])

Radial distribution of the surface density of pulsars in the galaxy - Lorimer 2006.

Paczynski1990([amplitude, r_exp])

Radial distribution of the birth surface density of neutron stars - Paczynski 1990.

Paczynski1990Velocity([amplitude, v_0])

Distribution by Lyne 1982 and adopted by Paczynski and Faucher.

ValleeSpiral()

Milky way spiral arm model from Vallee (2008).

YusifovKucuk2004([amplitude, a, b, r_1])

Radial distribution of the surface density of pulsars in the galaxy - Yusifov & Kucuk 2004.

YusifovKucuk2004B([amplitude, a, b])

Radial distribution of the surface density of OB stars in the galaxy - Yusifov & Kucuk 2004.