slaUnpcd -


void slaUnpcd(disco, x, y)


double disco
double *x
double *y


  Remove pincushion/barrel distortion from a distorted [x,y]
  to give tangent-plane [x,y].


     disco    double      pincushion/barrel distortion coefficient
     x,y      double      distorted coordinates


     *x,*y    double      tangent-plane coordinates


   1)  The distortion is of the form rp = r*(1 + c*r2), where r is
       the radial distance from the tangent point, c is the disco
       arguments, and rp is the radial distance in the presence of
       the distortion.

   2)  For pincushion distortion, c is +ve;
       For barrel distortion, c is -ve.

   3)  For x,y in "radians" - units of one projection radius,
       which in the case of a photograph is the focal length of
the camera - the following disco values apply

           geometry          disco

           astrograph         0.0
           schmidt           -0.3333
           AAT PF doublet  +147.069
           AAT PF triplet  +178.585
           AAT f/8          +21.20
           JKT f/8          +13.32

    4)  The present routine is an approximate inverse to the
        companion routine slaPcd, obtained from two iterations
        of Newton's method.  The mismatch between the slaPcd and
        slaUnpcd routines is negligible for astrometric applications;
        To reach 1 milliarcsec at the edge of the AAT triplet or
        Schmidt field would require field diameters of 2.4 degrees
        and 42 degrees respectively.

  P.T.Wallace   Starlink   15 July 1993