SimpleAlgorithm

class lsst.ts.mtdometrajectory.SimpleAlgorithm(**kwargs)

Bases: BaseAlgorithm

Simple algorithm to follow the target position from the pointing kernel.

If the difference between the telescope target and dome target position is larger than the configured maximum, then command dome elevation/azimuth position = telescope_target elevation/azimuth position and zero velocity. Otherwise don’t move the dome in elevation/azimuth. Note that the test is applied independently for elevation and azimuth, so the dome may be commanded in elevation or azimuth or both.

Methods Summary

configure(*[, max_delta_elevation, ...])

Configure the algorithm.

desired_dome_azimuth(dome_target_azimuth, ...)

Return a new target dome azimuth if dome movement is needed to avoid vignetting, else None.

desired_dome_elevation(...[, ...])

Return a new target dome elevation if dome movement is needed to avoid vignetting, else None.

Methods Documentation

configure(*, max_delta_elevation=5, max_delta_azimuth=5)

Configure the algorithm.

Parameters
max_delta_elevationfloat

Maximum allowed difference between dome commanded elevation and telescope_target target elevation.

max_delta_azimuthfloat

Maximum allowed difference between dome commanded azimuth and telescope_target target azimuth.

desired_dome_azimuth(dome_target_azimuth, telescope_target, next_telescope_target=None)

Return a new target dome azimuth if dome movement is needed to avoid vignetting, else None.

Parameters
dome_target_azimuthlsst.ts.simactuators.path.PathSegment or None

Dome target azimuth.

telescope_targetElevationAzimuth

Telescope target elevation and azimuth.

next_telescope_targetElevationAzimuth or None, optional

Next telescope_target target elevation and azimuth, if known, else None. Ignored.

Returns
dome_target_azimuthlsst.ts.simactuators.path.PathSegment or None

New desired dome azimuth, or None if no change.

desired_dome_elevation(dome_target_elevation, telescope_target, next_telescope_target=None)

Return a new target dome elevation if dome movement is needed to avoid vignetting, else None.

Parameters
dome_target_elevationlsst.ts.simactuators.path.PathSegment or None

Dome target elevation, or None if unknown.

telescope_targetElevationAzimuth

Telescope target elevation and azimuth.

next_telescope_targetElevationAzimuth or None, optional

Next telescope_target target elevation and azimuth, if known, else None. Ignored.

Returns
dome_target_elevationlsst.ts.simactuators.path.PathSegment or None

New desired dome elevation, or None if no change.