-
Notifications
You must be signed in to change notification settings - Fork 174
Fix interpolated flat suffix in MOS/FS case #9209
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
Fix interpolated flat suffix in MOS/FS case #9209
Conversation
Regression tests here: No failures, as expected. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #9209 +/- ##
==========================================
- Coverage 73.66% 73.65% -0.02%
==========================================
Files 368 368
Lines 36436 36371 -65
==========================================
- Hits 26842 26790 -52
+ Misses 9594 9581 -13 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Just a quick question here, under this fix, will the final _interpolatedflat.fits file be aligned with the MultiSlit data models in the other files, i.e. _cal.fits. My understanding is that the _cal.fits file contains calibration for both the MOS slits and the FS slit, all in the same MultiSlit datamodel. |
Sorry, nevermind my question. I see now from the commits that the FS flat data is being appended to the MOS flat data. |
@jhennawi - The FS flat data is not appended to the MOS flat data. There will be two separate interpolated flat output files: the 'interpolatedflat' file will contain the flat corrections for the MOS data and the 'interpolatedflat_fs' file will contain the corrections for the FS data. This is aligned with the way we're handling all intermediate files for the fixed slits processed alongside MOS slits: they are saved to separate files with a '_fs' suffix. Only the final 'cal', 's2d', and 'x1d' products are reassembled into a single product. It should be fairly straightforward to assemble an interpolated flat from the two saved products that contains both MOS and FS corrections, for your purposes. |
Thanks @melanieclarke. Could you please send me a code snippet to read in the interpolated flat outputs from FS and MOS and append them into a single fits file so that they are aligned with the _cal.fits file. From my perspective this design choice of separate files is not ideal. As a discerning user who is scrutinizing the calibrations carefully, I would prefer all the calibration images (pathloss, barshadow, wave, flat) to be in one MultiSlit data model. Already the division of these into a _cal file and an _interpolatedflat is rather cumbersome, and it's not obvious why that was necessary. Now that latter is being split into two separate files, and needs to be reassembled into a single MultiSlit model. |
This should do it:
Understood. Since the intermediate products are not required for automated processing, this reassembly hasn't risen to the top of our development priorities, but I can pass on your feedback. In the meantime, this fix should at least get you access to the data you need for your manual reprocessing. |
Many thanks! |
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.
Looks good!
25c7a75
to
8e9d02a
Compare
Closes #9208
In the NIRSpec MOS/FS mode, the flat_field step is run twice: once for MOS slits, then for any planned FS slits. Intermediate flat-corrected files for the second run are saved with an additional
_fs
suffix, to avoid overwriting the intermediate files from the first run. The interpolated flat intermediate output did not receive this additional suffix, so FS flats were overwriting the MOS flats. This PR fixes the oversight.I added the
interpolatedflat
andinterpolatedflat_fs
outputs to the MOS/FS spec2 regression test. The new truth files are from a local run on this branch, so I expect no diffs in the regtest run.Tasks
Build 11.3
(use the latest build if not sure)no-changelog-entry-needed
)changes/
: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#>.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