Lopsided disk potential

Like in Kuijken & Tremaine, but for m=1. See galpy.potential.CosmphiDiskPotential for a more general version that allows for a break radius within which the radial dependence of the potential changes from R^p to R^-p (lopsided disk corresponds to m=1).

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

Class that implements the disk potential

\[\Phi(R,\phi) = \mathrm{amp}\,\phi_0\,\left(\frac{R}{R_1}\right)^p\,\cos\left(\phi-\phi_b\right)\]

Special case of CosmphiDiskPotential with m=1; see documentation for CosmphiDiskPotential

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

NAME:

__init__

PURPOSE:

initialize an cosmphi disk potential

INPUT:

amp= amplitude to be applied to the potential (default: 1.), degenerate with phio below, but kept for overall consistency with potentials

m= cos( m * (phi - phib) ), integer

p= power-law index of the phi(R) = (R/Ro)^p part

r1= (1.) 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= (None) if set, break radius for power-law: potential R^p at R > Rb, R^-p at R < Rb, potential and force continuous at Rb

Either:

  1. phib= angle (in rad; default=25 degree; or can be Quantity)

    phio= potential perturbation (in terms of phio/vo^2 if vo=1 at Ro=1; or can be Quantity with units of velocity-squared)

  2. cp, sp= m * phio * cos(m * phib), m * phio * sin(m * phib); can be Quantity with units of velocity-squared)

OUTPUT:

(none)

HISTORY:

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

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