Large scale structured magnetic field of Galaxy Clusters

This module implements the magnetic field derived by [Gourgouliatos2010] as a solution to the Grad-Shafranov equation. The field strength vanishes on the cavity surface whose interior is otherwise filled by a large scale magnetic field. Field components are given in spherical coordinates. All components can be accessed with gammaALPs.bfields.struc.structured_field.b_r(), gammaALPs.bfields.struc.structured_field.b_theta() and gammaALPs.bfields.struc.structured_field.b_phi().

The user is able to set an orientation of the field’s symmetry axis using \(\theta\) (inclination to the line of sight) and \(\mathrm{pa}\) (position angle of jet axis) in galactic coordinates (zero points to Galactic North).

There is also a convenience functions to calculate the the rotation measure induced by the field (provided that an electron density is provided as well).

Reference / API

class gammaALPs.bfields.struc.structured_field(B0, R, theta, theta_rad, pa, pa_rad, cell_num=1000)[source]

Bases: object

Class definition of structured magnetic field, see 1008.5353 and 1908.03084 for details.

F_0 = 182.66504956621472
__init__(B0, R, theta, theta_rad, pa, pa_rad, cell_num=1000)[source]

Initializes structured B field model. Default values are reasonable for galaxy clusters.

Parameters:
  • B0 (float) – Total B field strength at cluster center r=0.

  • R (float) – Cavity radius, B field goes to zero at r=R.

  • theta (float) – inclination of symmetry axis w.r.t. line of sight.

  • theta_rad (bool) – True if theta given in radians.

  • pa (float) – Position angle of symmetry axis in galactic coordinates.

  • pa_rad (bool) – True if pa given in radians.

  • cell_num (int) – Number of cells B field is divided into for propagation of polarization density matrix.

alpha = 5.7634591968
property angle
property b_par
property b_phi
property b_r
property b_theta
property b_trans
property dL_vec
norm = 138.62979162824598
property r

r needs to be rescaled in field strength expressions to be smaller than one, for “external” use _r is multiplied by R in this property wrapper.

property rbounds
rotation_measure(nel)[source]

Rotation measure (RM) = rad * m^-2 * 812 * integral nel * B dz, nel in 1/cm^3, B in muGauss, z in kpc.

Parameters:

nel (array-like) – Array of electron density in cm^-3 along r.

Returns:

rm – Rotation measure in units of rad/m^2.

Return type:

float