NAME
    ccmap  --  compute plate solutions using matched pixel and celestial
    coordinate lists
 
 
USAGE
    ccmap input database
 
 
PARAMETERS
 
    input
        The  input  text  files  containing  the  pixel  and   celestial
        coordinates  of  points in the input images. The coordinates are
        listed one per line with  x,  y,  ra  /  longitude,  and  dec  /
        latitude  in  the  columns  specified  by  the xcolumn, ycolumn,
        lngcolumn, and latcolumn parameters respectively.
 
    database
        The text database file where the computed  plate  solutions  are
        stored.
 
    solutions = ""
        An  optional  list  of  plate  solution  names.  If no names are
        supplied then the database records are  assigned  the  names  of
        the  input  images  images, or the names of the coordinate files
        input.
 
    images = ""
        The images associated  with  the  input  coordinate  files.  The
        number  of  images  must be zero or equal to the number of input
        coordinate files. If  an  input  image  exists  and  the  update
        parameter  is  enabled,  the  image wcs will be created from the
        linear component of the computed plate solution and  written  to
        the image header.
 
    results = ""
        Optional  output  files  containing  a  summary  of  the results
        including a description of the plate geometry and a  listing  of
        the  input  coordinates,  the  fitted  coordinates,  and the fit
        residuals. The number of results files must be one or  equal  to
        the  number  of  input files. If results is "STDOUT" the results
        summary is printed on the standard output.
 
    xcolumn = 1, ycolumn = 2, lngcolumn = 3, latcolumn = 4
        The input coordinate file columns containing  the  x,  y,  ra  /
        longitude and dec / latitude values.
 
    xmin = INDEF, xmax = INDEF, ymin = INDEF, ymax = INDEF
        The  range  of x and y pixel coordinates over which the computed
        coordinate transformation is valid. These limits should be  left
        at  INDEF  or  set to the values of the column and row limits of
        the input images, e.g xmin = 1.0, xmax = 512, ymin= 1.0, ymax  =
        512  for  a  512  x 512 image.  If xmin, xmax, ymin, or ymax are
        undefined, they are set to the  minimum  and  maximum  x  and  y
        pixels values in input.
 
    lngunits = "", latunits = ""
        The  units  of  the  input  ra  /  longitude  and dec / latitude
        coordinates. The options are "hours", "degrees",  and  "radians"
        for  ra  /  longitude,  and  "degrees"  and  "radians" for dec /
        latitude. If  the  lngunits  and  latunits  are  undefined  they
        default  to  the  preferred  units  for  the  coordinate  system
        specified by insystem, e.g. "hours" and "degrees" for equatorial
        systems, and "degrees" and "degrees" for ecliptic, galactic, and
        supergalactic systems.
 
    insystem = "j2000"
        The input celestial coordinate system.  The  insystem  parameter
        sets  the  preferred  units for the input celestial coordinates,
        tells CCMAP how to transform the celestial  coordinates  of  the
        reference  point  from  the reference point coordinate system to
        the input coordinate system, and sets the correct values of  the
        image  header  keywords CTYPE, RADECSYS, EQUINOX, and MJD-WCS if
        the image header wcs is updated. The systems  of  most  interest
        to  users  are  "icrs", "j2000", and "b1950" which stand for the
        ICRS J2000.0, FK5 J2000.0 and FK4 B1950.0  celestial  coordinate
        systems   respectively.    The  full  set  of  options  are  the
        following:
 
 
        equinox [epoch]
            The equatorial mean place  post-IAU  1976  (FK5)  system  if
            equinox  is  a  Julian epoch, e.g. J2000.0 or 2000.0, or the
            equatorial mean place pre-IAU 1976 system (FK4)  if  equinox
            is  a  Besselian  epoch,  e.g.  B1950.0  or  1950.0.  Julian
            equinoxes are prefixed by a J or j, Besselian  equinoxes  by
            a  B  or  b. Equinoxes without the J / j or B / b prefix are
            treated as Besselian epochs if they  are  <  1984.0,  Julian
            epochs  if  they  are  >= 1984.0.  Epoch is the epoch of the
            observation and may be a Julian epoch,  a  Besselian  epoch,
            or  a  Julian  date. Julian epochs are prefixed by a J or j,
            Besselian epochs by a B or b.  Epochs without the J /  j  or
            B  /  b  prefix  default to the epoch type of equinox if the
            epoch value <= 3000.0, otherwise epoch is interpreted  as  a
            Julian date.  If undefined epoch defaults to equinox.
 
        icrs [equinox] [epoch]
            The  Internaltion Celestial Refernce System where equinox is
            a Julian  or  Besselian  epoch  e.g.  J2000.0   or  B1980.0.
            Equinoxes  without  the J / j or B / b prefix are treated as
            Julian epochs.  The default value  of  equinox  is  J2000.0.
            Epoch  is  a  Besselian  epoch,  a Julian epoch, or a Julian
            date.  Julian epochs are prefixed by a  J  or  j,  Besselian
            epochs  by  a  B  or  b.   Epochs without the J / j or B / b
            prefix default to  Julian  epochs  if  the  epoch  value  <=
            3000.0,  otherwise  epoch  is  interpreted as a Julian date.
            If undefined epoch defaults to equinox.
 
        fk5 [equinox] [epoch]
            The equatorial mean place post-IAU 1976 (FK5)  system  where
            equinox  is  a  Julian  or  Besselian epoch e.g. J2000.0  or
            B1980.0.  Equinoxes without the J / j or B /  b  prefix  are
            treated  as  Julian epochs.  The default value of equinox is
            J2000.0.  Epoch is a Besselian epoch, a Julian epoch,  or  a
            Julian  date.   Julian  epochs  are  prefixed  by  a J or j,
            Besselian epochs by a B or b.  Epochs without the J /  j  or
            B  / b prefix default to Julian epochs if the epoch value <=
            3000.0, otherwise epoch is interpreted  as  a  Julian  date.
            If undefined epoch defaults to equinox.
 
        fk4 [equinox] [epoch]
            The  equatorial  mean  place pre-IAU 1976 (FK4) system where
            equinox is a Besselian or  Julian  epoch  e.g.  B1950.0   or
            J2000.0,  and  epoch  is  the  Besselian  epoch,  the Julian
            epoch, or the Julian date  of  the  observation.   Equinoxes
            without  the  J / j or B / b prefix are treated as Besselian
            epochs. The default value of equinox is B1950.0. Epoch is  a
            Besselian  epoch,  a Julian epoch, or a Julian date.  Julian
            epochs are prefixed by a J or j, Besselian epochs by a B  or
            b.   Epochs  without  the  J  / j or B / b prefix default to
            Besselian epochs if the epoch  value  <=  3000.0,  otherwise
            epoch  is  interpreted as a Julian date.  If undefined epoch
            defaults to equinox.
 
        noefk4 [equinox] [epoch]
            The equatorial mean place  pre-IAU  1976  (FK4)  system  but
            without  the  E-terms where equinox is a Besselian or Julian
            epoch e.g. B1950.0 or J2000.0, and epoch  is  the  Besselian
            epoch,   the  Julian  epoch,  or  the  Julian  date  of  the
            observation.  Equinoxes without the J / j or B  /  b  prefix
            are  treated  as  Besselian  epochs.  The  default  value of
            equinox is B1950.0.  Epoch is a Besselian  epoch,  a  Julian
            epoch,  or a Julian date.  Julian epochs are prefixed by a J
            or j, Besselian epochs by a B or b.  Epochs without the J  /
            j  or  B / b prefix default to Besselian epochs if the epoch
            value <= 3000.0, otherwise epoch is interpreted as a  Julian
            day.  If undefined epoch defaults to equinox.
 
        apparent epoch
            The  equatorial  geocentric  apparent  place  post-IAU  1976
            system where epoch is the epoch of observation.  Epoch is  a
            Besselian  epoch,  a  Julian epoch or a Julian date.  Julian
            epochs are prefixed by a J or j, Besselian epochs by a B  or
            b.   Epochs  without  the  J  / j or B / b prefix default to
            Besselian epochs if the epoch value < 1984.0, Julian  epochs
            if   the   epoch   value   <=  3000.0,  otherwise  epoch  is
            interpreted as a Julian date.
        ecliptic epoch
            The ecliptic coordinate system where epoch is the  epoch  of
            observation.   Epoch  is  a Besselian epoch, a Julian epoch,
            or a Julian date.  Julian epochs are prefixed by a J  or  j,
            Besselian  epochs  by a B or b.  Epochs without the J / j or
            B / b prefix  default  to  Besselian  epochs  if  the  epoch
            values  <  1984.0,  Julian  epochs  if  the  epoch  value <=
            3000.0, otherwise epoch is interpreted as a Julian day.
 
        galactic [epoch]
            The  IAU  1958  galactic  coordinate  system.   Epoch  is  a
            Besselian  epoch,  a  Julian epoch or a Julian date.  Julian
            epochs are prefixed by a J or j, Besselian epochs by a B  or
            b.   Epochs  without  the  J  / j or B / b prefix default to
            Besselian epochs if the epoch value < 1984.0, Julian  epochs
            if   the   epoch   value   <=  3000.0,  otherwise  epoch  is
            interpreted as a Julian date. The default value of epoch  is
            B1950.0.
 
        supergalactic [epoch]
            The  deVaucouleurs  supergalactic  coordinate system.  Epoch
            is a Besselian epoch, a  Julian  epoch  or  a  Julian  date.
            Julian  epochs are prefixed by a J or j, Besselian epochs by
            a B or b.  Epochs without the J / j or B / b prefix  default
            to  Besselian  epochs  if  the  epoch value < 1984.0, Julian
            epochs if the epoch value  <=  3000.0,  otherwise  epoch  is
            interpreted  as a Julian date. The default value of epoch is
            B1950.0.
 
        In all the above cases  fields  in  []  are  optional  with  the
        defaults  as  described.  The  epoch  field  for  the icrs, fk5,
        galactic, and supergalactic coordinate systems is only  used  if
        the  input  coordinates  are in the equatorial fk4, noefk4, fk5,
        or icrs systems and proper motions are  supplied.   Since  CCMAP
        does  not  currently support proper motions these fields are not
        required.
 
 
    refpoint = "coords"
        The  definition  of  the  sky  projection  reference  point   in
        celestial  coordinates,  e.g.  the  tangent point in the case of
        the usual tangent plane projection.  The options are:
 
        coords
            The celestial coordinates of the reference point are set  to
            the  mean  of the input celestial coordinates, e.g. the mean
            of ra / longitude and dec /  latitude  coordinates.  If  the
            true  tangent point is reasonably close to the center of the
            input coordinate distribution  and  the  input  is  not  too
            large, this approximation is reasonably accurate.
 
        user
            The  values  of  the  keywords  lngref,  latref,  refsystem,
            lngrefunits, and  latrefunits  are  used  to  determine  the
            celestial coordinates of the reference point.
 
    lngref = "INDEF", latref = "INDEF"
        The  ra  /  longitude and dec / latitude of the reference point.
        Lngref and latref may be numbers, e.g 13:20:42.3  and  -33:41:26
        or  keywords for the appropriate parameters in the image header,
        e.g. RA and DEC for NOAO image data. If lngref  and  latref  are
        undefined  then  the position of the reference point defaults to
        the mean of the input coordinates.
 
    refsystem = "INDEF"
        The  celestial  coordinate  system  of  the   reference   point.
        Refsystem  may  be  any  one  of  the  options  listed under the
        insystem parameter, e.g.  "b1950", or an  image  header  keyword
        containing  the  epoch  of  the observation in years, e.g. EPOCH
        for NOAO data. In the  latter  case  the  coordinate  system  is
        assumed  to  be equatorial FK4 at equinox EPOCH. If refsystem is
        undefined the  celestial  coordinate  system  of  the  reference
        point  defaults  to the celestial coordinate system of the input
        coordinates insystem.
 
    lngrefunits = "", latrefunits = ""
        The units of the reference  point  celestial   coordinates.  The
        options  are  "hours",  "degrees",  and  "radians"  for the ra /
        longitude coordinates, and "degrees" and "radians" for  the  dec
        /latitude  coordinates.   If lngunits and latunits are undefined
        they default to the  units of the input coordinate system.
 
    projection = "tan"
        The sky projection geometry. The most commonly used  projections
        in   astronomy   are  "tan",  "arc",  "sin",  and  "lin".  Other
        supported  standard projections are "ait",  "car","csc",  "gls",
        "mer",  "mol",  "par",  "pco", "qsc", "stg", "tsc", and "zea". A
        new experimental function "tnx", a combination  of  the  tangent
        plate projection and polynomials, is also available.
 
    fitgeometry = "general"
        The  plate  solution  geometry  to  be used. The options are the
        following,  where  xi  and  eta  refer  to  the  usual  standard
        coordinates used in astrometry.
 
        shift
            Xi and eta shifts only are fit.
 
        xyscale
            Xi  and  eta shifts and x and y magnification factors in " /
            pixel are fit.  Axis flips are allowed for.
 
        rotate
            Xi and eta shifts and a rotation angle are fit.  Axis  flips
            are allowed for.
 
        rscale
            Xi  and  eta  shifts,  a  magnification  factor in " / pixel
            assumed to be the same in x and y, and a rotation angle  are
            fit. Axis flips are allowed for.
 
        rxyscale
            Xi  and  eta  shifts,  x and y magnifications factors in " /
            pixel, and  a  rotation  angle  are  fit.   Axis  flips  are
            allowed for.
 
        general
            A  polynomial of arbitrary order in x and y is fit. A linear
            term and a distortion  term  are  computed  separately.  The
            linear  term  includes  a xi and eta shift, an x and y scale
            factor in " / pixel, a rotation and a skew.  Axis flips  are
            also  allowed  for  in  the  linear  portion of the fit. The
            distortion  term  consists  of  a  polynomial  fit  to   the
            residuals  of  the  linear  term.  By default the distortion
            term is set to zero.
 
        For all the fitting geometries except  "general"  no  distortion
        term  is  fit, i.e. the x and y polynomial orders are assumed to
        be 2 and the cross term  switches  are  assumed  to  be  set  to
        "none",  regardless  of  the  values  of  the  xxorder, xyorder,
        xxterms, yxorder, yyorder and  yxterms  parameters  set  by  the
        user.
 
    function = "polynomial"
        The  type  of analytic coordinate surface to be fit. The options
        are the following.
 
        legendre
            Legendre polynomials in x and y.
 
        chebyshev
            Chebyshev polynomials in x and y.
 
        polynomial
            Power series polynomials in x and y.
 
    xxorder = 2, xyorder = 2,  yxorder = 2, yyorder = 2
        The order of the polynomials in x and y for the xi and eta  fits
        respectively.   The default order and cross term settings define
        the linear term in x and y, where  the  6  coefficients  can  be
        interpreted  in terms of an xi and eta shift, an x and y scaling
        in " / pixel, and rotations of the x and y axes.   The  "shift",
        "xyscale",   "rotation",   "rscale",   and  "rxyscale",  fitting
        geometries assume that the polynomial  order  parameters  are  2
        regardless  of  the  values set by the user. If any of the order
        parameters are higher than 2 and fitgeometry is "general",  then
        a  distortion  surface  is  fit to the residuals from the linear
        portion of the fit.
 
    xxterms = "half", yxterms = "half"
        The options are:
 
        none
            The individual polynomial  terms  contain  powers  of  x  or
            powers of y but not powers of both.
 
        half
            The  individual  polynomial  terms  contain  powers of x and
            powers of y, whose maximum combined power is MAX (xxorder  -
            1,  xyorder  -  1)  for  the  xi  fit  and MAX (yxorder - 1,
            yyorder - 1) for  the  eta  fit.  This  is  the  recommended
            option for higher order plate solutions.
 
        full
            The  individual  polynomial  terms  contain  powers of x and
            powers of y, whose maximum combined power is MAX (xxorder  -
            1  +  xyorder  -  1)  for  the xi fit and MAX (yxorder - 1 +
            yyorder - 1) for the eta fit.
 
        The "shift", "xyscale",  "rotation",  "rscale",  and  "rxyscale"
        fitting  geometries, assume that the cross term switches are set
        to "none" regardless of the values set by the user.   If  either
        of  the  cross-terms  parameters  is set to "half" or "full" and
        fitgeometry is "general" then a distortion surface is fit to the
        residuals from the linear portion of the fit.
 
    reject = INDEF
        The  rejection  limit  in  units  of  sigma.  The  default is no
        rejection.  Only one cycle of rejection is currently performed.
 
    update = no
        Update the world coordinate system in the input image headers  ?
        The  required  numerical  quantities represented by the keywords
        CRPIX, CRVAL, and CD are computed from  the  linear  portion  of
        the  plate solution, The values of the keywords CTYPE, RADECSYS,
        EQUINOX, and MJD-WCS are set  by  the  projection  and  insystem
        parameters.  As  there  is  currently  no standard mechanism for
        storing the higher order plate solution  terms  if  any  in  the
        image  header  wcs, these terms are currently ignored unless the
        projection function is  the  experimental  function  "tnx".  The
        "tnx"   function   is  not  FITS  compatable  and  can  only  be
        understood by IRAF. Any existing image wcs  represented  by  the
        above keywords is overwritten during the update.
 
    pixsystem = "logical"
        The input pixel coordinate system. The options are:
 
        logical
            The  logical  pixel  coordinate  system  is  the  coordinate
            system of  the  image  pixels  on  disk.  Since  most  users
            measure  the  pixel  coordinates  of objects in this system,
            "logical" is the system of choice for most applications.
 
        physical
            The physical  coordinate  system  is  the  pixel  coordinate
            system  of  the  parent  image  if  any.  This option may be
            useful for users working on images  that  are  pieces  of  a
            larger mosaic.
 
        The  choice  of  pixsystem has no affect on the fitting process,
        but does determine how the image header wcs is updated.
 
    verbose = yes
        Print detailed messages about the progress of the  task  on  the
        standard output ?
 
    interactive = yes
        Compute  the  plate solution interactively ? In interactive mode
        the user may interact with the  fitting  process,  e.g.   change
        the  order  of  the  fit,  reject  points,  display the data and
        refit, etc.
 
    graphics = "stdgraph"
        The graphics device.
 
    cursor = ""
        The graphics cursor.
 
 
