Cos(m phi) disk potential

Generalization of the lopsided and elliptical disk potentials to any m and to allow for a break radius within which the radial dependence of the potential changes from R^p to R^-p.

class galpy.potential.CosmphiDiskPotential(amp=1.0, phib=0.4363323129985824, p=1.0, phio=0.01, m=4, r1=1.0, rb=None, cp=None, sp=None, ro=None, vo=None)[source]

Class that implements the disk potential

\[\begin{split}\Phi(R,\phi) = \mathrm{amp}\,\phi_0\,\,\cos\left[m\,(\phi-\phi_b)\right]\times \begin{cases} \left(\frac{R}{R_1}\right)^p\,, & \text{for}\ R \geq R_b\\ \left[2-\left(\frac{R_b}{R}\right)^p\right]\times\left(\frac{R_b}{R_1}\right)^p\,, & \text{for}\ R\leq R_b. \end{cases}\end{split}\]

This potential can be grown between \(t_{\mathrm{form}}\) and \(t_{\mathrm{form}}+T_{\mathrm{steady}}\) in a similar way as DehnenBarPotential by wrapping it with a DehnenSmoothWrapperPotential

__init__(amp=1.0, phib=0.4363323129985824, p=1.0, phio=0.01, m=4, r1=1.0, rb=None, cp=None, sp=None, ro=None, vo=None)[source]

Initialize a CosmphiDiskPotential.

Parameters:
  • amp (float, optional) – Amplitude to be applied to the potential (default: 1.), degenerate with phio below, but kept for overall consistency with potentials.

  • m (int, optional) – m in cos(m * phi - m * phib).

  • p (float) – Power-law index of the phi(R) = (R/Ro)^p part.

  • r1 (float or Quantity, optional) – Normalization radius for the amplitude (can be Quantity); amp x phio is only the potential at (R,phi) = (r1,pib) when r1 > rb; otherwise more complicated.

  • rb (float or Quantity, optional) – If set, break radius for power-law: potential R^p at R > Rb, R^-p at R < Rb, potential and force continuous at Rb.

  • phib (float or Quantity, optional) – Angle (in rad; default=25 degree).

  • phio (float or Quantity, optional) – Potential perturbation (in terms of phio/vo^2 if vo=1 at Ro=1; or can be Quantity).

  • cp (float or Quantity, optional) – m * phio * cos(m * phib); can be Quantity with units of velocity-squared.

  • sp (float or Quantity, optional) – m * phio * sin(m * phib); can be Quantity with units of velocity-squared.

  • 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

  • Either specify (phib, phio) or (cp, sp).

  • 2011-10-27 - Started - Bovy (IAS)

  • 2017-09-16 - Added break radius rb - Bovy (UofT)