# Sip¶

class astropy.wcs.Sip(*a, b, ap, bp, crpix*)

Bases: object

The Sip class performs polynomial distortion correction using the SIP convention in both directions.

Parameters
anumpy.ndarray

The A_i_j polynomial for pixel to focal plane transformation as double array[m+1][m+1]. Its size must be (m + 1, m + 1) where m = A_ORDER.

bnumpy.ndarray

The B_i_j polynomial for pixel to focal plane transformation as double array[m+1][m+1]. Its size must be (m + 1, m + 1) where m = B_ORDER.

apnumpy.ndarray

The AP_i_j polynomial for pixel to focal plane transformation as double array[m+1][m+1]. Its size must be (m + 1, m + 1) where m = AP_ORDER.

bpnumpy.ndarray

The BP_i_j polynomial for pixel to focal plane transformation as double array[m+1][m+1]. Its size must be (m + 1, m + 1) where m = BP_ORDER.

crpixnumpy.ndarray

The reference pixel as double array[2].

Notes

Shupe, D. L., M. Moshir, J. Li, D. Makovoz and R. Narron. 2005. “The SIP Convention for Representing Distortion in FITS Image Headers.” ADASS XIV.

Attributes Summary

 a double array[a_order+1][a_order+1] Focal plane transformation matrix. a_order int (read-only) Order of the polynomial (A_ORDER). ap double array[ap_order+1][ap_order+1] Focal plane to pixel transformation matrix. ap_order int (read-only) Order of the polynomial (AP_ORDER). b double array[b_order+1][b_order+1] Pixel to focal plane transformation matrix. b_order int (read-only) Order of the polynomial (B_ORDER). bp double array[bp_order+1][bp_order+1] Focal plane to pixel transformation matrix. bp_order int (read-only) Order of the polynomial (BP_ORDER). crpix double array[naxis] Coordinate reference pixels (CRPIXja) for each pixel axis.

Methods Summary

 foc2pix sip_foc2pix(foccrd, origin) -> double array[ncoord][nelem] pix2foc sip_pix2foc(pixcrd, origin) -> double array[ncoord][nelem]

Attributes Documentation

a

double array[a_order+1][a_order+1] Focal plane transformation matrix.

The SIP A_i_j matrix used for pixel to focal plane transformation.

Its values may be changed in place, but it may not be resized, without creating a new Sip object.

a_order

int (read-only) Order of the polynomial (A_ORDER).

ap

double array[ap_order+1][ap_order+1] Focal plane to pixel transformation matrix.

The SIP AP_i_j matrix used for focal plane to pixel transformation. Its values may be changed in place, but it may not be resized, without creating a new Sip object.

ap_order

int (read-only) Order of the polynomial (AP_ORDER).

b

double array[b_order+1][b_order+1] Pixel to focal plane transformation matrix.

The SIP B_i_j matrix used for pixel to focal plane transformation. Its values may be changed in place, but it may not be resized, without creating a new Sip object.

b_order

int (read-only) Order of the polynomial (B_ORDER).

bp

double array[bp_order+1][bp_order+1] Focal plane to pixel transformation matrix.

The SIP BP_i_j matrix used for focal plane to pixel transformation. Its values may be changed in place, but it may not be resized, without creating a new Sip object.

bp_order

int (read-only) Order of the polynomial (BP_ORDER).

crpix

double array[naxis] Coordinate reference pixels (CRPIXja) for each pixel axis.

Methods Documentation

foc2pix()

sip_foc2pix(foccrd, origin) -> double array[ncoord][nelem]

Convert focal plane coordinates to pixel coordinates using the SIP polynomial distortion convention.

Parameters
foccrdnumpy.ndarray

Array of focal plane coordinates as double array[ncoord][nelem].

originint

Specifies the origin of pixel values. The Fortran and FITS standards use an origin of 1. Numpy and C use array indexing with origin at 0.

Returns
pixcrdnumpy.ndarray

Returns an array of pixel coordinates as double array[ncoord][nelem].

Raises
MemoryError

Memory allocation failed.

ValueError

Invalid coordinate transformation parameters.

pix2foc()

sip_pix2foc(pixcrd, origin) -> double array[ncoord][nelem]

Convert pixel coordinates to focal plane coordinates using the SIP polynomial distortion convention.

Parameters
pixcrdnumpy.ndarray

Array of pixel coordinates as double array[ncoord][nelem].

originint

Specifies the origin of pixel values. The Fortran and FITS standards use an origin of 1. Numpy and C use array indexing with origin at 0.

Returns
foccrdnumpy.ndarray

Returns an array of focal plane coordinates as double array[ncoord][nelem].

Raises
MemoryError

Memory allocation failed.

ValueError

Invalid coordinate transformation parameters.