DESCRIPTION
 
    CCMAP computes the plate solution for  an  image  using  a  list  of
    matched  pixel  and celestial coordinates. The celestial coordinates
    are usually  equatorial  coordinates,  but  may  also  be  ecliptic,
    galactic,  or supergalactic coordinates.  The input coordinate files
    input must be text  file  tables  whose  columns  are  delimited  by
    whitespace.  The  pixel  and  celestial  coordinates  are  listed in
    input, one per line with  x, y, ra / longitude, and dec  /  latitude
    in columns xcolumn, ycolumn, lngcolumn, and latcolumn respectively.
 
    The  xmin,  xmax,  ymin  and  ymax  parameters  define the region of
    validity of the fit in the  pixel  coordinate  system.  They  should
    normally  either  be  left set to INDEF, or set to the size of input
    images images if any, e.g. xmin= 1.0, xmax= 512.0, ymin = 1.0,  ymax
    =  512.0  for  a  512 square image. If set these parameters are also
    used to reject out of range pixel data before the actual fitting  is
    done.
 
    The  lngunits  and  latunits  parameters  set the units of the input
    celestial coordinates. If undefined  lngunits  and  latunits  assume
    sensible  defaults  for the input celestial coordinate system set by
    the insystem parameter, e.g. "hours" and  "degrees"  for  equatorial
    coordinates  and  "degrees"  and "degrees" for galactic coordinates.
    The input celestial coordinate system must be one of the  following:
    equatorial,  ecliptic,  galactic,  or supergalactic.  The equatorial
    coordinate systems must be one of: 1) FK4, the  mean  place  pre-IAU
    1976  system,  2) FK4-NO-E, the same as FK4 but without the E-terms,
    3)  FK5,  the  mean  place  post-IAU  1976  system,  4)  GAPPT,  the
    geocentric apparent place in the post-IAU 1976 system.
 
    The  plate  solution computed by CCMAP has the following form, where
    x and y are the pixel coordinates of points in the input  image  and
    xi  and eta are the corresponding standard coordinates in units of "
    / pixel.
 
         xi = f (x, y)
        eta = g (x, y)
 
    The standard coordinates xi and eta  are  computed  from  the  input
    celestial  coordinates  using the sky projection geometry projection
    and the celestial coordinates of the projection reference point  set
    by the user. The default projection is the tangent plane or gnomonic
    projection commonly used in optical astronomy. The projections  most
    commonly   used   in  astronomy  are  are  "sin"  (the  orthographic
    projection, used in radio aperture synthesis), "arc"  (the  zenithal
    equidistant  projection, widely used as an approximation for Schmidt
    telescopes), and "lin" (linear).  Other  supported  projections  are
    "ait",  "car",  "csc",  "gls",  "mer",  "mol",  "par", "pco", "qsc",
    "stg", "tsc", and "zea". The experimental projection function  "tnx"
    combines   the  "tan"  projection  with  a  polynomial  fit  to  the
    residuals can be  used  to  represent  more  complicated  distortion
    functions.
 
    Several  polynomial cross terms options are avaible. Options "none",
    "half", and "full" are illustrated below for a quadratic  polynomial
    in x and y.
    xxterms = "none", xyterms = "none"
    xxorder = 3, xyorder = 3, yxorder = 3, yyorder = 3
 
        xi = a11 + a21 * x + a12 * y +
             a31 * x ** 2 + a13 * y ** 2
       eta = a11' + a21' * x + a12' * y +
             a31' * x ** 2 + a13' * y ** 2
 
    xxterms = "half", xyterms = "half"
    xxorder = 3, xyorder = 3, yxorder = 3, yyorder = 3
 
        xi = a11 + a21 * x + a12 * y +
             a31 * x ** 2 + a22 * x * y + a13 * y ** 2
       eta = a11' + a21' * x + a12' * y +
             a31' * x ** 2 + a22' * x * y + a13' * y ** 2
 
    xxterms = "full", xyterms = "full"
    xxorder = 3, xyorder = 3, yxorder = 3, yyorder = 3
 
        xi = a11 + a21 * x + a31 * x ** 2 +
             a12 * y + a22 * x * y +  a32 * x ** 2 * y +
             a13 * y ** 2 + a23 * x *  y ** 2 + a33 * x ** 2 * y ** 2
       eta = a11' + a21' * x + a31' * x ** 2 +
             a12' * y + a22' * x * y +  a32' * x ** 2 * y +
             a13' * y ** 2 + a23' * x *  y ** 2 + a33' * x ** 2 * y ** 2
 
    If  refpoint is "coords", then the sky projection reference point is
    set to the mean of  the  input  celestial  coordinates.  For  images
    where  the  true reference point is close to the center of the input
    coordinate  distribution,  this  definition  is  adequate  for  many
    purposes.  If  refpoint  is  "user",  the  user  may  either set the
    celestial  coordinates  of  the  reference  point  explicitly,  e.g.
    lngref   =  13:41:02.3  and  latref  =  -33:42:20,  or  point  these
    parameters to the appropriate keywords in the  input  image  header,
    e.g.  lngref  =  RA, latref = DEC for NOAO image data.  If undefined
    the celestial coordinate system of  the  reference  point  refsystem
    defaults   to   the   celestial   coordinate  system  of  the  input
    coordinates,  otherwise  it  be  any  of  the  supported   celestial
    coordinate  systems described above. The user may also set refsystem
    to the image header keyword containing the epoch  of  the  celestial
    reference  point  coordinates in years, e.g. EPOCH for NOAO data. In
    this  case  the  reference  point  coordinates  are  assumed  to  be
    equatorial  FK4  coordinates  at  the  epoch specified by EPOCH. The
    units of the reference point celestial coordinates are specified  by
    the   lngrefunits   and   latrefunits  parameters.  Lngrefunits  and
    latrefunits default to the values of the input coordinate  units  if
    undefined  by  either  the  user  or  the  refsystem parameter. ONCE
    DETERMINED THE REFERENCE POINT CANNOT BE RESET  DURING  THE  FITTING
    PROCESS.
 
    The  fitting  functions  f  and  g  are  specified  by  the function
    parameter  and   may   be   power   series   polynomials,   Legendre
    polynomials,  or  Chebyshev polynomials of order xxorder and xyorder
    in x and yxorder and yyorder in y. Cross-terms are optional and  are
    turned  on and off by setting the xxterms and xyterms parameters. If
    the fitgeometry parameter is  anything  other  than  "general",  the
    order  parameters  assume  the  value 2 and the cross-terms switches
    assume the value "none", regardless of the values set by  the  user.
    All  computation  are  done  in  double  precision.  Automatic pixel
    rejection may be enabled by setting reject to a , usually  something
    in  the  range  3.0-5.0. Only one cycle of automatic pixel rejection
    is currently permitted.
 
    CCMAP may be run interactively by setting interactive to  "yes"  and
    inputing  commands  by  the use of simple keystrokes. In interactive
    mode the user has the option of changing the fitting parameters  and
    displaying  the  data  and  fit graphically until a satisfactory fit
    has been achieved. The keystroke commands are listed below.
 
 
    ?       Print options
    f       Fit data and graph fit with the current graph type (g,x,r,y,s)
    g       Graph the data and the current fit
    x,r     Graph the xi residuals versus x and y respectively
    y,s     Graph the eta residuals versus x and y respectively
    d,u     Delete or undelete the data point nearest the cursor
    o       Overplot the next graph
    c       Toggle the line of constant x and y plotting option
    t       Plot a line of constant x and y through nearest data point
    l       Print xishift, etashift, xscale, yscale, xrotate, yrotate
    q       Exit the interactive fitting code
 
    The parameters  listed  below  can  be  changed  interactively  with
    simple  colon  commands.  Typing  the parameter name along will list
    the current value.
 
    :show                List parameters
    :projection          Sky projection
    :refpoint            Sky projection reference point
    :fit      [value]    Fit type (shift,xyscale,rotate,rscale,rxyscale,general)
    :function [value]    Fitting function (chebyshev,legendre,polynomial)
    :xxorder  [value]    Xi fitting function order in x
    :xyorder  [value]    Xi fitting function order in y
    :yxorder  [value]    Eta fitting function order in x
    :yyorder  [value]    Eta fitting function order in y
    :xxterms  [n/h/f]    The xi fit cross terms type
    :yxterms  [n/h/f]    The eta fit cross terms type
    :reject   [value]    K-sigma rejection threshold
    The final fit is stored in the text database file database file in a
    format  suitable  for use by the CCSETWCS and CCTRAN tasks. Each fit
    is stored in a record whose name is the  name  of  the  input  image
    image  if  one is supplied, or the name of the input coordinate file
    input.
 
    If the update switch is "yes" and an input  image  is  specified,  a
    new  image  wcs is derived from the linear component of the computed
    plate solution and  written  to  the  image  header.  The  numerical
    components  of  the  new image wcs are written to the standards FITS
    keywords, CRPIX, CRVAL, and CD, with the actual values depending  on
    the  input  pixel  coordinate  system  pixsystem.  The FITS keywords
    which define the image celestial coordinate system CTYPE,  RADECSYS,
    EQUINOX,  and  MJD-WCS  are  set  by  the  insystem  and  projection
    parameters.
 
    The first four characters of the values of the ra  /  longitude  and
    dec  / latitude axis CTYPE keywords specify the celestial coordinate
    system. They are set  to  RA--  /  DEC-  for  equatorial  coordinate
    systems,  ELON  /  ELAT  for  the ecliptic coordinate system, GLON /
    GLAT for the galactic coordinate system, and SLON  /  SLAT  for  the
    supergalactic coordinate system.
 
    The  second  four characters of the values of the ra / longitude and
    dec / latitude  axis  CTYPE  keywords  specify  the  sky  projection
    geometry.  IRAF currently supports the TAN, SIN, ARC, AIT, CAR, CSC,
    GLS,  MER,  MOL,  PAR,  PCO,  QSC,  STG,  TSC,  and   ZEA   standard
    projections,  in which case the second 4 characters of CTYPE are set
    to   -TAN,  -ARC,  -SIN,  etc.  IRAF  and  CCMAP  also  support  the
    experiment TAN plus polynomials function driver.
 
    If  the  input  celestial coordinate system is equatorial, the value
    of  the  RADECSYS  keyword  specifies  the  fundamental   equatorial
    system,  EQUINOX  specifies the epoch of the mean place, and MJD-WCS
    specifies the epoch  for  which  the  mean  place  is  correct.  The
    permitted  values  of  RADECSYS  are  FK4,  FK4-NO-E, FK5, ICRS, and
    GAPPT. EQUINOX is entered in years and interpreted  as  a  Besselian
    epoch  for  the  FK4  system, a Julian epoch for the FK5 system. The
    epoch of the wcs MJD-WCS is entered as a modified Julian date.  Only
    those  keywords  necessary  to  defined the new wcs are written. Any
    existing keywords which are not required to define the  wcs  or  are
    redundant  are  removed,  with  the exception of DATE-OBS and EPOCH,
    which are left unchanged for obvious (DATE_OBS) and historical  (use
    of EPOCH keyword at NOAO) reasons.
 
    If  verbose  is  "yes",  various  pieces  of  useful information are
    printed to the terminal as the task proceeds. If results is set to a
    file  name  then  the  original pixel and celestial coordinates, the
    fitted celestial coordinates,  and  the  residuals  of  the  fit  in
    arcseconds are written to that file.
 
    The  transformation  computed  by  the "general" fitting geometry is
    arbitrary and does not correspond to a physically meaningful  model.
    However  the  computed coefficients for the linear term can be given
    a simple geometrical interpretation for all the  fitting  geometries
    as shown below.
 
            fitting geometry = general (linear term)
                 xi = a + b * x + c * y
                eta = d + e * x + f * y
 
            fitting geometry = shift
                 xi = a + x
                eta = d + y
 
            fitting geometry = xyscale
                 xi = a + b * x
                eta = d + f * y
 
            fitting geometry = rotate
                 xi = a + b * x + c * y
                eta = d + e * x + f * y
                b * f - c * e = +/-1
                b = f, c = -e or b = -f, c = e
 
            fitting geometry = rscale
                 xi = a + b * x + c * y
                eta = d + e * x + f * y
                b * f - c * e = +/- const
                b = f, c = -e or b = -f, c = e
 
            fitting geometry = rxyscale
                 xi = a + b * x + c * y
                eta = d + e * x + f * y
                b * f - c * e = +/- const
 
    The  coefficients  can  be interpreted as follows. X0, y0, xi0, eta0
    are the origins in the reference and input frames  respectively.  By
    definition  xi0  and eta0 are 0.0 and 0.0 respectively. Rotation and
    skew are the rotation of the x and y axes and their  deviation  from
    perpendicularity  respectively.   Xmag  and  ymag  are  the  scaling
    factors in x and y in " / pixel and are assumed to  be  positive  by
    definition.
 
            general (linear term)
                xrotation = rotation - skew / 2
                yrotation = rotation + skew / 2
                b = xmag * cos (xrotation)
                c = ymag * sin (yrotation)
                e = -xmag * sin (xrotation)
                f = ymag * cos (yrotation)
                a = xi0 - b * x0 - c * y0 = xshift
                d = eta0 - e * x0 - f * y0 = yshift
 
            shift
                xrotation = 0.0,  yrotation = 0.0
                xmag = ymag = 1.0
                b = 1.0
                c = 0.0
                e = 0.0
                f = 1.0
                a = xi0 - x0 = xshift
                d = eta0 - y0 = yshift
 
            xyscale
                xrotation 0.0 / 180.0 yrotation = 0.0
                b = + /- xmag
                c = 0.0
                e = 0.0
                f = ymag
                a = xi0 - b * x0 = xshift
                d = eta0 - f * y0 = yshift
 
            rscale
                xrotation = rotation + 0 / 180, yrotation = rotation
                mag = xmag = ymag
                const = mag * mag
                b = mag * cos (xrotation)
                c = mag * sin (yrotation)
                e = -mag * sin (xrotation)
                f = mag * cos (yrotation)
                a = xi0 - b * x0 - c * y0 = xshift
                d = eta0 - e * x0 - f * y0 = yshift
 
            rxyscale
                xrotation = rotation + 0 / 180, yrotation = rotation
                const = xmag * ymag
                b = xmag * cos (xrotation)
                c = ymag * sin (yrotation)
                e = -xmag * sin (xrotation)
                f = ymag * cos (yrotation)
                a = xi0 - b * x0 - c * y0 = xshift
                d = eta0 - e * x0 - f * y0 = yshift
 
 
 
