-
Notifications
You must be signed in to change notification settings - Fork 48
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
Adding optimal photometric extraction and photutils aperture extraction #729
Open
taylorbell57
wants to merge
26
commits into
main
Choose a base branch
from
opt_phot_extraction
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Resolves #514 Photometry will now run each step for all integrations before moving on to the next step. This makes parallelizing easier and makes some steps easier.
taylorbell57
added
bug
Something isn't working
enhancement
New feature or request
NIRCam
MIRI
labels
Dec 18, 2024
@kevin218, I still need to fix figs 3306 and 3504 to show the new aperture shapes, but otherwise this PR is ready for review. Tomorrow is my last work day before the holidays, so I likely won't get to fixing those figures until the new year |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR resolves #491, resolves #514, and makes a lot of progress on #495.
This PR adds:
error-weighted optimal photometric extraction using a somewhat similar method to our spectroscopy code. I currently do not have code to mask pixels that deviate too far from the spatial profile; let me know if you think that's critical to add at this stage.
aperture photometric extraction using the open-source photutils, which allows for different aperture shapes, different aperture edges (allowing for "center" edges where a pixel is either inside the aperture or outside the aperture depending on whether the center of the pixel lies within the aperture, or "exact" edges where each pixel is weighted by the fractional area of the pixel that lies within the aperture), and is a fast and performant package.
This PR also greatly speeds up:
the flagging of bad pixels in photometry data by re-using the
nircam.flag_ff
functionthe interpolation-based replacement of bad pixels for photometric data by adding multiprocessing support
I also restructured the photometry code to run each step for all integrations before moving on to the next step. This makes parallelizing easier and makes some steps easier.
I also fixed a bug with meanerr which was causing np.nan values to be returned for skyerr. There were also a couple other bug patches throughout.
Things remaining to do before the PR is ready for review:
aperture_edge='exact'
whenphot_method='optimal'
phot_method='poet'
and check that it is as good or better than beforephot_method='photutils'
and check that it performs at least similar to poetphot_method='optimal'
and check that it performs at least similar to poet