MADD(1)

NAME
mAdd - Re-project and mosaic your images, with background rectification

SYNOPSIS
mAdd [-p imgdir] [-n(o-areas)] [-a mean|median|count] [-e(xact-size)] [-d level] [-s statusfile] images.tbl template.hdr out.fits

DESCRIPTION
Coadd the reprojected images in an input list to form an output mosaic with FITS header keywords specified in a header file. Creates two output files, one containing the coadded pixel values, and the other containing coadded pixel area values. The pixel area values can be used as a weighting function if the output pixel values are themselves to be coadded with other projected images, and may also be used in validating the fidelity of the output pixel values.

OPTIONS

-p imgdir
    Specifies path to directory containing reprojected images. If the -p switch is not included, mAdd will look for the input images in the current working directory.

-n  Co-addition ignores weighting by pixel areas and performs coaddition based only on pixel positions. This flag refers to input images; the area file for the output image will still be created.

-a type
    Select type of averaging to be done on accumulated pixel values (either mean or median). To generate a map showing counts of how many times each pixel was overlapped by the input images, use count.

-e  Enables exact size mode. The output image will match the header template exactly, instead of shrinking the output to fit the data.

-d level
    Turns on debugging to the specified level (1-3).

-s statusfile
    mAdd output and errors will be written to statusfile instead of stdout.

ARGUMENTS

images.tbl
    ASCII table (generated by mImgtbl) containing metadata for all images to be coadded.

template.hdr
    FITS header template to be used in generation of output FITS

out.fits
    Name of output FITS image.

RESULT
If successful, mAdd creates a FITS file out.fits that is a coadd of all the FITS files in the table images.tbl, according to the header template given. A corresponding out_area.fits is also created.

MESSAGES

OK  [struct stat = "OK", time=time]

ERROR
    MPI initialization failed

ERROR
    Invalid argument for -a flag

ERROR
    Cannot open status file: statusfile

ERROR
    Invalid image metadata file: filename

ERROR
    Need columns: cntr,fname, crpix1, crpix2, cdelt1, cdelt2, naxis1, naxis2, crval1, crval2 in image list

ERROR
    Memory allocation failed

ERROR
    Too many open files

ERROR
    Input wcsinit() failed.

ERROR
    Failed to allocate enough memory for output arrays

ERROR
    Bad WCS in header template.

ERROR
    Images are not in same pixel space.

ERROR
    Template file not found.

ERROR
    FITS library error

ERROR
    general error message

EXAMPLES

The following example runs mAdd on 4 FITS images, generating the output file mosaic.fits. Related files are images.tbl and template.hdr.

$ mAdd -p proj images.tbl template.hdr output/mosaic.fits
    [struct stat="OK", time=1]

BUGS
The drizzle algorithm has been implemented but has not been tested in this release.

If a header template contains carriage returns (i.e., created/modified on a Windows machine), the cfitsio library will be unable to read it properly, resulting in the error: [struct stat="ERROR", status=207, msg="illegal character in keyword"]

It is best for the background correction algorithms if the area described in the header template completely encloses all of the input images in their entirety. If parts of input images are "chopped off" by the header template, the background correction will be affected. We recommend you use an expanded header for the reprojection and background modeling steps, returning to the originally desired header size for the final coaddition. The default background matching assumes that there are no non-linear background variations in the individual images (and therefore in the overlap differences). If there is any uncertainty in this regard, it is safer to turn on the "level only" background matching (the "-l" flag in mBgModel.

Although the memory limitation for output images has been overcome in versions 2.x and above of Montage, it is still possible (though unlikely) to create an out-of-memory situation due to the size and number of input images. mAdd builds the output image one row at a time, and stores every pixel from any input image that contributes to that row in memory.

If you have a large enough mosaic, it is almost always more efficient (and often easier on the user) to tile it. There are tools in Montage to help with this and these have been brought together under mAddExec. In fact, even if you want a single output image, it may be faster to do it in two steps: mAddExec to create a set of tiles, and then mAdd to make a final mosaic from these tiles. There is absolutely no loss of information in doing this.

COPYRIGHT
2001-2015 California Institute of Technology, Pasadena, California

If your research uses Montage, please include the following acknowledgement: "This research made use of Montage. It is funded by the National Science Foundation under Grant Number ACI-1440620, and was previously funded by the National Aeronautics and Space Administration's Earth Science Technology Office, Computation Technologies Project, under Cooperative Agreement Number NCC5-626 between NASA and the California Institute of Technology."

The Montage distribution includes an adaptation of the MOPEX algorithm developed at the Spitzer Science Center.