Adiabatic contraction wrapper potential¶
- class galpy.potential.AdiabaticContractionWrapperPotential(amp=1.0, pot=None, baryonpot=None, method='cautun', f_bar=0.157, rmin=None, rmax=50.0, ro=None, vo=None)[source]¶
AdiabaticContractionWrapperPotential: Wrapper to adiabatically contract a DM halo in response to the growth of a baryonic component. Use for example as:
dm= AdiabaticContractionWrapperPotential( pot=MWPotential2014[2], baryonpot=MWPotential2014[:2] )
to contract the dark-matter halo in
MWPotential2014
according to the baryon distribution within it. The basic physics of the adiabatic contraction is that a fractionf_bar
of the mass in the original potentialpot
cools adiabatically to form a baryonic componentbaryonpot
; this wrapper computes the resulting dark-matter potential using different approximations in the literature.- __init__(amp=1.0, pot=None, baryonpot=None, method='cautun', f_bar=0.157, rmin=None, rmax=50.0, ro=None, vo=None)[source]¶
Initialize a AdiabaticContractionWrapper Potential.
- Parameters:
amp (float, optional) – Amplitude to be applied to the potential (default: 1.).
pot (Potential instance or list thereof, optional) – Representing the density that is adiabatically contracted.
baryonpot (Potential instance or list thereof, optional) – Representing the density of baryons whose growth causes the contraction.
method ({'cautun', 'blumenthal', 'gnedin'}, optional) –
Type of adiabatic-contraction formula:
’cautun’ for that from Cautun et al. 2020 [1];
’blumenthal’ for that from Blumenthal et al. 1986 [2];
’gnedin’ for that from Gnedin et al. 2004 [3].
(default: ‘cautun’)
f_bar (float, optional) – Universal baryon fraction; if None, calculated from pot and baryonpot assuming that at rmax the halo contains the universal baryon fraction; leave this at the default value unless you know what you are doing (default: 0.157).
rmin (float, optional) – Minimum radius to consider (default: rmax/2500; don’t set this to zero).
rmax (float or Quantity, optional) – Maximum radius to consider (default: 50.).
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
2021-03-21 - Started based on Marius Cautun’s code - Bovy (UofT)
References