Double power-law density triaxial potential

class galpy.potential.TwoPowerTriaxialPotential(amp=1.0, a=5.0, alpha=1.5, beta=3.5, b=1.0, c=1.0, zvec=None, pa=None, glorder=50, normalize=False, ro=None, vo=None)[source]

Class that implements triaxial potentials that are derived from two-power density models

\[\rho(x,y,z) = \frac{\mathrm{amp}}{4\,\pi\,a^3}\,\frac{1}{(m/a)^\alpha\,(1+m/a)^{\beta-\alpha}}\]

with

\[m^2 = x'^2 + \frac{y'^2}{b^2}+\frac{z'^2}{c^2}\]

and \((x',y',z')\) is a rotated frame wrt \((x,y,z)\) specified by parameters zvec and pa which specify (a) zvec: the location of the \(z'\) axis in the \((x,y,z)\) frame and (b) pa: the position angle of the \(x'\) axis wrt the \(\tilde{x}\) axis, that is, the \(x\) axis after rotating to zvec.

Note that this general class of potentials does not automatically revert to the special TriaxialNFWPotential, TriaxialHernquistPotential, or TriaxialJaffePotential when using their (alpha,beta) values (like TwoPowerSphericalPotential).

__init__(amp=1.0, a=5.0, alpha=1.5, beta=3.5, b=1.0, c=1.0, zvec=None, pa=None, glorder=50, normalize=False, ro=None, vo=None)[source]

Initialize a triaxial two-power-density potential.

Parameters:
  • amp (float or Quantity, optional) – Amplitude to be applied to the potential (default: 1); can be a Quantity with units of mass or Gxmass.

  • a (float or Quantity, optional) – Scale radius.

  • alpha (float, optional) – Inner power (0 <= alpha < 3).

  • beta (float, optional) – Outer power ( beta > 2).

  • b (float, optional) – y-to-x axis ratio of the density.

  • c (float, optional) – z-to-x axis ratio of the density.

  • zvec (numpy.ndarray, optional) – If set, a unit vector that corresponds to the z axis.

  • pa (float or Quantity, optional) – If set, the position angle of the x axis.

  • glorder (int, optional) – If set, compute the relevant force and potential integrals with Gaussian quadrature of this order.

  • normalize (bool or float, optional) – If True, normalize such that vc(1.,0.)=1., or, if given as a number, such that the force is this fraction of the force necessary to make vc(1.,0.)=1.

  • ro (float or Quantity, optional) – Distance scale for translation into internal units (default from configuration file).

  • vo (float or Quantity, optional) – Velocity scale for translation into internal units (default from configuration file).

Notes

  • 2016-05-30 - Started - Bovy (UofT)

  • 2018-08-07 - Re-written using the general EllipsoidalPotential class - Bovy (UofT)