Triaxial Hernquist potential

class galpy.potential.TriaxialHernquistPotential(amp=1.0, a=2.0, normalize=False, b=1.0, c=1.0, zvec=None, pa=None, glorder=50, ro=None, vo=None)[source]

Class that implements the triaxial Hernquist potential

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

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.

__init__(amp=1.0, a=2.0, normalize=False, b=1.0, c=1.0, zvec=None, pa=None, glorder=50, ro=None, vo=None)[source]

NAME:

__init__

PURPOSE:

Initialize a triaxial Hernquist potential

INPUT:

amp - amplitude to be applied to the potential (default: 1); can be a Quantity with units of mass or Gxmass

a - scale radius (can be Quantity)

b - y-to-x axis ratio of the density

c - z-to-x axis ratio of the density

zvec= (None) If set, a unit vector that corresponds to the z axis

pa= (None) If set, the position angle of the x axis

glorder= (50) if set, compute the relevant force and potential integrals with Gaussian quadrature of this order

normalize - 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=, vo= distance and velocity scales for translation into internal units (default from configuration file)

OUTPUT:

(none)

HISTORY:

2010-07-09 - Written - Bovy (UofT)

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