ppSub Modifications September 2010

(Up to the IPP for PS1)

This page compares results from several versions of the ppSub DUAL convolution process.

Each page shows the input images, the difference image, the convolved image (for the smaller input image in general), and the convolution kernel pair. Note: these pages have a large number of (smallish) jpegs, and may take a little while to render. Be patient.

On each of the pages above, a single version of the IPP ppSub code and the penalty value was used for a large number of image pairs. Each image is a simple grid of stars with a Gaussian PSF of different sizes and shapes. The table below gives the relevant parameters for each of the input images. The names of the difference image jpegs identifies the image pair:

For example, http://ipp0022.ifa.hawaii.edu/ippData/ppsub.20100918/diff.gg.20100701/diff.gg.23.16.00.ex.jpg

In the name of the file, diff.gg.23.16.00.ex.jpg, The 3 2-digit pairs give (in order) the ID of the first image, the ID of the second image, and the version of the analysis. The version on matters for the 2010.09.18 data, for which 4 separate penalties are shown. We have (tentatively?) chosen the 03 version of the penalty (4e-6). To see these names, mouse over the diff jpeg and look at the name of the link.

ID seeing Aspect Ratio Theta
00 1.0 1.0 0.0
01 1.1 1.0 0.0
02 1.2 1.0 0.0
03 1.3 1.0 0.0
04 1.5 1.0 0.0
05 2.0 1.0 0.0
06 1.0 1.2 +30.0
07 1.1 1.2 +30.0
08 1.2 1.2 +30.0
09 1.3 1.2 +30.0
10 1.5 1.2 +30.0
11 2.0 1.2 +30.0
12 1.0 1.2 -30.0
13 1.1 1.2 -30.0
14 1.2 1.2 -30.0
15 1.3 1.2 -30.0
16 1.5 1.2 -30.0
17 2.0 1.2 -30.0
18 1.0 1.5 +30.0
19 1.1 1.5 +30.0
20 1.2 1.5 +30.0
21 1.3 1.5 +30.0
22 1.5 1.5 +30.0
23 2.0 1.5 +30.0

more notes

The links above give a large number of examples using simulated image pairs spanning a wide range of PSF sizes and shapes. There are examples using 3 different ppSub versions. One set shows examples using the version which was used from the start of demo month until the end of August (labeled 20100701, which is the date of the last operations tag that used that algorithm). The second set shows examples using the version which was used by the operational IPP from Aug 23 to the present (and future until we move the operational system to a new build), with the label 20100823 (the date of the operational tag). Four other sets use the current version from my development branch, using labels with the date 20100918, when the algorithm changes were finished. Just to be confusing, this last set comes from my development branch with the name branches/eam_branches/ipp-20100823 (the operational tag and my dev branch were created on the same day).

The differences between the ppSub versions is mostly driven by the ambiguity in the dual convolution process. The difference image is (effectively) constructed as A x k_A - B x k_B, where k_A and k_B involve the sums of the polynomial-modified Gaussians of different sizes. For a given pair of images, the kernels are not necessarily linearly independent, as it is possible to add terms to k_A and k_B which mutually smear both images. (It is slightly more subtle than it sounds because the linear dependence of the kernel elements actually depends on the result of the convolution). To break the degeneracy and to prevent excessive kernel growth, it is necessary to add something to the minimization linear algebra equation. The different ppSub versions have some differences in how the degeneracy is broken.

The 20100701 version uses a penalty term on the diagonal of the matrix to prevent large kernels. The penalty is a function of the (unconvolved) kernel FWHM, and is the same for both A and B kernels.

The 20100823 version also uses a penalty on the diagonal, but the A and B penalties have different values depending on the FWHM of the A and B images. There is also a modification in this code to the flux normalization calculation to ensure a more consistent aperture size is used for both images.

For the 20100918 version replaces the diagonal penalty. Instead the analysis simultaneously minimizes both the chi square of the difference image (as constructed above) and the second moments of the output image. Actually, instead of the second moment, it is something similar: \Sum x2 f2 / \Sum f2, where f is the output flux distribution -- if the normal second moment is used, the resulting output image tends to have large amounts of negative flux, which technically reduces the second moment without reducing the effective size. This representation results in a set of modifications to the minimization matrix equation which are similar to the diagonal penalty, but also include off-diagonal terms.

For the 20100918 version, there is still an arbitrary penalty term to bring the chi-square portion of the equation and the second moments portion into a common scale. The equation is written in such a way that the minimization does not depend on either the number of stars used or the flux ratio of the two images. The 4 different sets use 4 different penalty values.

20101021 UPDATE: after noticing problems with matched stacks, I discovered that single-convolution of simple images with ppSub was not able to produce a clean results as hotpants. Looking at this closer, I discovered that the difference can be attributed to the use of the delta function kernel-zeroing technique of ppSub. Switching to the Alard-Lupton technique of zeroing with the smallest kernel results in single convolutions which much more closely match the hotpants results. When this is applied to DUAL convolution, the resulting differences are (a) much cleaner and (b) much less sensitive to the exact choice of kernels. The 20101021 pages above use this improvement.

The two images below compare a matched stack image generated with the 20100918 (left) and the 20101021 (right) versions of the PSF matching code