IMMATCHX -- Package of Image Matching and Image Coordinates Tasks Revisions Summary and Installation Instructions The new immatchx package contains those tasks in images.imcoords and images.immatch which have had major bug fixes or enhancements since 2.11.3 was released. Two new tasks ccget and ccstd are also included. The current package menu looks like: ccfind - Generate a matched coordinate list using image wcs information ccget - Extract objects from a text file catalog ccmap - Compute image plate solutions using matched coordinate lists ccsetwcs - Create an image wcs from the plate solution ccstd - Transform from astrometric standard coordinates cctran - Transform from x-y to ra-dec and vice versa using plate solutions ccxymatch - Match celestial and pixel coordinate lists using various methods geomap - Compute geometric transforms using matched coordinate lists imcctran - Transform from one image celestial wcs to another psfmatch - Match the point-spread functions of 1-D or 2-D images skyctran - Transform coordinate lists from one celestial wcs to another skyxymatch - Generate matched x-y lists using image celestial wcs information xregister - Register 1-D or 2-D images using x-correlation techniques Revisions Summary ------------------------------------------------------------------------------- Archive: October 17, 2001 XREGISTER Added the xregister task to the package. Multiple x-correlation regions were not being handled properly in interactive mode the the version included here fixes that problem. ------------------------------------------------------------------------------- Archive: July 20, 2001 CCMAP Fixed a bug in the ccmap task refpoint = "coords" option that could produce an erroneous reference point estimate if the input coordinates spanned the right ascension = 0 hours point due to coordiate wrap around. ------------------------------------------------------------------------------- Archive: May 15, 2001 PSFMATCH Added the psfmatch task to immatchx in order to: 1) fix a floating point error in the replace algorithm gaussian fitting routine that occurs if the argument to the log function is exactly zero, 2) fixed a symmetry error in the convolve routine that produces a "corrected" psf that is flipped in x and y from what it should be if the psf matching kernel does not have mirror symmetry. The matching kernel was and is correct and can be used directly with the fconvolve task. The kernel produced by the old psfmatch task must be created and rotated 180 degrees before being applied by psfmatch. ------------------------------------------------------------------------------- Archive: January 5, 2001 GEOMAP, CCMAP Added a new maxiter parameter to the geomap and ccmap tasks. Maxiter controls the number of iterative rejections. Its default values is 0 for no rejection. The default value of the geomap and ccmap reject parameter has been changed to 3.0 ------------------------------------------------------------------------------- First Release: October 13, 2000 ------------------------------------------------------------------------------- CCGET The new task ccget was added to the immatchx package. Given a position and region size ccget can extract al list of objects from a text file catalog such as the Landolt star catalog. CCSTD The new task ccstd was added to the immatchx package. Ccstd converts from celestial and pixel coordinate to the standard astrometric coordinates and vice versa. Ccstd can compute standard coodinates in either Cartesion (the default) or polar coordinates. CCMAP, GEOMAP Added the :order command to geomap and ccmap so that users can can change all the order parameters at once. Fixed a segmentation violation bug in ccma and geomap that could occur if there are too few points to obtain a fit and the verbose switch is set to yes. IMCCTRAN Added support for doing image header celestial coordinate transformations accurately for non-zenithal projections. Added the parameter longpole to the imcctran task. If longpole=yes coordinate transformations for the zenithal projections will be handled by modifying longpole and latpole not the CD matrix. Users should realize that support for FITS LONGPOLE and LATPOLE keywords is still not fully implemented however. MWCS The CAR, MER, PCO, GLS, PAR, AIT, CSC, QSC, and TSC function drivers contained a degrees to radians conversion error for longitude < 180 and latitude < 90. This has been fixed with the Gemini patch. Private versions of the corrected routines have been included in IMMATCHX and can be linked in as described below. SKYWCS Incorrect values for the epoch of observation were being computed and printed by tasks like skyctran and imcctran if: 1) the input coordinate system was being read from an image, and 2) the input coordinate system was galactic. The problem was that the epoch was being converted to MJD twice instead of once resulting in strange epoch values. Unless a proper motion correction was being computed this problem should have little practical effect although it is disturbing to see odd units in the file headers. ------------------------------------------------------------------------------ Standard Installation Instructions For The Immatchx Package INSTALLATION INSTRUCTIONS Installation of this external package consists of obtaining the files, creating a directory containing the package, compiling the executables or installing precompiled executables, and defining the environment to load and run the package. The package may be installed for a site or as a personal installation. If you need help with these installation instructions pr questions about the package please contact iraf@noao.edu or call the IRAF HOTLINE at 520-318-8160 [arch] In the following steps you will need to know the IRAF architecture identifier for your IRAF installation. This identifier is similar to the host operating system type. The identifiers are things like "ssun" for Solaris, "alpha" for Dec Alpha, and "linux" or "redhat" for most Linux systems. The IRAF architecture identifier is defined when you run IRAF. Start the CL and then type cl> show arch .ssun This is the value you need to know is without the leading '.'; i.e. the IRAF architecture is "ssun" in the above example. [1-site] If you are installing the package for site use login as the 'iraf' user and edit the IRAF file defining the packages, i.e. hlib$extern.pkg % cd $hlib % vi extern.pkg Define the environment variables immatchx to be the pathname to the immatchx package root directory. The UNIX pathnames MUST be terminated with a '/'. Edit extern.pkg to include the following. reset immatchx = //immatchx/ task immatchx.pkg = immatchx$immatchx.cl Where "" is the place you unpacked the package distribution files. Near the end of the extern.pkg file, update the definition of helpdb so it includes the immatchx help database, copying the syntax already used in the string. Add this line before the line containing a closing quote: ,immatchx$lib/helpdb.mip\ [1-personal] If you are installing the package for personal use define a host environment variable with the pathname of the directory where the package will be located (needed in order to build the package from the source code). Note that pathnames must end with '/'. For example: % setenv immatchx /local/immatchx/ In your login.cl or loginuser.cl file make the following definitions somewhere before the "keep" statement. reset immatchx = /local/immatchx/ task immatchx.pkg = immatchx$immatchx.cl printf ("reset helpdb=%s,immatchx$lib/helpdb.mip\nkeep\n", envget("helpdb")) | cl flpr If you will be compiling the package, as opposed to installing a binary distribution, then you need to define various environment variables. The following is for Unix/csh which is the main supported environment. # Example % setenv iraf /iraf/iraf/ # Example path to IRAF root % source $iraf/unix/hlib/irafuser.csh # Define rest of environment % setenv IRAFARCH ssun # IRAF architecture where you need to supply the appropriate path to the IRAF installation root in the first step and the IRAF architecture identifier for your machine in the last step. [2] Login into IRAF. Create a directory to contain the package files. These directory should be outside the standard IRAF dir- ectory tree. cl> mkdir immatchx$ cl> cd immatchx [3] The package is distributed as a tar archive for the sources and, as an optional convenience, a tar archive of the executables for select host computers. Note that IRAF includes a tar reader. The tar file(s) are most commonly obtained via anonymous ftp. Below is an example from a Unix machine where the compressed files have the ".Z" extension. Files with ".gz" or ".tgz" can be handled similarly. cl> ftp iraf.noao.edu (140.252.1.1) login: anonymous password: [your email address] ftp> cd iraf/extern ftp> get immatchx.readme ftp> binary ftp> get immatchx.tar.Z ftp> get immatchx-bin..tar.Z (optional) or .... ftp> get immatchx-bin..tar.gz (optional) ftp> quit cl> !uncompress immatchx.tar cl> !uncompress immatchx-bin..tar (optional) The readme file contains these instructions. The in the optional executable distribution is replaced by the IRAF architecture identification for your computer. Upon request the tar file(s) may be otained on tape for a service charge. In this case you would mount the tape use rtar to ext- ract the tar files. [4] Extract the source files from the tar archive using 'rtar". cl> softools so> rtar -xrf immatchx.tar so> bye On some systems, an error message will appear ("Copy 'bin.generic' to './bin fails") which can be ignored. Sites should leave the symbolic link 'bin' in the package root directory pointing to 'bin.generic' but can delete any of the bin. directories that won't be used. If there is no binary directory for the system you are installing it will be created when the package is compiled later or when the binaries are installed. If the binary executables have been obtained these are now extracted into the appropriate bin. directory. # Example of sparc installation. cl> cd immatchx cl> rtar -xrf immatchx-bin.sparc.tar # Creates bin.sparc directory The various tar files can be deleted once they have been successfully installed. [5] For a source installation you now have to build the package executable(s). First go to the package root directory with cl> cd immatchx If you are updating to a newer version and you earlier built the libraries and executables it is necessary to delete these. Otherwise, depending on the dates of files in the new version and the locally built libraries, it may cause the new version to be ignored. To do this the package is configured "generic" which puts all the binary files in one binary directory, the files are deleted and then you continue in the same way as a completely new installation. cl> mkpkg -p immatchx generic cl> delete bin./* # Substitute sparc, ssun, alpha, etc. Configure the package for the particular architecture to be built. cl> mkpkg -p immatchx # Substitute sparc, ssun, alpha, etc. This will change the bin link from bin.generic to bin.. The binary directory will be created if not present. If an error occurs in setting the architecture then you may need to add an entry to the file "mkpkg". Just follow the examples in the file. To create the executables and move them to the binary directory cl> mkpkg -p immatchx # build executables cl> mkpkg -p immatchx generic # optionally restore generic setting Check for errors. If the executables are not moved to the binary directory then step [1] to define the path for the package was not done correctly. The last step restores the package to a generic configuration. This is not necessary if you will only have one architecture for the package. This should complete the installation. You can now load the package and begin testing and use.