Changeset 15809 for trunk/psModules/src/imcombine/pmSubtraction.c
- Timestamp:
- Dec 13, 2007, 11:32:44 AM (18 years ago)
- File:
-
- 1 edited
-
trunk/psModules/src/imcombine/pmSubtraction.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules/src/imcombine/pmSubtraction.c
r15756 r15809 4 4 * @author GLG, MHPCC 5 5 * 6 * @version $Revision: 1.7 4$ $Name: not supported by cvs2svn $7 * @date $Date: 2007-12- 07 01:57:15$6 * @version $Revision: 1.75 $ $Name: not supported by cvs2svn $ 7 * @date $Date: 2007-12-13 21:32:44 $ 8 8 * 9 9 * Copyright 2004-2007 Institute for Astronomy, University of Hawaii … … 165 165 } 166 166 167 if (!wantDual) { 168 // Put in the normalisation component 169 kernel->kernel[0][0] += p_pmSubtractionSolutionNorm(kernels); 170 } 171 167 // Put in the normalisation component 168 kernel->kernel[0][0] += (wantDual ? 1.0 : p_pmSubtractionSolutionNorm(kernels)); 172 169 173 170 return kernel; … … 279 276 float background, // Background value to apply 280 277 psRegion region, // Region to convolve 281 bool useFFT // Use FFT to convolve? 278 bool useFFT, // Use FFT to convolve? 279 bool wantDual // Want the dual convolution? 282 280 ) 283 281 { 284 *kernelImage = solvedKernel(*kernelImage, kernels, polyValues, false);282 *kernelImage = solvedKernel(*kernelImage, kernels, polyValues, wantDual); 285 283 if (weight) { 286 284 *kernelWeight = varianceKernel(*kernelWeight, *kernelImage); … … 559 557 stamp->x = 0; 560 558 stamp->y = 0; 559 stamp->xNorm = NAN; 560 stamp->yNorm = NAN; 561 561 stamp->status = PM_SUBTRACTION_STAMP_REJECTED; 562 562 // Recalculate convolutions … … 568 568 psFree(stamp->weight); 569 569 stamp->image1 = stamp->image2 = stamp->weight = NULL; 570 psFree(stamp->matrix1); 571 psFree(stamp->matrix2); 572 psFree(stamp->matrixX); 573 stamp->matrix1 = stamp->matrix2 = stamp->matrixX = NULL; 574 psFree(stamp->vector1); 575 psFree(stamp->vector2); 576 stamp->vector1 = stamp->vector2 = NULL; 570 577 } else { 571 578 numGood++; … … 651 658 PM_ASSERT_SUBTRACTION_KERNELS_NON_NULL(kernels, false); 652 659 PM_ASSERT_SUBTRACTION_KERNELS_SOLUTION(kernels, false); 653 if (kernels->mode != PM_SUBTRACTION_MODE_1) {660 if (kernels->mode == PM_SUBTRACTION_MODE_DUAL) { 654 661 PS_ASSERT_PTR_NON_NULL(out2, false); 655 662 PS_ASSERT_PTR_NON_NULL(ro2, false); … … 812 819 813 820 convolveRegion(convImage1, convWeight1, &kernelImage, &kernelWeight, image, weight, 814 subMask, maskSource, kernels, polyValues, background, subRegion, useFFT );821 subMask, maskSource, kernels, polyValues, background, subRegion, useFFT, false); 815 822 816 823 if (kernels->mode == PM_SUBTRACTION_MODE_DUAL) { 817 824 convolveRegion(convImage2, convWeight2, &kernelImage, &kernelWeight, ro2->image, ro2->weight, 818 subMask, maskSource, kernels, polyValues, background, subRegion, useFFT );825 subMask, maskSource, kernels, polyValues, background, subRegion, useFFT, true); 819 826 } 820 827
Note:
See TracChangeset
for help on using the changeset viewer.
