Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Determine path forward for drizzle variance/covariance propagation #9028

Open
stscijgbot-jp opened this issue Dec 23, 2024 · 0 comments
Open

Comments

@stscijgbot-jp
Copy link
Collaborator

Issue JP-3828 was created on JIRA by David Law:

As discussed by JP-3757 and JP-3680, variance propagation is currently handled incorrectly by (2d) drizzle.

In brief, at present variances are drizzled by passing through the square root of the variance (i.e., the error array) weighted in the same manner as the science array according to fractional pixel overlap.  This is incorrect however, as mathematically variances should be weighted according to the square of the fractional overlaps.  As a result, 'surface brightness' is conserved for variances, meaning that for a uniform background both the background and the reported uncertainty therein remain constant regardless of the output pixel size.  This is incorrect, as for larger pixels the effective SNR should increase since more samples are contributing to the single output pixel.

JP-3757 and corresponding #8997 implement proper variance propagation, but in consequence the reported variance can change substantially across a given image according to how the input and output pixels overlap.  Since covariances are neglected by the pipeline, this results in incorrect SNR for extracted sources.  Effectively, the previous bug for variance propagation and ignoring covariance largely cancelled each other out.  Detailed calculation of the SNR for sources at different locations within such a scene can be found at #8997

It is worth therefore considering two different purposes for variance propagation:

  1. Truly correct resampled pixel variances for pixel-level analyses

  2. 'Effective' variances that would be relevant to source extraction from multiple nearby pixels. 

Assuming that we continue to ignore the covariance, (2) would effectively be inflating the nominal reported variance to better incorporate the covariance.

This ticket is for INS to determine the best approach to take to these problems by default.  The existing code is insufficient since it cannot handle changing pixel scales, while the existing PR would give inaccurate point source SNR with standard pixel scales.  Additional points to consider:

  • All of this is caused by not treating covariance explicitly.  While we could do so in the pipeline however, it may be challenging to bring the community on board with this.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant