Source code for autogalaxy.profiles.mass.stellar.dev_vaucouleurs

from typing import Tuple

from autogalaxy.profiles.mass.stellar.sersic import Sersic


[docs] class DevVaucouleurs(Sersic): r""" Elliptical de Vaucouleurs stellar mass profile (de Vaucouleurs 1948). A special case of the :class:`Sersic` mass profile with Sérsic index :math:`n = 4`, corresponding to the classical de Vaucouleurs :math:`R^{1/4}` surface brightness law that describes the light distribution of massive elliptical galaxies: .. math:: \kappa(R) = \Upsilon \, I_e \exp\!\left\{ -b_4 \left[\left(\frac{R}{R_e}\right)^{1/4} - 1\right] \right\} where :math:`b_4 \approx 7.669` ensures :math:`R_e` is the half-light radius. References ---------- - de Vaucouleurs 1948, Ann. Astrophys., 11, 247 """ def __init__( self, centre: Tuple[float, float] = (0.0, 0.0), ell_comps: Tuple[float, float] = (0.0, 0.0), intensity: float = 0.1, effective_radius: float = 0.6, mass_to_light_ratio: float = 1.0, ): r""" Parameters ---------- centre The (y,x) arc-second coordinates of the profile centre. ell_comps The first and second ellipticity components of the elliptical coordinate system. intensity Overall intensity normalisation :math:`I_e` at the effective radius (electrons per second). effective_radius The effective (half-light) radius :math:`R_e` in arcseconds. mass_to_light_ratio The mass-to-light ratio :math:`\Upsilon` in solar units. """ super().__init__( centre=centre, ell_comps=ell_comps, intensity=intensity, effective_radius=effective_radius, sersic_index=4.0, mass_to_light_ratio=mass_to_light_ratio, )
[docs] class DevVaucouleursSph(DevVaucouleurs): r""" Spherical de Vaucouleurs stellar mass profile. A special case of :class:`DevVaucouleurs` with no ellipticity (:math:`q = 1`), i.e., a :class:`Sersic` profile with :math:`n = 4` evaluated on a circular grid: .. math:: \kappa(r) = \Upsilon \, I_e \exp\!\left\{ -b_4 \left[\left(\frac{r}{R_e}\right)^{1/4} - 1\right] \right\} References ---------- - de Vaucouleurs 1948, Ann. Astrophys., 11, 247 """ def __init__( self, centre: Tuple[float, float] = (0.0, 0.0), intensity: float = 0.1, effective_radius: float = 0.6, mass_to_light_ratio: float = 1.0, ): r""" Parameters ---------- centre The (y,x) arc-second coordinates of the profile centre. intensity Overall intensity normalisation :math:`I_e` at the effective radius (electrons per second). effective_radius The effective (half-light) radius :math:`R_e` in arcseconds. mass_to_light_ratio The mass-to-light ratio :math:`\Upsilon` in solar units. """ super().__init__( centre=centre, ell_comps=(0.0, 0.0), intensity=intensity, effective_radius=effective_radius, mass_to_light_ratio=mass_to_light_ratio, )