-
Notifications
You must be signed in to change notification settings - Fork 167
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
Switch resample to the new drizzle package API #8866
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #8866 +/- ##
==========================================
- Coverage 61.96% 61.93% -0.04%
==========================================
Files 377 376 -1
Lines 38765 38675 -90
==========================================
- Hits 24022 23954 -68
+ Misses 14743 14721 -22 ☔ View full report in Codecov by Sentry. |
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.
Thanks Mihai, looks good overall and my comments are minor. It needs a changelog entry. It would also be good to run our regression test suite; do you have permissions and know how to do that?
9b25f04
to
bcc70b9
Compare
Regression tests running here: https://github.com/spacetelescope/RegressionTests/actions/runs/11247877551 |
jwst/resample/resample_utils.py
Outdated
grid = gwcs.wcstools.grid_from_bounding_box(bb) | ||
pixmap = np.dstack(reproject(in_wcs, out_wcs)(grid[0], grid[1])) | ||
if shape is not None and not np.array_equiv(shape, in_wcs.array_shape): | ||
in_wcs = deepcopy(in_wcs) |
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.
Is a deepcopy
necessary here?
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.
I am not sure. It felt to be a safer way because this method sets array_shape
property of the WCS object. If there is no drawback in modifying inputs, deepcopy
can be omitted.
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.
What happens here if shape is None
?
Is the new drizzle API intended to make direct calls to |
In general, new drizzle API is not "intended" to rely on The purpose of this PR is to adapt the current code that otherwise would break to the new API when needed. We know that we are going to switch to the new API anyway via other PRs in CC: @nden |
bcc70b9
to
8b66f83
Compare
This looks mostly good to me now, but there are 12 failing tests in the regression test run and only 5 failing tests in last night's nightly run. Do these changes look to you like they are caused by this PR, and are any of them large? |
8b66f83
to
d288e1a
Compare
@mcara I may be confused about what this PR is meant to accomplish.
|
After the first commit, regression tests are passing, see https://plwishmaster.stsci.edu:8081/job/RT/job/JWST-Developers-Pull-Requests/1787 |
After commit 91805f7, regression tests were started here: https://plwishmaster.stsci.edu:8081/job/RT/job/JWST-Developers-Pull-Requests/1793/ |
e4f97b4
to
d323fee
Compare
Regression tests after complete switch to the new There are 4 failing tests. Failures are unrelated. |
Regression tests after complete switch to the new Results: same 4 unrelated failures. Regression tests appear to run shorter. |
Also, I spoke to @schlafly and he did not object to making a release of the |
One more thing: before merging, would it be OK to remove jwst/jwst/resample/resample.py Lines 704 to 749 in 90ba645
self._iscales that's needed only to support resample_variance_arrays() (for backward compatibility - I highly doubt that anyone would be calling this function at all by itself)?
|
If it's no longer used, yes, I think you can and should remove it |
I agree with Ned - that function should be removed since it's no longer used. It was just a helper function to compute the variance arrays while resampling. Since the relevant calculations have been moved inside the loop over models instead of doing them after the loop has completed, there's no reason to keep the old function. |
b18bd58
to
a73900c
Compare
Regression tests after the last two commits (pin drizzle + remove No failures. |
Resolves JP-3685
Resolves JP-3713
Closes #8638
Closes #8721
This PR switches resample step to the new
drizzle
API proposed in spacetelescope/drizzle#134Tasks
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