Welcome to iraf.net Saturday, April 20 2024 @ 10:28 AM GMT



FITCOORDS Database

FITCOORDS Database

    The FITCOORDS fits are stored in text files in the subdirectory given by the "database" parameter. The name of the file is fc<fitname> where <fitname> is the specified fit name. The database text file contains blocks of lines beginning with a time stamp followed by line with the "begin" keyword. The value following "begin" is the fit name, which is often the name of the image used for the fit. If there is more than one block with the same fit name then the last one is used.

    The "task" keyword will has the value "fitcoords" and the "axis" keyword identifies the axis to which the surface fit applies. An axis of 1 refers to the first or x axis (the first dimension of the image) and 2 refers to the second or y axis.

    The "surface" keyword specifies the number of coefficients for the surface fit given in the following lines . The surface fit is produced by an IRAF math package called "gsurfit". The coefficients recorded in the database are intented to be internal to that package. However the following describes how to interpret the coefficients.

    The first 8 lines specify:

       function - Function type (1=chebyshev, 2=legendre)
         xorder - X "order" (highest power of x)
         yorder - Y "order" (highest power of y)
         xterms - Cross-term type (always 1 for FITCOORDS)
           xmin - Minimum x over which the fit is defined
           xmax - Maximum x over which the fit is defined
           ymin - Minimum y over which the fit is defined
           ymax - Maximum y over which the fit is defined
    

    The polynomial coefficients follow in array order with the x index varying fastest:

    	C00
    	C10
    	C20
    	...
    	C<xorder-1>0
    	C01
    	C11
    	C21
    	...
    	C<xorder-1>1
    	...
    	C<xorder-1><yorder-1>
    

    The surface fitting functions have the form

    	fit(x,y) = Cmn * Pmn
    

    where the Cmn are the coefficients of the polynomials terms Pmn, and the Pmn are defined as follows:

    Chebyshev: Pmn = Pm(xnorm) * Pn(ynorm)
    

    xnorm = (2 * x - (xmax + xmin)) / (xmax - xmin) ynorm = (2 * y - (ymax + ymin)) / (ymax - ymin)

    P0(xnorm) = 1.0 P1(xnorm) = xnorm Pm+1(xnorm) = 2.0 * xnorm * Pm(xnorm) - Pm-1(xnorm)

    P0(ynorm) = 1.0 P1(ynorm) = ynorm Pn+1(ynorm) = 2.0 * ynorm * Pn(ynorm) - Pn-1(ynorm)

    Legendre: Pmn = Pm(xnorm) * Pn(ynorm)

    xnorm = (2 * x - (xmax + xmin)) / (xmax - xmin) ynorm = (2 * y - (ymax + ymin)) / (ymax - ymin)

    P0(xnorm) = 1.0 P1(xnorm) = xnorm Pm+1(xnorm) = ((2m+1)*xnorm*Pm(xnorm)-m*Pm-1(xnorm))/(m+1)

    P0(ynorm) = 1.0 P1(ynorm) = ynorm Pn+1(ynorm) = ((2n+1)*ynorm*Pn(ynorm)-n*Pn-1(ynorm))/(n+1)

    Notice that the x and y values are first normalized to the interval -1 to 1 over the range of the surface as given by the xmin, xmax, ymin, and ymax elements of the database description.



Privacy Policy
Terms of Use

User Functions

Login