File ConstrainedAstrometryModel.h

namespace lsst

Class for a simple mapping implementing a generic AstrometryTransform.

Remove all non-astronomical counts from the Chunk Exposure’s pixels.

Forward declarations for lsst::utils::Cache

For details on the Cache class, see the Cache.h file.

It uses a template rather than a pointer so that the derived classes can use the specifics of the transform. The class simplePolyMapping overloads a few routines.

A base class for image defects

Numeric constants used by the Integrate.h integrator routines.

Compute Image Statistics

Note

Gauss-Kronrod-Patterson quadrature coefficients for use in quadpack routine qng. These coefficients were calculated with 101 decimal digit arithmetic by L. W. Fullerton, Bell Labs, Nov 1981.

Note

The Statistics class itself can only handle lsst::afw::image::MaskedImage() types. The philosophy has been to handle other types by making them look like lsst::afw::image::MaskedImage() and reusing that code. Users should have no need to instantiate a Statistics object directly, but should use the overloaded makeStatistics() factory functions.

namespace jointcal
class ConstrainedAstrometryModel : public lsst::jointcal::AstrometryModel
#include <ConstrainedAstrometryModel.h>

A multi-component model, fitting mappings for sensors and visits simultaneously.

This is the model used to fit mappings as the combination of a transformation depending on the chip number (instrument model) and a transformation per visit (anamorphism). The two-transformation Mapping required for this model is ChipVisitAstrometryMapping. This modeling of distortions is meant for a set of images from a single mosaic imager.

Parameters
  • ccdImageList: The exposures that will be fit.

  • projectionHandler: The projection from “Sky” (where the “true” coordinates live) to “Tangent Plane” (where the fitting occurs).

  • chipOrder: The polynomial order of the pixel->focal plane mapping for each sensor.

  • visitOrder: The polynomial order of the focal plane->tangent plane mapping for each visit.

Public Functions

ConstrainedAstrometryModel(CcdImageList const &ccdImageList, std::shared_ptr<ProjectionHandler const> projectionHandler, int chipOrder, int visitOrder)
ConstrainedAstrometryModel(ConstrainedAstrometryModel const&)

No copy or move: there is only ever one instance of a given model (i.e. per ccd+visit)

ConstrainedAstrometryModel(ConstrainedAstrometryModel&&)
ConstrainedAstrometryModel &operator=(ConstrainedAstrometryModel const&)
ConstrainedAstrometryModel &operator=(ConstrainedAstrometryModel&&)
AstrometryMapping const *getMapping(CcdImage const&) const

Mapping associated to a given CcdImage.

Eigen::Index assignIndices(std::string const &whatToFit, Eigen::Index firstIndex)

Positions the various parameter sets into the parameter vector, starting at firstIndex.

void offsetParams(Eigen::VectorXd const &Delta)

Dispaches the offsets after a fit step into the actual locations of parameters.

void freezeErrorTransform()

From there on, measurement errors are propagated using the current transforms (and no longer evolve).

std::size_t getTotalParameters() const

Return the total number of parameters in this model.

AstrometryTransform const &getChipTransform(CcdIdType const chip) const

Access to mappings.

AstrometryTransform const &getVisitTransform(VisitIdType const &visit) const

Access to mappings.

std::vector<VisitIdType> getVisits() const

Access to array of visits involved in the solution.

const std::shared_ptr<AstrometryTransform const> getSkyToTangentPlane(CcdImage const &ccdImage) const

The mapping of sky coordinates (i.e. the coordinate system in which fitted stars are reported) onto the Tangent plane (into which the pixel coordinates are transformed).

std::shared_ptr<afw::geom::SkyWcs> makeSkyWcs(CcdImage const &ccdImage) const

Make a SkyWcs that contains this model.

Return

SkyWcs containing this model.

Parameters
  • ccdImage: The exposure to create the SkyWcs for.

Private Functions

AstrometryMapping *findMapping(CcdImage const &ccdImage) const

Return a pointer to the mapping associated with this ccdImage.

Private Members

std::unordered_map<CcdImageKey, std::unique_ptr<ChipVisitAstrometryMapping>> _mappings
std::map<CcdIdType, std::shared_ptr<SimpleAstrometryMapping>> _chipMap
std::map<VisitIdType, std::shared_ptr<SimpleAstrometryMapping>> _visitMap
const std::shared_ptr<ProjectionHandler const> _skyToTangentPlane
bool _fittingChips
bool _fittingVisits