INSTALLATION (Jan00) crutil INSTALLATION (Jan00) CRUTIL: COSMIC RAY REMOVAL UTILITY PACKAGE Release Notes and Installation Instructions SUMMARY The CRUTIL external package contains tasks for removing cosmic rays from images. Some are for single images and some are for multiple exposures. RELEASE INFORMATION The following summary only highlights the major changes. There will also be minor changes and bug fixes. V1.6: May 3, 2001 The "nrej" option had a bug such that if the value was 1 or 2 then many cosmic rays would not be found. There was also a bug in the buffering resulting in a memory corruption error. V1.5: Sep 13, 2000 CRAVERAGE would not work well when strong cosmic rays are bigger than a single pixel. The task was modified to add the parameter "nrej". This allows excluding the specified number of the highest pixels in the averaging box from the average. V1.4: Jan 6, 2000 New task CRAVERAGE detects cosmic rays as deviations from a block average excluding the candidate pixel. The block averages are also used to detect objects against a median background. Cosmic rays are excluded from the detected objects to avoid finding the cores of sharp objects such as stars. CRGROW has added parameters "inval" and "outval" to select which mask values to grow and what value to give them. An INDEF value selects all non-zero values as input and uses the value of the pixel being grown as output. Fixed a bug (#457) in CRMEDIAN. V1.3: Oct 19, 1999 Fixed a bug (#447) in CRNEBULA where the "rin" and "rout" parameters were not being used. V1.2: Sep 4, 1998 Fixed a bug (#410) in CRMEDIAN that would leave lines of zero in the output for large images. V1.1: May 1998 Added 'e' and 'v' keys to COSMICRAYS to allow deletion and undeletion of candidates in a rectangular region. Fixed typo in "crmasks" parameter in task COSMICRAYS. V1.0: April 1998 First release. ================================================================================ 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 crutil to be the pathname to the crutil package root directory. The UNIX pathnames MUST be terminated with a '/'. Edit extern.pkg to include the following. reset crutil = //crutil/ task crutil.pkg = crutil$crutil.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 crutil help database, copying the syntax already used in the string. Add this line before the line containing a closing quote: ,crutil$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 crutil /local/crutil/ In your login.cl or loginuser.cl file make the following definitions somewhere before the "keep" statement. reset crutil = /local/crutil/ task crutil.pkg = crutil$crutil.cl printf ("reset helpdb=%s,crutil$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 crutil$ cl> cd crutil [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 crutil.readme ftp> binary ftp> get crutil.tar.Z ftp> get crutil-bin..tar.Z (optional) or .... ftp> get crutil-bin..tar.gz (optional) ftp> quit cl> !uncompress crutil.tar cl> !uncompress crutil-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 crutil.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 crutil cl> rtar -xrf crutil-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 crutil 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 crutil generic cl> delete bin./* # Substitute sparc, ssun, alpha, etc. Configure the package for the particular architecture to be built. cl> mkpkg -p crutil # 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 crutil # build executables cl> mkpkg -p crutil 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.