REFERENCES
 
 
    Additional  information  on the IRAF world coordinate systems can be
    found  in  the  help  pages  for  the  WCSEDIT  and  WCRESET  tasks.
    Detailed   documentation   for  the  IRAF  world  coordinate  system
    interface MWCS can be found in  the  file  "iraf$sys/mwcs/MWCS.hlp".
    This  file  can  be  formatted  and  printed  with the command "help
    iraf$sys/mwcs/MWCS.hlp fi+ | lprint".
 
    Details of the FITS header world coordinate system interface can  be
    found  in  the draft paper "World Coordinate Systems Representations
    Within the FITS Format" by Hanisch and  Wells,  available  from  the
    iraf  anonymous  ftp archive and the draft paper which supersedes it
    "Representations of Celestial Coordinates in FITS"  by  Greisen  and
    Calabretta available from the nrao anonymous ftp archives.
 
    The  spherical astronomy routines employed here are derived from the
    Starlink SLALIB library provided courtesy of Patrick Wallace.  These
    routines   are   very  well  documented  internally  with  extensive
    references  provided  where  appropriate.   Interested   users   are
    encouraged  to examine the routines for this information. Type "help
    slalib" to get a  listing  of  the  SLALIB  routines,  "help  slalib
    opt=sys"  to  get  a  concise  summary  of  the  library,  and "help
    <routine>" to get a description of each routine's calling  sequence,
    required  input  and  output, etc. An overview of the library can be
    found in the paper "SLALIB - A  Library  of  Subprograms",  Starlink
    User  Note  67.7  by  P.T.  Wallace,  available  from  the  Starlink
    archives.
 
 
 
 
 
