-
Notifications
You must be signed in to change notification settings - Fork 177
JP-3697: Jump Step Refactor #9039
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
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #9039 +/- ##
==========================================
- Coverage 73.73% 73.71% -0.02%
==========================================
Files 373 372 -1
Lines 37277 37262 -15
==========================================
- Hits 27486 27468 -18
- Misses 9791 9794 +3 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Here is the regression test run that passed the jump tests. https://github.com/spacetelescope/RegressionTests/actions/runs/12628208541 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are some style checks and unit tests that are failing in CI. Tests are probably just because it's pointing to the released version of stcal - can you point this to your branch instead for now so we can make sure tests are passing?
When that's fixed, I'd also like to run the full set of regression tests to make sure all the detector1 tests that depend on jump are passing.
Testing locally, the |
After a quick check, I can confirm @melanieclarke's finding that |
jwst/jump/jump_step.py
Outdated
if reffile_utils.ref_matches_sci(result, gain_m): | ||
gain_2d = gain_m.data | ||
else: | ||
log.info('Extracting gain subarray to match science data') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
log.info('Extracting gain subarray to match science data') | |
self.log.info('Extracting gain subarray to match science data') |
Gives an error for me as is; breaks the pipeline.
jwst/jump/jump_step.py
Outdated
if reffile_utils.ref_matches_sci(result, rnoise_m): | ||
rnoise_2d = rnoise_m.data | ||
else: | ||
log.info('Extracting readnoise subarray to match science data') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
log.info('Extracting readnoise subarray to match science data') | |
self.log.info('Extracting readnoise subarray to match science data') |
Gives an error for me as is; breaks the pipeline.
Testing the new branches with a few reference files for benchmarking shows jump step runtimes that are mostly about the same as the current branches, and sometimes a little bit faster. Files tested: |
Thanks for checking, Tim. It sounds like this is a performance improvement that can wait for the next PRs, then. |
Looks like unit tests are passing now (thanks!), but there's still a code style check that's failing for some unused variables. Tim's comments above for the log references still need fixing as well. When those are done, please run the full regtest suite. |
The one last question/concern I have is that peak memory usage of the jump step seems to be slightly higher in this branch than in the previous branch. I haven't followed through on why that is. Testing on jw01668002001_04101_00001_mirimage |
@kmacdonald-stsci - to clean this PR up, please:
|
a72f779
to
2c45aa4
Compare
Adding JumpData class to running jump. Prepping for JumpData class. Updating import functions. Removing the dqflags parameter. The file jump.py is no longer needed, but there is a test suite that still uses the deprectaed run_detect_jumps function directly. Refactoring out run_detect_jumps in favor of using JumpData. Refactored jump step. Updating setting the parameters of the JumpData instance.
…The 'test_detect_jump.py' test suite needs to be integrated into 'test_jump_step.py' and the 'jump.py' needs to be deleted, since it is now unnecessary.
… moved to the main test suite.
8ebdb29
to
7184976
Compare
The regression test failures and errors appear to be unrelated to this PR. |
Thanks @kmacdonald-stsci - those are expected failures for the current state on main. It looks like all unit tests are passing now, and regtests are clear, so I think we are ready to merge. |
Withdrawing approval until stcal pr is merged.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
Resolves JP-3697
Closes #
This PR refactors the jump step using the refactored jump step interface in STCAL. Due to the simplified interface of the STCAL jump step
jump.py
and therun_detect_jumps
function have been eliminated. All tests based on this function were consolidated intotest_jump_step.py
.This PR requires the use of the STCAL PR spacetelescope/stcal#330
Tasks
Build 11.3
(use the latest build if not sure)no-changelog-entry-needed
)changes/
:echo "changed something" > changes/<PR#>.<changetype>.rst
(see below for change types)docs/
pageokify_regtests
to update the truth filesnews fragment change types...
changes/<PR#>.general.rst
: infrastructure or miscellaneous changechanges/<PR#>.docs.rst
changes/<PR#>.stpipe.rst
changes/<PR#>.datamodels.rst
changes/<PR#>.scripts.rst
changes/<PR#>.fits_generator.rst
changes/<PR#>.set_telescope_pointing.rst
changes/<PR#>.pipeline.rst
stage 1
changes/<PR#>.group_scale.rst
changes/<PR#>.dq_init.rst
changes/<PR#>.emicorr.rst
changes/<PR#>.saturation.rst
changes/<PR#>.ipc.rst
changes/<PR#>.firstframe.rst
changes/<PR#>.lastframe.rst
changes/<PR#>.reset.rst
changes/<PR#>.superbias.rst
changes/<PR#>.refpix.rst
changes/<PR#>.linearity.rst
changes/<PR#>.rscd.rst
changes/<PR#>.persistence.rst
changes/<PR#>.dark_current.rst
changes/<PR#>.charge_migration.rst
changes/<PR#>.jump.rst
changes/<PR#>.clean_flicker_noise.rst
changes/<PR#>.ramp_fitting.rst
changes/<PR#>.gain_scale.rst
stage 2
changes/<PR#>.assign_wcs.rst
changes/<PR#>.badpix_selfcal.rst
changes/<PR#>.msaflagopen.rst
changes/<PR#>.nsclean.rst
changes/<PR#>.imprint.rst
changes/<PR#>.background.rst
changes/<PR#>.extract_2d.rst
changes/<PR#>.master_background.rst
changes/<PR#>.wavecorr.rst
changes/<PR#>.srctype.rst
changes/<PR#>.straylight.rst
changes/<PR#>.wfss_contam.rst
changes/<PR#>.flatfield.rst
changes/<PR#>.fringe.rst
changes/<PR#>.pathloss.rst
changes/<PR#>.barshadow.rst
changes/<PR#>.photom.rst
changes/<PR#>.pixel_replace.rst
changes/<PR#>.resample_spec.rst
changes/<PR#>.residual_fringe.rst
changes/<PR#>.cube_build.rst
changes/<PR#>.extract_1d.rst
changes/<PR#>.resample.rst
stage 3
changes/<PR#>.assign_mtwcs.rst
changes/<PR#>.mrs_imatch.rst
changes/<PR#>.tweakreg.rst
changes/<PR#>.skymatch.rst
changes/<PR#>.exp_to_source.rst
changes/<PR#>.outlier_detection.rst
changes/<PR#>.tso_photometry.rst
changes/<PR#>.stack_refs.rst
changes/<PR#>.align_refs.rst
changes/<PR#>.klip.rst
changes/<PR#>.spectral_leak.rst
changes/<PR#>.source_catalog.rst
changes/<PR#>.combine_1d.rst
changes/<PR#>.ami.rst
other
changes/<PR#>.wfs_combine.rst
changes/<PR#>.white_light.rst
changes/<PR#>.cube_skymatch.rst
changes/<PR#>.engdb_tools.rst
changes/<PR#>.guider_cds.rst