Class lsst::meas::astrom::SipForwardTransform

class SipForwardTransform : public lsst::meas::astrom::SipTransformBase

A transform that maps pixel coordinates to intermediate world coordinates according to the SIP convention.

The SIP forward transform is defined as

[xy]=Z[(uu0)+2p+qNp,qAp,q(uu0)p(vv0)q(vv0)+2p+qNp,qBp,q(uu0)p(vv0)q]
where
  • (u,v) are pixel coordinates (zero-indexed).

  • (x,y) are “intermediate world coordinates” the result of applying the gnomonic (TAN) projection at sky origin CRVAL to sky coordinates).

  • Z is the 2×2 linear transform ( CD) matrix.

  • (u0,v0) is the pixel origin CRPIX (but zero-indexed; the FITS standard is 1-indexed).

  • A, B are the polynomial coefficients of the forward transform.

The SIP convention encourages (but does not require) nulling the zeroth- and first-order elements of A and B, which ensures the representation of a given transform is unique. This also makes fitting a SIP transform to data a nonlinear operation, as well as making the conversion from standard polynomial transforms to SIP form impossible in general. Accordingly, this class does not attempt to null low-order polynomial terms at all when converting from other transforms.

SipForwardTransform instances should be confined to a single thread.