Power-Law DF with Osipkov-Merritt anisotropy¶
- class galpy.df.osipkovmerrittPowerLawdf(pot=None, denspot=None, ra=1.4, rmax=10000.0, rmin=None, ro=None, vo=None)[source]¶
Class that implements the Osipkov-Merritt anisotropic spherical distribution function for a power-law tracer density \(\nu(r) = \nu_0\,r^{-\gamma}\) in a power-law potential \(\Phi(r) = -\Psi_0\,r^{2-\alpha}\) generated by \(\rho(r) \propto r^{-\alpha}\) with \(\alpha > 2\), where \(\Psi_0 = -\Phi(1)\) and \(\nu_0 = \nu(1)\).
The anisotropy profile is
\[\beta(r) = \frac{1}{1+r_a^2/r^2}\]with \(r_a\) the anisotropy radius. The distribution function is
\[f(Q) = \frac{\nu_0}{2\sqrt{2}\,\pi^{3/2}}\left[\frac{\Gamma(s_1+1)}{\Gamma(s_1-\tfrac{1}{2})\,\Psi_0^{s_1}}\,Q^{s_1-3/2} + \frac{\Gamma(s_2+1)}{\Gamma(s_2-\tfrac{1}{2})\,r_a^2\,\Psi_0^{s_2}}\,Q^{s_2-3/2}\right]\]where \(Q = -E - L^2/(2r_a^2) \geq 0\), \(s_1 = \gamma/(\alpha-2)\), and \(s_2 = (\gamma-2)/(\alpha-2)\).
- __init__(pot=None, denspot=None, ra=1.4, rmax=10000.0, rmin=None, ro=None, vo=None)[source]¶
Initialize an Osipkov-Merritt power-law distribution function.
- Parameters:
pot (PowerSphericalPotential) – Power-law potential with alpha > 2.
denspot (PowerSphericalPotential, optional) – Power-law potential representing the tracer density. If None, self-consistent (tracer = potential-generating density).
ra (float or Quantity, optional) – Anisotropy radius. Default: 1.4.
rmax (float or Quantity, optional) – Maximum radius for sampling. Default: 1e4.
rmin (float or Quantity, optional) – Minimum radius. Auto-detected for divergent potentials if not specified.
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
2025-03-27 - Written - Bovy (UofT)