FaucherSpiral

class gammapy.astro.population.FaucherSpiral[source]

Bases: gammapy.astro.population.LogSpiral

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

Reference: https://ui.adsabs.harvard.edu/abs/2006ApJ…643..332F

Attributes Summary

k
r_0
spiralarms
theta_0

Methods Summary

__call__(self, radius[, blur, random_state]) Draw random position from spiral arm distribution.
radius(self, theta, spiralarm_index) Radius for a given angle.
theta(self, radius, spiralarm_index) Angle for a given radius.
xy_position(self[, theta, radius, …]) Compute (x, y) position for a given angle or radius.

Attributes Documentation

k = <Quantity [4.25, 4.25, 4.89, 4.89] rad>
r_0 = <Quantity [3.48, 3.48, 4.9 , 4.9 ] kpc>
spiralarms = array(['Norma', 'Carina Sagittarius', 'Perseus', 'Crux Scutum'], dtype='<U18')
theta_0 = <Quantity [1.57, 4.71, 4.09, 0.95] rad>

Methods Documentation

__call__(self, radius, blur=True, random_state='random-seed')[source]

Draw random position from spiral arm distribution.

Returns the corresponding angle theta[rad] to a given radius[kpc] and number of spiralarm. Possible numbers are:

  • Norma = 0,
  • Carina Sagittarius = 1,
  • Perseus = 2
  • Crux Scutum = 3.
Parameters:
random_state : {int, ‘random-seed’, ‘global-rng’, RandomState}

Defines random number generator initialisation. Passed to get_random_state.

Returns:
Returns dx and dy, if blurring= true.
radius(self, theta, spiralarm_index)

Radius for a given angle.

Parameters:
theta : array_like

Angle (deg)

spiralarm_index : int

Spiral arm index

Returns:
radius : array_like

Radius (kpc)

theta(self, radius, spiralarm_index)

Angle for a given radius.

Parameters:
radius : array_like

Radius (kpc)

spiralarm_index : int

Spiral arm index

Returns:
theta : array_like

Angle (deg)

xy_position(self, theta=None, radius=None, spiralarm_index=0)

Compute (x, y) position for a given angle or radius.

Parameters:
theta : array_like

Angle (deg)

radius : array_like

Radius (kpc)

spiralarm_index : int

Spiral arm index

Returns:
x, y : array_like

Position (x, y)