Cookbook for large WFPC2 mosaics or complex datasets
NOTE: You may use the c0m/c1m files you now receive from the archive 'as is', there is no need to convert them to GEIS format using STRFITS as mentioned below. If you have WFITS (c0f/c1f) data, then please follow the instructions for converting your data to GEIS (c0h/c1h) format. These instructions are intended for mosaic datasets involving large shifts of over 100 arcseconds, or complex datasets involving observations from many epochs or observing programs.
De-archive the science and data quality FITS files to your working directory. Make a uref directory and download the distortion reference files (IDCTAB and OFFTAB in your image headers) into it, and define your uref directory (set uref). Convert the files to GEIS format (with strfits), and make a list of input images (list_c0h):
> set uref = "/data/mymachine/uref/" > strfits *c0f.fits "" "" > strfits *c1f.fits "" "" > ls u*c0h > list_c0h (no blank lines!)
If any part of your target falls on the WF4 chip, the data were taken after 1 March 2000, and you are working with c0h/c1h files, ensure that the WF4TFILE and WF4TCORR keywords are present and populated. The WF4TFILE keyword will be present (it should not be 'N/A') and WF4TCORR should be 'COMPLETE'. If this is not the case, you need to re-retrieve your data.
Datasets including shifts greater than ~100 arcseconds, or data from multiple epochs or observing programs, involve the use of multiple guide star pairs. The errors in guide star positions require you to refine the image registration.
MultiDrizzle parametersThe following are suggested parameters (with some rationale in the comments) for applying the geometric distortion correction, combining, and cleaning your dataset. Some of the default parameters are not listed here.
> unlearn multidrizzle # reset all parameters to default values first multidrizzle.input = '@list_c0h_f555w' # input image list multidrizzle.output = 'ngc999_f555w' # convenient target_filter filenaming convention multidrizzle.group = '' # blank to include all chips multidrizzle.ra = 115.480667 # center the target in the output image, e.g. NED coords multidrizzle.dec = -18.208472 # center the target in the output image, e.g. NED coords multidrizzle.build = no # produce single-extension FITS output multidrizzle.shiftfile = 'shifts.txt' # apply measured delta-shifts multidrizzle.static = yes multidrizzle.skysub = no multidrizzle.driz_separate = yes multidrizzle.driz_sep_outnx = 4096 # large dimensions for mosaics; adjust as needed* multidrizzle.driz_sep_outny = 4096 # large dimensions for mosaics; adjust as needed* multidrizzle.driz_sep_kernel = 'turbo' multidrizzle.driz_sep_wt_scl = 'exptime' multidrizzle.driz_sep_scale = 0.0996 # WF detector pixel scale multidrizzle.driz_sep_pixfrac = 1.0 multidrizzle.driz_sep_rot = 0.0 # North up; for sum image comparison multidrizzle.driz_sep_fillval = -9.9 # arbitrary low value; easy to exclude from median multidrizzle.driz_sep_bits = 0 # exclude all flagged pixels multidrizzle.median = yes multidrizzle.combine_type = 'median' multidrizzle.combine_lthresh = '-8.8' # exclude fill values from median multidrizzle.blot = yes multidrizzle.driz_cr = yes multidrizzle.driz_cr_snr = '4.0 3.5' multidrizzle.driz_combine = yes multidrizzle.final_wht_type = 'EXP' multidrizzle.final_outnx = 4096 # large dimensions for mosaics; adjust as needed* multidrizzle.final_outny = 4096 # large dimensions for mosaics; adjust as needed* multidrizzle.final_kernel = 'square' multidrizzle.final_wt_scl = 'exptime' multidrizzle.final_scale = 0.0996 # output pixel = input pixel scale multidrizzle.final_pixfrac = 1.0 # don't shrink the drops multidrizzle.final_rot = 0.0 # rotate north up multidrizzle.final_fillval = 0.0 # INDEF or zero multidrizzle.final_bits = 0 multidrizzle.crbit = 0
Inspect your output and iterate as needed
You might need to make your output dimensions (outnx, outny) larger to include all the pixels, or wish to make them smaller to truncate unneeded outer parts of the data (i.e. if your target is small).Look for under-rejection of cosmic rays, or over-rejection of real features (e.g. stellar cores) by blink-comparing the output drizzled image and weight map (drz_sci.fits and drz_weight.fits). You may need to adjust your rejection thresholds (driz_cr_snr), or grow the rejections and/or reject CTE tails (driz_cr_grow and driz_cr_ctegrow).
* Set your central RA,DEC and mosaic dimensions to include the desired data. For the initial iterations of very large mosaics (and especially when you set clean=no), CPU time and disk space can be greatly minimized by finding the minimum dimensions that allow you to register the mosaic (includes key overlap areas), and verify the cleaning. Then for the final drizzling (and with clean=yes) you can set larger output dimensions that includes all the data.
Send any questions or concerns to the STScI Help Desk (firstname.lastname@example.org).