This is a short update on new software to help determine shifts between images. The basic software is described in the paper that Max Mutchler and I wrote on the Dither II package. In the past couple of month, Richard Hook and I have updated the programs in that package to more automatically handle rotations between images. We have also written a C program that uses the positional information from the jitter files to derive offsets and rotations. 1) Out with the old, in with the new (and hopefully not buggy) There is a new version of the dither package, called xdither in /data/electra4/xdither. To use it, set cl> reset xdither=/data/electra4/xdither/ cl> task xdither=xdither$xdither.cl Again, the task names here are the same as in the dither package. However, the programs have been updated to better handle rotation (sorry about the split inifinitive, Harry). The programs maintain and pass information through the image headers, and unfortunately Richard and I could not get the hedit command to work in a consistent fashion. Therefore, you may occasionally see complaints even when the programs are working properly. Hopefully, Ivo will solve this problem. The first difference you will see when handling rotated data is that you will need to provide the tasks "offsets" or "crossdriz" with the rotation value. In the case of offsets you would write a line something like cdriz.rot=0.25;offsets image2_obj image1_obj cor2x1 In the case of crossdriz you need to set both mintheta and maxtheta to the rotation angle. You would then run shiftind as in Dither II. When it comes time to run avshift, if angle=INDEF, then avshift knows to look into the header of the file to find the rotation angle. Here is the new snazzy format of avshift -- you will need a wide screen to read this: #Rotation angles read from table # # Image Group xsh_in ysh_in best_xsh best_ysh tot_sh_in del_xsh del_ysh rot exptime NGC_36to38.hhh 1 -231.324 -20.046 16.395 1.225 16.441 -247.719 -21.270 0.180 1700.00 NGC_36to38.hhh 2 -1.028 -6.905 -1.058 -6.903 6.983 0.030 -0.003 0.180 1700.00 NGC_36to38.hhh 3 -9.084 1.136 -9.114 1.075 9.177 0.029 0.061 0.180 1700.00 NGC_36to38.hhh 4 -1.142 9.144 -1.111 9.117 9.184 -0.031 0.027 0.180 1700.00 # Weights: 0. 1. 1. 1. # RMS error (all chips on WF scale)): 56.8723 # RMS error (WF only): 0.0491 # weighted RMS error (all chips on WF scale)): 0.0491 # weighted RMS error (WF only): 0.0491 # # Image Group xsh_in ysh_in best_xsh best_ysh tot_sh_in del_xsh del_ysh rot exptime NGC_46to48.hhh 1 -159.176 111.434 95.025 6.577 95.252 -254.201 104.857 0.920 5700.00 NGC_46to48.hhh 2 -5.251 -40.473 -5.233 -40.471 40.808 -0.018 -0.002 0.920 5700.00 NGC_46to48.hhh 3 -51.729 5.175 -51.772 5.278 52.041 0.043 -0.103 0.920 5700.00 NGC_46to48.hhh 4 -5.763 51.756 -5.848 51.715 52.045 0.085 0.041 0.920 5700.00 # Weights: 0. 1. 1. 1. # RMS error (all chips on WF scale)): 62.8991 # RMS error (WF only): 0.0848 # weighted RMS error (all chips on WF scale)): 0.0848 # weighted RMS error (WF only): 0.0848 # # Image Group xsh_in ysh_in best_xsh best_ysh tot_sh_in del_xsh del_ysh rot exptime NGC_70to74.hhh 1 -98.595 -43.666 108.652 7.286 108.896 -207.247 -50.952 1.100 7800.00 NGC_70to74.hhh 2 -6.429 -46.170 -6.547 -46.137 46.599 0.118 -0.033 1.100 7800.00 NGC_70to74.hhh 3 -59.555 6.700 -59.647 6.567 60.008 0.092 0.132 1.100 7800.00 NGC_70to74.hhh 4 -6.770 59.613 -6.756 59.555 59.937 -0.014 0.058 1.100 7800.00 # Weights: 0. 1. 1. 1. # RMS error (all chips on WF scale)): 48.8179 # RMS error (WF only): 0.1219 # weighted RMS error (all chips on WF scale)): 0.1219 # weighted RMS error (WF only): 0.1219 The image name on the left is the name of the image input to precor. In this case, I was averaging together several images taken at a single dither to get a first estimate of shifts. I have another program for doing delta shifts in a xditherII, but that is for another time (I am not really sure how helpful it is). Note that because you get the original image name, the group, the shifts and the exposure time it is easy to write an awk script that will either drizzle the input image or blot a median image to be compared to the original image. Here is an awk script for blotting a median image of the form g2_medz, g3_medz etc (I ran Mark D. zap program on the median image to remove the few remaining bad pixels) {printf ("blot g%1d_medz group%1d/%s_bl xsh=%f ysh=%f rot=%f expout=%f\n",$2,$2,$1,$3,$5,$7,$8)} Now, if you don't even what to do cross-correlation (or can't, because you are working in F300W and you really have an image of cosmic rays, not stars) you can use the jitter file, and a new program called "bearing", which I am also moving into the xdither directory, though you must run it from outside of iraf for now. To run the program you use the form bearing wf2 file.list The output will look something like: NGC01 166.410256 72.663876 321.909525 NGC02 166.410203 72.663870 321.907356 NGC03 166.411149 72.664146 322.090419 NGC04 166.411145 72.664145 322.090239 NGC05 166.409051 72.663599 321.725027 NGC06 166.409045 72.663599 321.724907 NGC07 166.413043 72.664692 322.456165 NGC08 166.413044 72.664693 322.456286 NGC09 166.411968 72.664431 322.279483 NGC10 166.411969 72.664431 322.279537 running bearing on this file produces: bearing nic3 < jifn.list # Setting origin using NGC01 NGC01 7 xsh=0.000000 ysh=0.000000 rot=0.000000 NGC02 7 xsh=0.138248 ysh=0.264977 rot=-0.002169 NGC03 7 xsh=-5.309591 ysh=-4.087475 rot=0.180894 NGC04 7 xsh=-5.289544 ysh=-4.068604 rot=0.180714 NGC05 7 xsh=5.626143 ysh=5.709251 rot=-0.184498 NGC06 7 xsh=5.629877 ysh=5.740714 rot=-0.184618 NGC07 7 xsh=-16.101519 ysh=-12.816077 rot=0.546640 NGC08 7 xsh=-16.119695 ysh=-12.819213 rot=0.546761 NGC09 7 xsh=-10.837432 ysh=-7.753858 rot=0.369958 NGC10 7 xsh=-10.838049 ysh=-7.759089 rot=0.370012 The shifts are pretty good. On our NGC3516 data we got nic3 and WF shifts to a fraction of a pixel. The WF shifts appeared to be better than the nic chips by about a factor of two in absolute terms, but comparable in relative terms (~0.2 pixel r.m.s.).