Exemple #1
0
    def from_observations(datablock, params=None):
        '''
    Construct a reflection table from observations.

    :param datablock: The datablock
    :param params: The input parameters
    :return: The reflection table of observations

    '''
        from dials.algorithms.spot_finding.factory \
          import SpotFinderFactory
        from libtbx import Auto

        if params is None:
            from dials.command_line.find_spots import phil_scope
            from dials.util.phil import parse
            params = phil_scope.fetch(source=parse("")).extract()

        if params.spotfinder.filter.min_spot_size is Auto:
            detector = datablock.extract_imagesets()[0].get_detector()
            if detector[0].get_type() == 'SENSOR_PAD':
                # smaller default value for pixel array detectors
                params.spotfinder.filter.min_spot_size = 3
            else:
                params.spotfinder.filter.min_spot_size = 6
            logger.info('Setting spotfinder.filter.min_spot_size=%i' %
                        (params.spotfinder.filter.min_spot_size))

        # Get the integrator from the input parameters
        logger.info('Configuring spot finder from input parameters')
        find_spots = SpotFinderFactory.from_parameters(datablock=datablock,
                                                       params=params)

        # Find the spots
        return find_spots(datablock)
Exemple #2
0
  def from_observations(datablock, params=None):
    '''
    Construct a reflection table from observations.

    :param datablock: The datablock
    :param params: The input parameters
    :return: The reflection table of observations

    '''
    from dials.algorithms.spot_finding.factory \
      import SpotFinderFactory
    from logging import info
    from libtbx import Auto

    if params.spotfinder.filter.min_spot_size is Auto:
      detector = datablock.extract_imagesets()[0].get_detector()
      if detector[0].get_type() == 'SENSOR_PAD':
        # smaller default value for pixel array detectors
        params.spotfinder.filter.min_spot_size = 3
      else:
        params.spotfinder.filter.min_spot_size = 6
      info('Setting spotfinder.filter.min_spot_size=%i' %(
        params.spotfinder.filter.min_spot_size))

    # Get the integrator from the input parameters
    info('Configuring spot finder from input parameters')
    find_spots = SpotFinderFactory.from_parameters(params)

    # Find the spots
    return find_spots(datablock)
Exemple #3
0
    def from_observations(experiments, params=None):
        """
        Construct a reflection table from observations.

        :param experiments: The experiments
        :param params: The input parameters
        :return: The reflection table of observations
        """
        from dials.algorithms.spot_finding.factory import SpotFinderFactory

        if params is None:
            from dials.command_line.find_spots import phil_scope
            from dials.util.phil import parse

            params = phil_scope.fetch(source=parse("")).extract()

        if params.spotfinder.filter.min_spot_size is libtbx.Auto:
            detector = experiments[0].imageset.get_detector()
            if detector[0].get_type() == "SENSOR_PAD":
                # smaller default value for pixel array detectors
                params.spotfinder.filter.min_spot_size = 3
            else:
                params.spotfinder.filter.min_spot_size = 6
            logger.info(
                "Setting spotfinder.filter.min_spot_size=%i",
                params.spotfinder.filter.min_spot_size,
            )

        # Get the integrator from the input parameters
        logger.info("Configuring spot finder from input parameters")
        find_spots = SpotFinderFactory.from_parameters(
            experiments=experiments, params=params
        )

        # Find the spots
        return find_spots(experiments)