MPROJECTPP(1)

NAME
mProjectPP - Re-project FITS images

SYNOPSIS
mProjectPP [-z factor] [-d level] [-b border] [-s statusfile] [-o altout.hdr] [-i altin.hdr] [-h hdu] [-x scale] [-w weightfile] [-W fixed-weight] [-t threshold] [-X] [-b border-string] in.fits out.fits template.hdr

DESCRIPTION
mProjectPP reprojects a single image to the scale defined in an alternate FITS header template generated (usually) by mTANhdr. The program produces a pair of images: the reprojected image and an "area" image consisting of the fraction input pixel sky area that went into each output pixel. This area image goes through all the subsequent processing that the reprojected image does, allowing it to be properly coadded at the end.

mProjectPP performs a plane-to-plane transform on the input image, and is an adaptation of the Mopex algorithm and developed in collaboration with the Spitzer Space Telescope. It provides a speed increase of approximately a factor of 30 over the general-purpose mProject. However, mProjectPP is only suitable for projections which can be approximated by tangent-plane projections (TAN, SIN, ZEA, STG, ARC), and is therefore not suited for images covering large portions of the sky. Also note that it does not directly support changes in coordinate system (i.e. equatorial to galactic coordinates), though these changes can be facilitated by the use of an alternate header. One situation that has happened often enough to warrant special note: It is possible to define a FITS header with the reference location off the image. In particular, people often reference cylindrical projections (e.g., CAR, CEA) to location (0.,0.) (e.g., the Galactic center). This is not wrong in itself but does lead to extremely large pixel offsets (e.g., in the hundreds of thousands). Related to this, if you extract a header from an image with large offsets of this type, it is unlikely that you can simply change projection types without also adjusting the reference location/offsets. Most likely, you will end up with the reproject data all being off-scale.

OPTIONS

-z factor
    Processing is done utilizing the drizzle algorithm. factor is a floating point number; recommended drizzle factors are from 0.5 to 1.

-d level
    Causes additional debugging information to be printed to stdout. Valid levels are 1-5; for levels greater than 1, it's recommended to redirect the output into a text file.

-b border
    Ignores border pixels around the image edge when performing calculations.

-s statusfile
    Output and errors are written to statusfile instead of being written to stdout.

-[i|o] alternate.hdr
    Specifies an alternate FITS header for use in mProjectPP calculations, allows substitution of psuedo-TAN headers created by mTANHdr.

-h hdu
    Specify the FITS extension to re-project if the FITS image is multi-extension.

-x scale
    Multiple the pixel values by scale when reprojecting. For instance, each 2MASS image has a different scale factor (very near 1.0) to correct for varying magnitude-zero points.

-w weightfile
    Path to a weight map to be used when reading values from the input image.

-W fixed-weight
    Use constant weight value for the whole image.

-t threshold
    Pixels with weights below threshold will be treated as blank.

-X  Makes the output region (originally defined in the header template) big enough to include all of the input images

-b border-string
    Define a border width or border pixel corners outside of which all pixels are set to NaN.

ARGUMENTS

in.fits
    Input FITS file to be reprojected.

out.fits
    Path to output FITS file to be created.

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

RESULT
Two files are created as output: the reprojected FITS file (out.fits), and an "area" image (out_area.fits). See the image reprojection algorithm for more information.

MESSAGES

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

ERROR
    Drizzle factor string (string) cannot be interpreted as a real number

ERROR
    Cannot open status file: statusfile

ERROR
    Weight threshold string (threshold) cannot be interpreted as a real number

ERROR
    Flux scale string (scale) cannot be interpreted as a real number

ERROR
    Border value string (string) cannot be interprted as an integer or a set of polygon vertices

ERROR
    Border value (value) must be greater than or equal to zero

ERROR
    HDU value (hdu) must be a non-negative integer

ERROR
    Could not set up plane-to-plane transform. Check for compliant headers.

ERROR
    No overlap

ERROR
    Not enough memory for output data image array

ERROR
    Not enough memory for output area image array

ERROR
    Output wcsinit() failed.

ERROR
    Input wcsinit() failed.

ERROR
    Input and output must be in the same coordinate system for fast reprojection

ERROR
    All pixels are blank

ERROR
    Input image projection (projection) must be TAN, SIN, ZEA, STG or ARC for fast reprojection

ERROR
    Output image projection (projection) must be TAN, SIN, ZEA, STG or ARC for fast reprojection

ERROR
    Template file [template.hdr] not found

ERROR
    Image file in.fits is missing or invalid FITS

ERROR
    Weight file weightfile is missing or invalid FITS

ERROR
    FITS library error

EXAMPLES

$ mProjectPP rawdir/real_orig.fits projdir/base_unity.fits templates/galactic_orig.txt
    [struct stat="OK", time=14]

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.

mProjectPP is only suitable for use on projections which can be approximated by tangent-plane projections (TAN, SIN, ZEA, STG, ARC), and is therefore not suited for images covering large portions of the sky. Also note that it does not directly support changes in coordinate system (i.e. equatorial to galactic coordinates), though these changes can be facilitated by the use of an alternate header.

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.