EinastoProfile#

class gammapy.astro.darkmatter.EinastoProfile(r_s=None, alpha=None, rho_s=<Quantity 1. GeV / cm3>)[source]#

Bases: DMProfile

Einasto Profile.

\[\rho(r) = \rho_s \exp{ \left(-\frac{2}{\alpha}\left[ \left(\frac{r}{r_s}\right)^{\alpha} - 1\right] \right)}\]
Parameters:
r_sQuantity

Scale radius, \(r_s\).

alphaQuantity

\(\alpha\).

rho_sQuantity

Characteristic density, \(\rho_s\).

References

Attributes Summary

DEFAULT_ALPHA

Default scale radius as given in reference 2

DEFAULT_SCALE_RADIUS

Default scale radius as given in reference 2

DISTANCE_GC

Distance to the Galactic Center as given in reference 2

LOCAL_DENSITY

Local dark matter density as given in reference 2

Methods Summary

__call__(radius)

Call evaluate method of derived classes.

evaluate(radius, r_s, alpha, rho_s)

Evaluate the profile.

integral(rmin, rmax, separation, ndecade[, ...])

Integrate dark matter profile numerically.

integrate_spectrum_separation(func, xmin, ...)

Squared dark matter profile integral.

scale_to_local_density()

Scale to local density.

Attributes Documentation

DEFAULT_ALPHA = 0.17#

Default scale radius as given in reference 2

DEFAULT_SCALE_RADIUS = <Quantity 28.44 kpc>#

Default scale radius as given in reference 2

DISTANCE_GC = <Quantity 8.5 kpc>#

Distance to the Galactic Center as given in reference 2

LOCAL_DENSITY = <Quantity 0.39 GeV / cm3>#

Local dark matter density as given in reference 2

Methods Documentation

__call__(radius)#

Call evaluate method of derived classes.

static evaluate(radius, r_s, alpha, rho_s)[source]#

Evaluate the profile.

integral(rmin, rmax, separation, ndecade, squared=True)#

Integrate dark matter profile numerically.

\[\begin{split}F(r_{min}, r_{max}) = \int_{r_{min}}^{r_{max}}\rho(r)^\gamma dr \\ \gamma = 2 \text{for annihilation} \\ \gamma = 1 \text{for decay}\end{split}\]
Parameters:
rmin, rmaxQuantity

Lower and upper bound of integration range.

separationndarray

Separation angle in radians.

ndecadeint, optional

Number of grid points per decade used for the integration. Default is 10000.

squaredbool, optional

Square the profile before integration. Default is True.

integrate_spectrum_separation(func, xmin, xmax, separation, ndecade, squared=True)#

Squared dark matter profile integral.

Parameters:
xmin, xmaxQuantity

Lower and upper bound of integration range.

separationndarray

Separation angle in radians.

ndecadeint

Number of grid points per decade used for the integration.

squaredbool

Square the profile before integration. Default is True.

scale_to_local_density()#

Scale to local density.