The cbp package provides code for the LSST collimated beam projector (CBP). The primary objects of interest are:

lsst.cbp.CoordinateConverter: compute the telescope and CBP pointing that will give you a desired beam arrangement, such as placing beam b at point p on the pupil and point d on a specified detector.

lsst.cbp.computeHolePositions: compute hole positions for a CBP mask.

To construct an lsst.cbp.CoordinateConverter you will need to learn about configuration:

In order to configure and use an lsst.cbp.CoordinateConverter it may help to have some understanding of the coordinate systems involved:

Python API reference

lsst.cbp Package


computeHolePositions(detectorNames, …) Compute hole positions for a CBP mask.


BeamInfo(cameraGeom, name, holePos, …) Information about a beam at the telescope.
CoordinateConverter(config, maskInfo, cameraGeom) Coordinate conversions for the collimated beam projector (CBP).
CoordinateConverterConfig(*, telPupilOffset, …) Configuration for the CoordinateConverter.
MaskInfo(name, defaultHole, holePositions[, …]) Information about a CBP mask.

Class Inheritance Diagram

Inheritance diagram of lsst.cbp.beamInfo.BeamInfo, lsst.cbp.coordinateConverter.CoordinateConverter, lsst.cbp.coordinateConverterConfig.CoordinateConverterConfig, lsst.cbp.maskInfo.MaskInfo

lsst.cbp.coordUtils Module

Coordinate conversion functions


fieldAngleToVector(xyrad, flipX) Convert a pupil field angle to a pupil unit vector.
vectorToFieldAngle(vec, flipX) Convert a vector to a pupil field angle.
pupilPositionToVector(xyPos, flipX) Convert a pupil plane position to a 3D vector.
computeShiftedPlanePos(planePos, fieldAngle, …) Compute the plane position of a vector on a plane shifted along the optical axis.
convertVectorFromBaseToPupil(vectorBase, …) Given a vector in base coordinates and the pupil pointing, compute the vector in pupil coordinates.
convertVectorFromPupilToBase(vectorPupil, …) Given a vector in pupil coordinates and the pupil pointing, compute the vector in base coords.
computeAzAltFromBasePupil(vectorBase, …) Compute az/alt from a vector in the base frame and the same vector in the pupil frame.
getFlippedPos(xyPos, flipX) Get a 2-dimensional position with the x axis properly flipped.
rotate2d(pos, angle) Rotate a 2-dimensional position by a given angle.

lsst.cbp.testUtils Module

SampleCoordinateConverter class: make a CoordinateConverter for tests


SampleCoordinateConverter([…]) An object containing a CoordinateConverter and the information used to create it.

Class Inheritance Diagram

Inheritance diagram of lsst.cbp.testUtils.SampleCoordinateConverter