docs: def select_catalogue(self, selector, distance,
                           distance_metric='joyner-boore', upper_eq_depth=None,
                           lower_eq_depth=None):
          '''
          Selects earthquakes within a distance of the fault
  
          :param selector:
              Populated instance of :class:
              `openquake.hmtk.seismicity.selector.CatalogueSelector`
  
          :param distance:
              Distance from point (km) for selection
  
          :param str distance_metric
              Choice of fault source distance metric 'joyner-boore' or 'rupture'
  
          :param float upper_eq_depth:
              Upper hypocentral depth of hypocentres to be selected
  
          :param float lower_eq_depth:
              Lower hypocentral depth of hypocentres to be selected
  
          '''
          if selector.catalogue.get_number_events() < 1:
              raise ValueError('No events found in catalogue!')
  
          # rupture metric is selected and dip != 90 or 'rupture'
          if ('rupture' in distance_metric) and (fabs(self.dip - 90) > 1E-5):
              # Use rupture distance
              self.catalogue = selector.within_rupture_distance(
                  self.geometry,
                  distance,
                  upper_depth=upper_eq_depth,
                  lower_depth=lower_eq_depth)
          else:
              # Use Joyner-Boore distance
              self.catalogue = selector.within_joyner_boore_distance(
                  self.geometry,
                  distance,
                  upper_depth=upper_eq_depth,
                  lower_depth=lower_eq_depth)
  
          if self.catalogue.get_number_events() < 5:
              # Throw a warning regarding the small number of earthquakes in
              # the source!
              warnings.warn('Source %s (%s) has fewer than 5 events'
                            % (self.id, self.name))