mTileHdr

Description:
Takes a header template file and creates another which represents one of a regular set of tiles covering the original. The user specifies the tile gridding and which tile is desired.
Only the NAXIS and CRVAL keyword lines are changed (pixel size and reference point location); all other keyword values will be inherited from the input header.
Syntax:
mTileHdr [-d] [-s statusfile] orig.hdr new.hdr nx ny ix iy [xpad [ypad]]

Switches:

-d
Turns on debugging.
-s statusfile
Output and errors are sent to statusfile instead of to stdout

Arguments:

orig.hdr
ASCII header template from which to derive tiled headers
new.hdr
Path to output header
nx
Number of tiles in the x-direction
ny
Number of tiles in the y-direction
ix
Integer identifying the x location of the output tile on the grid (counting from 0)
iy
Integer identifying the y location of the output tile on the grid (counting from 0)
xpad
Number of pixels to overlap tiles in the x direction (optional; default is 0)
ypad
Number of pixels to overlap tiles in the y direction (optional; default is 0)
Results:
[struct stat="OK", naxis1=xsize, naxis1=ysize, crpix1=xref, crpix2=yref]
Where xsize and ysize are the x and y dimensions of the image described by the output header, and crpix1 and crpix2 are the new offset from the original reference pixel on the sky.

Examples

template.hdr is 850x850 pixels, and we want to generate the center tile out of 9 (3 by 3):

$ mTileHdr template.hdr tile_1_1.hdr 3 3 1 1
[struct stat="OK", naxis1=283, naxis2=283, crpix1=-283, crpix2=-283]

tile_1_1.hdr has the same reference location and pixel scale as the input header, but a new pixel offset (CRPIX) and size (NAXIS).

Return Codes:

  • [struct stat="OK", naxis1=xsize, naxis2=ysize, crpix1=xref, crpix2=yref]
  • [struct stat="ERROR", msg="Usage: mTileHdr [-d] [-s statusfile] orig.hdr new.hdr nx ny ix iy [xpad [ypad]]"
  • [struct stat="ERROR", msg="Cannot open status file: statusfile"]
  • [struct stat="ERROR", msg="(nx,ny) have to be positive integers and (ix,iy) have to be in the range (0..nx-1, 0..ny-1)"]
  • [stat="ERROR", msg="Cannot open output template new.hdr"]
  • [stat="ERROR", msg="Bad template:orig.hdr"]
  • [stat="ERROR", msg="Bad template:new.hdr"]
  • [struct stat="ERROR", msg="Output wcsinit() failed."]