EXAMPLES
 
    1. Compute the plate scale for the  test  image  dev$pix  given  the
    following  coordinate list. Set the tangent point to the mean of the
    input celestial coordinates. Compute the plate scale interactively.
 
    cl> type coords
 
    13:29:47.297  47:13:37.52  327.50  410.38
    13:29:37.406  47:09:09.18  465.50   62.10
    13:29:38.700  47:13:36.23  442.01  409.65
    13:29:55.424  47:10:05.15  224.35  131.20
    13:30:01.816  47:12:58.79  134.37  356.33
 
    cl> imcopy dev$pix pix
 
    cl> hedit pix epoch 1987.26
    cl> ccmap coords coords.db image=pix xcol=3 ycol=4 lngcol=1 latcol=2
 
        ... a plot of the mapping function appears
        ... type ? to see the list of commands
        ... type x to see the xi fit residuals versus x
        ... type r to see the xi fit residuals versus y
        ... type y to see the eta fit residuals versus x
        ... type s to see the eta fit residuals versus y
        ... type g to return to the default plot
        ... type l to see the computed x and y scales in " / pixel
        ... type q to quit and save fit
 
    2. Repeat example 2 but compute the fit non-interactively  and  list
    the  fitted  values  of  the  ra  and dec and their residuals on the
    standard output.
 
    cl> ccmap coords coords.db image=pix results=STDOUT xcol=3 ycol=4 \
    lngcol=1 latcol=2 inter-
 
    # Coords File: coords  Image: pix
    #     Database: coords.db  Record: pix
    # Refsystem: j2000  Coordinates: equatorial FK5
    #     Equinox: J2000.000 Epoch: J2000.00000000 MJD: 51544.50000
    # Insystem: j2000  Coordinates: equatorial FK5
    #     Equinox: J2000.000 Epoch: J2000.00000000 MJD: 51544.50000
    # Coordinate mapping status
    #     XI fit ok.  ETA fit ok.
    #     Ra/Dec or Long/Lat fit rms: 0.229  0.241   (arcsec  arcsec)
    # Coordinate mapping parameters
    #     Sky projection geometry: tan
    #     Reference point: 13:29:48.129  47:11:53.37  (hours  degrees)
    #     Reference point: 318.735  273.900  (pixels  pixels)
    #     X and Y scale: 0.764  0.767  (arcsec/pixel  arcsec/pixel)
    #     X and Y axis rotation: 179.110  358.958  (degrees  degrees)
    # Wcs mapping status
    #     Ra/Dec or Long/Lat wcs rms: 0.229  0.241   (arcsec  arcsec)
    #
    #                     Input Coordinate Listing
    # X      Y       Ra          Dec        Ra(fit)      Dec(fit)    Dra    Ddec
    #
    327.5  410.4  13:29:47.30  47:13:37.5  13:29:47.28  47:13:37.9  0.128 -0.370
    465.5   62.1  13:29:37.41  47:09:09.2  13:29:37.42  47:09:09.2 -0.191 -0.062
    442.0  409.6  13:29:38.70  47:13:36.2  13:29:38.70  47:13:35.9  0.040  0.282
    224.3  131.2  13:29:55.42  47:10:05.2  13:29:55.40  47:10:05.1  0.289  0.059
    134.4  356.3  13:30:01.82  47:12:58.8  13:30:01.84  47:12:58.7 -0.267  0.091
 
    3. Repeat the previous example but in this case input  the  position
    of the tangent point in fk4 1950.0 coordinates.
 
    cl> ccmap coords coords.db image=pix results=STDOUT xcol=3 ycol=4 lngcol=1 \
    latcol=2 refpoint=user lngref=13:27:46.9 latref=47:27:16 refsystem=b1950.0 \
    inter-
 
    # Coords File: coords  Image: pix
    #     Database: coords.db  Record: pix
    # Refsystem: b1950.0  Coordinates: equatorial FK4
    #     Equinox: B1950.000 Epoch: B1950.00000000 MJD: 33281.92346
    # Insystem: j2000  Coordinates: equatorial FK5
    #     Equinox: J2000.000 Epoch: J2000.00000000 MJD: 51544.50000
    # Coordinate mapping status
    #     XI fit ok.  ETA fit ok.
    #     Ra/Dec or Long/Lat fit rms: 0.229  0.241   (arcsec  arcsec)
    # Coordinate mapping parameters
    #     Sky projection geometry: tan
    #     Reference point: 13:29:53.273  47:11:48.36  (hours  degrees)
    #     Reference point: 250.256  266.309  (pixels  pixels)
   #     X and Y scale: 0.764  0.767  (arcsec/pixel  arcsec/pixel)
    #     X and Y axis rotation: 179.126  358.974  (degrees  degrees)
    # Wcs mapping status
    #     Ra/Dec or Long/Lat wcs rms: 0.229  0.241   (arcsec  arcsec)
    #
    #                     Input Coordinate Listing
    #  X      Y       Ra         Dec        Ra(fit)      Dec(fit)    Dra    Ddec
 
    327.5  410.4  13:29:47.30  47:13:37.5  13:29:47.28  47:13:37.9  0.128 -0.370
    465.5   62.1  13:29:37.41  47:09:09.2  13:29:37.42  47:09:09.2 -0.191 -0.062
    442.0  409.6  13:29:38.70  47:13:36.2  13:29:38.70  47:13:35.9  0.040  0.282
    224.3  131.2  13:29:55.42  47:10:05.2  13:29:55.40  47:10:05.1  0.289  0.059
    134.4  356.3  13:30:01.82  47:12:58.8  13:30:01.84  47:12:58.7 -0.267  0.091
 
    Note  the  computed  image  scales are identical in examples 2 and 3
    but that the assumed position of  the  tangent  point  is  different
    (the  second  estimate  is more accurate) producing different values
    for the pixel and celestial coordinates of the reference  point  and
    small differences in the computed rotation angles.
 
    4.  Repeat  the  previous  example  but  in  this  case  extract the
    position of the tangent point in from the image header keywords  RA,
    DEC, and EPOCH.
 
    cl> imheader pix l+
 
    ...
    DATE-OBS= '05/04/87'            /  DATE DD/MM/YY
    RA      = '13:29:24.00'         /  RIGHT ASCENSION
    DEC     = '47:15:34.00'         /  DECLINATION
    EPOCH   =              1987.26  /  EPOCH OF RA AND DEC
    ...
    cl> ccmap coords coords.db image=pix results=STDOUT xcol=3 ycol=4 \
    lngcol=1 latcol=2 refpoint=user lngref=RA latref=DEC refsystem=EPOCH \
    inter-
 
    # Coords File: coords  Image: pix
    #     Database: coords.db  Record: pix
    # Refsystem: fk4 b1987.26  Coordinates: equatorial FK4
    #     Equinox: B1987.260 Epoch: B1987.26000000 MJD: 46890.84779
    # Insystem: j2000  Coordinates: equatorial FK5
    #     Equinox: J2000.000 Epoch: J2000.00000000 MJD: 51544.50000
    # Coordinate mapping status
    #     XI fit ok.  ETA fit ok.
    #     Ra/Dec or Long/Lat fit rms: 0.229  0.241   (arcsec  arcsec)
    # Coordinate mapping parameters
    #     Sky projection geometry: tan
    #     Reference point: 13:29:56.232  47:11:38.19  (hours  degrees)
    #     Reference point: 211.035  252.447  (pixels  pixels)
    #     X and Y scale: 0.764  0.767  (arcsec/pixel  arcsec/pixel)
    #     X and Y axis rotation: 179.135  358.983  (degrees  degrees)
    # Wcs mapping status
    #     Ra/Dec or Long/Lat wcs rms: 0.229  0.241   (arcsec  arcsec)
    #
    #                     Input Coordinate Listing
    #  X      Y       Ra         Dec        Ra(fit)      Dec(fit)    Dra    Ddec
 
    327.5  410.4  13:29:47.30  47:13:37.5  13:29:47.28  47:13:37.9  0.128 -0.370
    465.5   62.1  13:29:37.41  47:09:09.2  13:29:37.42  47:09:09.2 -0.191 -0.062
    442.0  409.6  13:29:38.70  47:13:36.2  13:29:38.70  47:13:35.9  0.040  0.282
    224.3  131.2  13:29:55.42  47:10:05.2  13:29:55.40  47:10:05.1  0.289  0.059
    134.4  356.3  13:30:01.82  47:12:58.8  13:30:01.84  47:12:58.7 -0.267  0.091
 
 
    Note  that  the  position of the tangent point is slightly different
    again but that  this  does  not  have  much  affect  on  the  fitted
    coordinates for this image.
 
    5.  Repeat  the third example but this time store the computed world
    coordinate system in the image header and check  the  header  update
    with the imheader and skyctran tasks.
 
    cl> imheader pix l+
    ...
    DATE-OBS= '05/04/87'            /  DATE DD/MM/YY
    RA      = '13:29:24.00'         /  RIGHT ASCENSION
    DEC     = '47:15:34.00'         /  DECLINATION
    EPOCH   =              1987.26  /  EPOCH OF RA AND DEC
    ...
 
    cl> ccmap coords coords.db image=pix results=STDOUT xcol=3 ycol=4  \
    lngcol=1 latcol=2 refpoint=user lngref=13:27:46.9 latref=47:27:16    \
    refsystem=b1950.0 inter- update+
 
    # Coords File: coords  Image: pix
    #     Database: coords.db  Record: pix
    # Refsystem: b1950.0  Coordinates: equatorial FK4
    #     Equinox: B1950.000 Epoch: B1950.00000000 MJD: 33281.92346
    # Insystem: j2000  Coordinates: equatorial FK5
    #     Equinox: J2000.000 Epoch: J2000.00000000 MJD: 51544.50000
    # Coordinate mapping status
    # Coordinate mapping status
    #     XI fit ok.  ETA fit ok.
    #     Ra/Dec or Long/Lat fit rms: 0.229  0.241   (arcsec  arcsec)
    # Coordinate mapping parameters
    #     Sky projection geometry: tan
    #     Reference point: 13:29:53.273  47:11:48.36  (hours  degrees)
    #     Reference point: 250.256  266.309  (pixels  pixels)
    #     X and Y scale: 0.764  0.767  (arcsec/pixel  arcsec/pixel)
    #     X and Y axis rotation: 179.126  358.974  (degrees  degrees)
    # Wcs mapping status
    #     Ra/Dec or Long/Lat wcs rms: 0.229  0.241   (arcsec  arcsec)
    # Updating image header wcs
    #
    #
    #                     Input Coordinate Listing
    #  X      Y       Ra          Dec        Ra(fit)     Dec(fit)    Dra    Ddec
 
    327.5  410.4  13:29:47.30  47:13:37.5  13:29:47.28  47:13:37.9  0.128 -0.370
    465.5   62.1  13:29:37.41  47:09:09.2  13:29:37.42  47:09:09.2 -0.191 -0.062
    442.0  409.6  13:29:38.70  47:13:36.2  13:29:38.70  47:13:35.9  0.040  0.282
    224.3  131.2  13:29:55.42  47:10:05.2  13:29:55.40  47:10:05.1  0.289  0.059
    134.4  356.3  13:30:01.82  47:12:58.8  13:30:01.84  47:12:58.7 -0.267  0.091
 
    cl> imheader pix l+
    ...
    DATE-OBS= '05/04/87'            /  DATE DD/MM/YY
    RA      = '13:29:24.00'         /  RIGHT ASCENSION
    DEC     = '47:15:34.00'         /  DECLINATION
    EPOCH   =              1987.26  /  EPOCH OF RA AND DEC
    ...
    RADECSYS= 'FK5     '
    EQUINOX =                2000.
    MJD-WCS =              51544.5
    WCSDIM  =                    2
    CTYPE1  = 'RA---TAN'
    CTYPE2  = 'DEC--TAN'
    CRVAL1  =     202.471969550729
    CRVAL2  =     47.1967667056819
    CRPIX1  =     250.255619786203
    CRPIX2  =     266.308757328719
    CD1_1   =  -2.1224568721716E-4
    CD1_2   =  -3.8136850875221E-6
    CD2_1   =  -3.2384199624421E-6
    CD2_2   =  2.12935798198448E-4
    LTM1_1  =                   1.
    LTM2_2  =                   1.
    WAT0_001= 'system=image'
    WAT1_001= 'wtype=tan axtype=ra'
    WAT2_001= 'wtype=tan axtype=dec'
    ...
 
    cl> skyctran coords STDOUT "pix log" "pix world" lngcol=3 latcol=4 trans+
 
    # Insystem: pix logical  Projection: TAN  Ra/Dec axes: 1/2
    #     Coordinates: equatorial FK5 Equinox: J2000.000
    #     Epoch: J2000.00000000 MJD: 51544.50000
    # Outsystem: pix world  Projection: TAN  Ra/Dec axes: 1/2
    #     Coordinates: equatorial FK5 Equinox: J2000.000
    #     Epoch: J2000.00000000 MJD: 51544.50000
 
    # Input file: incoords  Output file: STDOUT
 
    13:29:47.297  47:13:37.52 13:29:47.284 47:13:37.89
    13:29:37.406  47:09:09.18 13:29:37.425 47:09:09.24
    13:29:38.700  47:13:36.23 13:29:38.696 47:13:35.95
    13:29:55.424  47:10:05.15 13:29:55.396 47:10:05.09
    13:30:01.816  47:12:58.79 13:30:01.842 47:12:58.70
 
 
    Note  that  two  versions of the rms values are printed, one for the
    fit and one for the wcs fit.  For  the  default  fitting  parameters
    these  two estimates should be identical. If a non-linear high order
    plate solution is requested however, the image wcs will  have  lower
    precision  than  the  than the full plate solution, because only the
    linear component of the plate solution is preserved in the wcs.
 
 
 
BUGS
 
 
 
SEE ALSO
    cctran,ccsetwcs,skyctran,imctran,finder.tfinder,finder.tastrom