.. _physics-satelliteTidalStripping: Tidal Stripping of Satellites ============================= Class providing models of tidal stripping for satellites---the gravitational removal of dark matter and stellar mass from satellite halos as they orbit through the tidal field of their host halo. The tidal force strips material outside the tidal radius, reducing the satellite mass over time at a rate (in :math:`\mathrm{M}_\odot` Gyr\ :math:`^{-1}`) that depends on the satellite's orbit, concentration, and the host potential. This mass loss sets the subhalo abundance, the galaxy-to-halo mass ratio in satellites, and drives the evolution of satellite galaxies toward quiescence. **Default implementation:** ``satelliteTidalStrippingZentner2005`` Methods ------- ``massLossRate`` → ``double precision`` Returns the rate of tidal mass loss for ``node`` (in units of :math:`\mathrm{M}_\odot`/Gyr). * ``type(treeNode), intent(inout) :: node`` .. _physics-satelliteTidalStrippingZentner2005: ``satelliteTidalStrippingZentner2005`` -------------------------------------- A satellite tidal stripping class which uses the formalism of :cite:t:`zentner_physics_2005` to compute the mass loss rate :math:`\dot{M}_\mathrm{sat}`: .. math:: \dot{M}_\mathrm{sat}=-\alpha \frac{M_\mathrm{sat}(>r_\mathrm{tidal})}{T_\mathrm{loss}}, where :math:`\alpha=`\ ``[efficiency]``, :math:`T_\mathrm{loss}` is the time scale of mass loss, and :math:`r_\mathrm{tidal}` is the tidal radius of the satellite, given by the :cite:t:`king_structure_1962` formula: .. math:: r_\mathrm{tidal}=\left(\frac{GM_\mathrm{sat}}{\gamma_\mathrm{c}\omega^2-d^2\Phi/dr^2}\right)^{1/3}, where :math:`\omega` is the orbital angular velocity of the satellite, :math:`\Phi(r)` is the gravitational potential due to the host, and :math:`\gamma_\mathrm{c}` is the efficiency of the centrifugal force when computing the tidal radius. By default, :math:`T_\mathrm{loss}` is taken to be the orbital time scale .. math:: T_\mathrm{orb} = {1 \over \hbox{max}(\omega/2\pi,v_\mathrm{r}/r)}, where :math:`\omega` is the angular velocity of the satellite, :math:`v_\mathrm{r}` is the radial velocity, :math:`r` is the orbital radius. If ``[useDynamicalTimeScale]`` is set to true, :math:`T_\mathrm{loss}` is taken to be the dynamical time scale computed at the tidal radius .. math:: T_\mathrm{dyn} = \sqrt{\frac{3 \pi}{16 G \overline{\rho}_\mathrm{sat}(r_\mathrm{tidal})}} = 2 \pi \sqrt{\frac{r_\mathrm{tidal}^3}{16 G M_\mathrm{sat}(r_\mathrm{tidal})}}. **(Default implementation)** **Parameters** * ``[efficiency]`` (default ``2.5d0``) — The dimensionless rate coefficient appearing in the :cite:t:`zentner_physics_2005` expression for the tidal mass loss rate from subhalos. * ``[useDynamicalTimeScale]`` (default ``.false.``) — If true, the mass outside the tidal radius is assumed to be lost on dynamical time scale computed at the tidal radius. Otherwise, mass loss occurs on the orbital timescale of the satellite. .. _physics-satelliteTidalStrippingZero: ``satelliteTidalStrippingZero`` ------------------------------- A satellite tidal stripping class in which the stripping rate is always zero.