docs: def ray_shooting_partial(self, x, y, alpha_x, alpha_y, z_start, z_stop, kwargs_lens, keep_range=False,
                               include_z_start=False):
          """
          ray-tracing through parts of the coin, starting with (x,y) and angles (alpha_x, alpha_y) at redshift z_start
          and then backwards to redshfit z_stop
  
          :param x: co-moving position [Mpc]
          :param y: co-moving position [Mpc]
          :param alpha_x: ray angle at z_start [arcsec]
          :param alpha_y: ray angle at z_start [arcsec]
          :param z_start: redshift of start of computation
          :param z_stop: redshift where output is computed
          :param kwargs_lens: lens model keyword argument list
          :param keep_range: bool, if True, only computes the angular diameter ratio between the first and last step once
          :return: co-moving position and angles at redshift z_stop
          """
          z_lens_last = z_start
          first_deflector = True
          for i, idex in enumerate(self._sorted_redshift_index):
              z_lens = self._redshift_list[idex]
              if self._start_condition(include_z_start, z_lens, z_start) and z_lens <= z_stop:
              #if z_lens > z_start and z_lens <= z_stop:
                  if first_deflector is True:
                      if keep_range is True:
                          if not hasattr(self, '_cosmo_bkg_T_start'):
                              self._cosmo_bkg_T_start = self._cosmo_bkg.T_xy(z_start, z_lens)
                          delta_T = self._cosmo_bkg_T_start
                      else:
                          delta_T = self._cosmo_bkg.T_xy(z_start, z_lens)
                      first_deflector = False
                  else:
                      delta_T = self._T_ij_list[i]
                  x, y = self._ray_step(x, y, alpha_x, alpha_y, delta_T)
                  alpha_x, alpha_y = self._add_deflection(x, y, alpha_x, alpha_y, kwargs_lens, i)
                  z_lens_last = z_lens
          if keep_range is True:
              if not hasattr(self, '_cosmo_bkg_T_stop'):
                  self._cosmo_bkg_T_stop = self._cosmo_bkg.T_xy(z_lens_last, z_stop)
              delta_T = self._cosmo_bkg_T_stop
          else:
              delta_T = self._cosmo_bkg.T_xy(z_lens_last, z_stop)
          x, y = self._ray_step(x, y, alpha_x, alpha_y, delta_T)
          return x, y, alpha_x, alpha_y