Arbitrary Eddington-inversion DF

class galpy.df.eddingtondf(pot=None, denspot=None, rmax=10000.0, scale=None, ro=None, vo=None)[source]

Class that implements isotropic spherical DFs computed using the Eddington formula

\[f(\mathcal{E}) = \frac{1}{\sqrt{8}\,\pi^2}\,\left[\int_0^\mathcal{E}\mathrm{d}\Psi\,\frac{1}{\sqrt{\mathcal{E}-\Psi}}\,\frac{\mathrm{d}^2\rho}{\mathrm{d}\Psi^2} +\frac{1}{\sqrt{\mathcal{E}}}\,\frac{\mathrm{d}\rho}{\mathrm{d}\Psi}\Bigg|_{\Psi=0}\right]\,,\]

where \(\Psi = -\Phi+\Phi(\infty)\) is the relative potential, \(\mathcal{E} = \Psi-v^2/2\) is the relative (binding) energy, and \(\rho\) is the density of the tracer population (not necessarily the density corresponding to \(\Psi\) according to the Poisson equation). Note that the second term on the right-hand side is currently assumed to be zero in the code.

__init__(pot=None, denspot=None, rmax=10000.0, scale=None, ro=None, vo=None)[source]

NAME:

__init__

PURPOSE:

Initialize an isotropic distribution function computed using the Eddington inversion

INPUT:

pot= (None) Potential instance or list thereof that represents the gravitational potential (assumed to be spherical)

denspot= (None) Potential instance or list thereof that represent the density of the tracers (assumed to be spherical; if None, set equal to pot)

rmax= (None) maximum radius to consider (can be Quantity); DF is cut off at E = Phi(rmax)

scale= Characteristic scale radius to aid sampling calculations. Optionaland will also be overridden by value from pot if available.

ro=, vo= galpy unit parameters

OUTPUT:

None

HISTORY:

2021-02-04 - Written - Bovy (UofT)