ReferenceObjectLoaderBase

class lsst.meas.algorithms.ReferenceObjectLoaderBase(config=None, *args, **kwargs)

Bases: object

Base class for reference object loaders, to facilitate gen2/gen3 code sharing.

Parameters:
config : lsst.pex.config.Config

Configuration for the loader.

Methods Summary

applyProperMotions(catalog, epoch) Apply proper motion correction to a reference catalog.
getMetadataBox(bbox, wcs, filterName[, …]) Return metadata about the load
getMetadataCircle(coord, radius, filterName) Return metadata about the reference catalog being loaded.
joinMatchListWithCatalog(matchCat, sourceCat) Relink an unpersisted match list to sources and reference objects.
makeMinimalSchema(filterNameList, *[, …]) Make a standard schema for reference object catalogs.

Methods Documentation

applyProperMotions(catalog, epoch)

Apply proper motion correction to a reference catalog.

Adjust position and position error in the catalog for proper motion to the specified epoch, modifying the catalog in place.

Parameters:
catalog : lsst.afw.table.SimpleCatalog

Catalog of positions, containing at least these fields:

  • Coordinates, retrieved by the table’s coordinate key.
  • coord_raErr : Error in Right Ascension (rad).
  • coord_decErr : Error in Declination (rad).
  • pm_ra : Proper motion in Right Ascension (rad/yr,
    East positive)
  • pm_raErr : Error in pm_ra (rad/yr), optional.
  • pm_dec : Proper motion in Declination (rad/yr,
    North positive)
  • pm_decErr : Error in pm_dec (rad/yr), optional.
  • epoch : Mean epoch of object (an astropy.time.Time)
epoch : astropy.time.Time

Epoch to which to correct proper motion. If None, do not apply PM corrections or raise if config.requireProperMotion is True.

Raises:
RuntimeError

Raised if config.requireProperMotion is set but we cannot apply the proper motion correction for some reason.

getMetadataBox(bbox, wcs, filterName, epoch=None, bboxToSpherePadding=100)

Return metadata about the load

This metadata is used for reloading the catalog (e.g., for reconstituting a normalised match list).

Parameters:
bbox : lsst.geom.Box2I or lsst.geom.Box2D

Bounding box for the pixels.

wcs : lsst.afw.geom.SkyWcs

The WCS object associated with bbox.

filterName : str

Name of the camera filter.

epoch : astropy.time.Time or None, optional

Epoch to which to correct proper motion and parallax, or None to not apply such corrections.

bboxToSpherePadding : int, optional

Padding in pixels to account for translating a set of corners into a spherical (convex) boundary that is certain to encompass the enitre area covered by the box.

Returns:
md : lsst.daf.base.PropertyList

The metadata detailing the search parameters used for this dataset.

static getMetadataCircle(coord, radius, filterName, epoch=None)

Return metadata about the reference catalog being loaded.

This metadata is used for reloading the catalog (e.g. for reconstituting a normalized match list).

Parameters:
coord : lsst.geom.SpherePoint

ICRS center of the search region.

radius : lsst.geom.Angle

Radius of the search region.

filterName : str

Name of the camera filter.

epoch : astropy.time.Time or None, optional

Epoch to which to correct proper motion and parallax, or None to not apply such corrections.

Returns:
md : lsst.daf.base.PropertyList

Metadata about the catalog.

joinMatchListWithCatalog(matchCat, sourceCat)

Relink an unpersisted match list to sources and reference objects.

A match list is persisted and unpersisted as a catalog of IDs produced by afw.table.packMatches(), with match metadata (as returned by the astrometry tasks) in the catalog’s metadata attribute. This method converts such a match catalog into a match list, with links to source records and reference object records.

Parameters:
matchCat : lsst.afw.table.BaseCatalog

Unpersisted packed match list. matchCat.table.getMetadata() must contain match metadata, as returned by the astrometry tasks.

sourceCat : lsst.afw.table.SourceCatalog

Source catalog. As a side effect, the catalog will be sorted by ID.

Returns:
matchList : lsst.afw.table.ReferenceMatchVector

Match list.

static makeMinimalSchema(filterNameList, *, addCentroid=False, addIsPhotometric=False, addIsResolved=False, addIsVariable=False, coordErrDim=2, addProperMotion=False, properMotionErrDim=2, addParallax=False)

Make a standard schema for reference object catalogs.

Parameters:
filterNameList : list of str

List of filter names. Used to create <filterName>_flux fields.

addIsPhotometric : bool

If True then add field “photometric”.

addIsResolved : bool

If True then add field “resolved”.

addIsVariable : bool

If True then add field “variable”.

coordErrDim : int

Number of coord error fields; must be one of 0, 2, 3:

  • If 2 or 3: add fields “coord_raErr” and “coord_decErr”.
  • If 3: also add field “coord_radecErr”.
addProperMotion : bool

If True add fields “epoch”, “pm_ra”, “pm_dec” and “pm_flag”.

properMotionErrDim : int

Number of proper motion error fields; must be one of 0, 2, 3; ignored if addProperMotion false: - If 2 or 3: add fields “pm_raErr” and “pm_decErr”. - If 3: also add field “pm_radecErr”.

addParallax : bool

If True add fields “epoch”, “parallax”, “parallaxErr” and “parallax_flag”.

Returns:
schema : lsst.afw.table.Schema

Schema for reference catalog, an lsst.afw.table.SimpleCatalog.

Notes

Reference catalogs support additional covariances, such as covariance between RA and proper motion in declination, that are not supported by this method, but can be added after calling this method.