Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: meas_modelfit
-
Labels:None
-
Story Points:4
-
Epic Link:
-
Sprint:DRP F16-6
-
Team:Data Release Production
Description
When iterating a psf in a single frame processing for ci_hsc data-product visit 903338 ccd 18, the psf determiner generates a PSF for which a shapelet approximation cannot be found. Specifically, when the PSF determination stage iterates, it converts the determined PSF from the previous step into a Gaussian with an equivalent width. The double shapelet approximation fails to fit this Gaussian.
This ticket should make the PSF fitting robust against cases like this. Additionally it should revert the changes in ci_hsc on the DM-4202 ticket branch which were put in as a temporary workaround for this problem.
Attached to this ticket is the PSF that is failing, and a script which can reproduce the problem.
Nate Lust, could this just be a case where there's too much degeneracy for the solver? The coefficients that come out of fitMoments() are all zeros except for the first element for each of the two components.
If I change testProfile() in your script to:
Algorithm.fitMoments(result, ctrl, image)
Algorithm.fitProfile(result, ctrl, image)
then the script (almost always) finishes without error. If I change the upper bound of the uniform random variates to 1e-6 though, it usually still fails.
Also, how do I record and review all the log.debug<> messages in optimizer.cc? Seems like a useful trick to know.