dkist-processing-cryonirsp 0.0.23rc2__tar.gz → 0.0.25rc1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dkist-processing-cryonirsp might be problematic. Click here for more details.
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/CHANGELOG.rst +18 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/PKG-INFO +1 -1
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/bitbucket-pipelines.yml +16 -1
- dkist_processing_cryonirsp-0.0.25rc1/changelog/84.bugfix.rst +2 -0
- dkist_processing_cryonirsp-0.0.25rc1/changelog/84.misc.rst +1 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/science_base.py +63 -9
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_ci_science.py +3 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_sp_science.py +3 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_write_l1.py +14 -1
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp.egg-info/PKG-INFO +1 -1
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp.egg-info/SOURCES.txt +2 -1
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp.egg-info/requires.txt +6 -6
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/setup.cfg +6 -6
- dkist_processing_cryonirsp-0.0.23rc2/changelog/81.misc.rst +0 -1
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/.gitignore +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/.pre-commit-config.yaml +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/.readthedocs.yml +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/README.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/SCIENCE_CHANGELOG.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/changelog/.gitempty +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/check_changelog_updated.sh +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/constants.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/filter.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/optical_density_filter_names.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/parameters.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/tags.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/models/task_name.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/cryonirsp_l0_fits_access.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/cryonirsp_l1_fits_access.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/map_repeats.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/measurements.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/modstates.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/optical_density_filters.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/polarimeter_mode.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/scan_step.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/time.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/parsers/wavelength.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/assemble_movie.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/bad_pixel_map.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/beam_boundaries_base.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/ci_beam_boundaries.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/ci_science.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/cryonirsp_base.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/dark.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/gain.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/instrument_polarization.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/l1_output_data.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/linearity_correction.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/make_movie_frames.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/mixin/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/mixin/beam_access.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/mixin/corrections.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/mixin/intermediate_frame.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/mixin/linearized_frame.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/parse.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/quality_metrics.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/sp_beam_boundaries.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/sp_geometric.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/sp_science.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/sp_solar_gain.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/trial_output_data.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tasks/write_l1.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/ci_e2e_test.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/conftest.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/e2e_helpers.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/e2e_linearize.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/header_models.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/sp_e2e_test.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_assemble_movie.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_bad_pixel_maps.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_build_quality_report.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_ci_beam_boundaries.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_ci_make_movie_frames.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_cryo_base.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_cryo_constants.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_dark.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_gain.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_instrument_polarization.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_linearity_correction.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_parameters.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_parse.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_quality.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_sp_beam_boundaries.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_sp_geometric.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_sp_make_movie_frames.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_sp_solar.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_submit_qualilty.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/tests/test_workflows.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/workflows/__init__.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/workflows/ci_l0_processing.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/workflows/sp_l0_processing.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp/workflows/trial_workflows.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp.egg-info/dependency_links.txt +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/dkist_processing_cryonirsp.egg-info/top_level.txt +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/Makefile +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/changelog.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/conf.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/index.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/l0_to_l1_cryonirsp_ci.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/l0_to_l1_cryonirsp_sp.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/make.bat +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/requirements.txt +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/requirements_table.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/scientific_changelog.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/licenses/LICENSE.rst +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/pyproject.toml +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/science_towncrier.sh +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/setup.py +0 -0
- {dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/towncrier_science.toml +0 -0
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
v0.0.24 (2024-01-03)
|
|
2
|
+
====================
|
|
3
|
+
|
|
4
|
+
Misc
|
|
5
|
+
----
|
|
6
|
+
|
|
7
|
+
- Bump version of `dkist-processing-pac` to v3.0.1. No change to pipeline behavior at all. (`#82 <https://bitbucket.org/dkistdc/dkist-processing-cryonirsp/pull-requests/82>`__)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
v0.0.23 (2023-12-20)
|
|
11
|
+
====================
|
|
12
|
+
|
|
13
|
+
Misc
|
|
14
|
+
----
|
|
15
|
+
|
|
16
|
+
- Adding manual processing worker capabilities via dkist-processing-common update. (`#81 <https://bitbucket.org/dkistdc/dkist-processing-cryonirsp/pull-requests/81>`__)
|
|
17
|
+
|
|
18
|
+
|
|
1
19
|
v0.0.22 (2023-12-01)
|
|
2
20
|
====================
|
|
3
21
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: dkist_processing_cryonirsp
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.25rc1
|
|
4
4
|
Summary: Science processing code for the Cryo-NIRSP instrument on DKIST
|
|
5
5
|
Home-page: https://bitbucket.org/dkistdc/dkist_processing_cryonirsp/src/main/
|
|
6
6
|
Author: NSO / AURA
|
|
@@ -123,6 +123,21 @@ pipelines:
|
|
|
123
123
|
- step: *scan
|
|
124
124
|
- step: *test
|
|
125
125
|
- step: *docs
|
|
126
|
+
custom:
|
|
127
|
+
build_rc: # I.e. skip the doc check (because we might have rc dependencies)
|
|
128
|
+
- variables:
|
|
129
|
+
- name: BITBUCKET_TAG
|
|
130
|
+
description: "Tag version to build (e.g., 'vX.Y.ZrcR')"
|
|
131
|
+
- parallel:
|
|
132
|
+
- step: *changelog
|
|
133
|
+
- step: *lint
|
|
134
|
+
- parallel:
|
|
135
|
+
- step: *scan
|
|
136
|
+
- step: *test
|
|
137
|
+
- parallel:
|
|
138
|
+
- step: *push_workflow
|
|
139
|
+
- step: *push_mpw
|
|
140
|
+
- step: *push_code
|
|
126
141
|
tags:
|
|
127
142
|
'v*':
|
|
128
143
|
- parallel:
|
|
@@ -131,7 +146,7 @@ pipelines:
|
|
|
131
146
|
- parallel:
|
|
132
147
|
- step: *scan
|
|
133
148
|
- step: *test
|
|
134
|
-
|
|
149
|
+
- step: *docs
|
|
135
150
|
- parallel:
|
|
136
151
|
- step: *push_workflow
|
|
137
152
|
- step: *push_mpw
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Update `dkist-fits-specifications` and associated (validator, simulator) to use new conditional requiredness framework.
|
|
@@ -297,20 +297,28 @@ class ScienceCalibrationBase(CryonirspTaskBase, ABC):
|
|
|
297
297
|
meas_num
|
|
298
298
|
The current measurement number
|
|
299
299
|
"""
|
|
300
|
+
final_header = self._update_calibrated_header(calibrated_object.header, map_scan=map_scan)
|
|
300
301
|
if self.constants.correct_for_polarization:
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
302
|
+
stokes_I_data = calibrated_object.data[:, :, 0]
|
|
303
|
+
for s, stokes_param in enumerate(self.constants.stokes_params):
|
|
304
|
+
stokes_data = calibrated_object.data[:, :, s]
|
|
305
|
+
final_data = self._re_dummy_data(stokes_data)
|
|
306
|
+
pol_header = self._add_L1_pol_headers(final_header, stokes_data, stokes_I_data)
|
|
307
|
+
self._write_calibrated_array(
|
|
308
|
+
data=final_data,
|
|
309
|
+
header=pol_header,
|
|
310
|
+
stokes=stokes_param,
|
|
311
|
+
meas_num=meas_num,
|
|
312
|
+
scan_step=scan_step,
|
|
313
|
+
map_scan=map_scan,
|
|
314
|
+
)
|
|
304
315
|
|
|
305
|
-
|
|
306
|
-
final_data = self._re_dummy_data(calibrated_object.data[:, :,
|
|
307
|
-
final_header = self._update_calibrated_header(
|
|
308
|
-
calibrated_object.header, map_scan=map_scan
|
|
309
|
-
)
|
|
316
|
+
else:
|
|
317
|
+
final_data = self._re_dummy_data(calibrated_object.data[:, :, 0])
|
|
310
318
|
self._write_calibrated_array(
|
|
311
319
|
data=final_data,
|
|
312
320
|
header=final_header,
|
|
313
|
-
stokes=
|
|
321
|
+
stokes="I",
|
|
314
322
|
meas_num=meas_num,
|
|
315
323
|
scan_step=scan_step,
|
|
316
324
|
map_scan=map_scan,
|
|
@@ -405,6 +413,52 @@ class ScienceCalibrationBase(CryonirspTaskBase, ABC):
|
|
|
405
413
|
|
|
406
414
|
return header
|
|
407
415
|
|
|
416
|
+
def _add_L1_pol_headers(
|
|
417
|
+
self, input_header: fits.Header, stokes_data: np.ndarray, stokes_I_data: np.ndarray
|
|
418
|
+
) -> fits.Header:
|
|
419
|
+
"""Compute and add 214 header values specific to polarimetric datasets."""
|
|
420
|
+
# Probably not needed, but just to be safe
|
|
421
|
+
output_header = input_header.copy()
|
|
422
|
+
|
|
423
|
+
pol_noise = self.compute_polarimetric_noise(stokes_data, stokes_I_data)
|
|
424
|
+
pol_sensitivity = self.compute_polarimetric_sensitivity(stokes_I_data)
|
|
425
|
+
output_header["POL_NOIS"] = pol_noise
|
|
426
|
+
output_header["POL_SENS"] = pol_sensitivity
|
|
427
|
+
|
|
428
|
+
return output_header
|
|
429
|
+
|
|
430
|
+
def compute_polarimetric_noise(
|
|
431
|
+
self, stokes_data: np.ndarray, stokes_I_data: np.ndarray
|
|
432
|
+
) -> float:
|
|
433
|
+
r"""
|
|
434
|
+
Compute the polarimetric noise for a single frame.
|
|
435
|
+
|
|
436
|
+
The polarimetric noise, :math:`N`, is defined as
|
|
437
|
+
|
|
438
|
+
.. math::
|
|
439
|
+
|
|
440
|
+
N = stddev(\frac{F_i}{F_I})
|
|
441
|
+
|
|
442
|
+
where :math:`F_i` is a full array of values for Stokes parameter :math:`i` (I, Q, U, V), and :math:`F_I` is the
|
|
443
|
+
full frame of Stokes-I. The stddev is computed across the entire frame.
|
|
444
|
+
"""
|
|
445
|
+
return float(np.nanstd(stokes_data / stokes_I_data))
|
|
446
|
+
|
|
447
|
+
def compute_polarimetric_sensitivity(self, stokes_I_data: np.ndarray) -> float:
|
|
448
|
+
r"""
|
|
449
|
+
Compute the polarimetric sensitivity for a single frame.
|
|
450
|
+
|
|
451
|
+
The polarimetric sensitivity is the smallest signal that can be measured based on the values in the Stokes-I
|
|
452
|
+
frame. The sensitivity, :math:`S`, is computed as
|
|
453
|
+
|
|
454
|
+
.. math::
|
|
455
|
+
|
|
456
|
+
S = \frac{1}{\sqrt{\mathrm{max}(F_I)}}
|
|
457
|
+
|
|
458
|
+
where :math:`F_I` is the full frame of values for Stokes-I.
|
|
459
|
+
"""
|
|
460
|
+
return float(1.0 / np.sqrt(np.nanmax(stokes_I_data)))
|
|
461
|
+
|
|
408
462
|
def _write_calibrated_array(
|
|
409
463
|
self,
|
|
410
464
|
data: np.ndarray,
|
|
@@ -257,6 +257,9 @@ def test_ci_science_calibration_task(ci_science_calibration_task, mocker):
|
|
|
257
257
|
assert hdu.data.shape == expected_final_shape
|
|
258
258
|
assert "DATE-BEG" in hdu.header.keys()
|
|
259
259
|
assert "DATE-END" in hdu.header.keys()
|
|
260
|
+
if polarization_mode == "Full Stokes":
|
|
261
|
+
assert "POL_NOIS" in hdu.header.keys()
|
|
262
|
+
assert "POL_SENS" in hdu.header.keys()
|
|
260
263
|
|
|
261
264
|
# Check that scan step keys were updated
|
|
262
265
|
scan_step = [
|
|
@@ -305,6 +305,9 @@ def test_sp_science_calibration_task(sp_science_calibration_task, mocker):
|
|
|
305
305
|
assert hdu.data.shape == expected_final_shape
|
|
306
306
|
assert "DATE-BEG" in hdu.header.keys()
|
|
307
307
|
assert "DATE-END" in hdu.header.keys()
|
|
308
|
+
if polarization_mode == "Full Stokes":
|
|
309
|
+
assert "POL_NOIS" in hdu.header.keys()
|
|
310
|
+
assert "POL_SENS" in hdu.header.keys()
|
|
308
311
|
|
|
309
312
|
# Check that scan step keys were updated
|
|
310
313
|
scan_step = [
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
from datetime import datetime
|
|
2
|
-
from typing import Literal
|
|
3
2
|
|
|
4
3
|
import numpy as np
|
|
5
4
|
import pytest
|
|
@@ -83,6 +82,20 @@ def write_l1_task(
|
|
|
83
82
|
hdul[0].header["CTYPE1"] = axis_1_type
|
|
84
83
|
hdul[0].header["CTYPE2"] = axis_2_type
|
|
85
84
|
hdul[0].header["CTYPE3"] = axis_3_type
|
|
85
|
+
hdul[0].header["CNNMAPS"] = num_map_scans
|
|
86
|
+
|
|
87
|
+
# Set CNMODNST and CNSPINMD so the correct schema is loaded for validation
|
|
88
|
+
hdul[0].header["CNMODNST"] = num_modstates
|
|
89
|
+
if num_stokes_params > 1:
|
|
90
|
+
hdul[0].header["CNSPINMD"] = "Continuous"
|
|
91
|
+
|
|
92
|
+
# These headers are added to polarimetric frames in the science task
|
|
93
|
+
hdul[0].header["POL_NOIS"] = 0.1
|
|
94
|
+
hdul[0].header["POL_SENS"] = 0.2
|
|
95
|
+
|
|
96
|
+
else:
|
|
97
|
+
hdul[0].header["CNSPINMD"] = "None"
|
|
98
|
+
|
|
86
99
|
for map_scan in range(1, num_map_scans + 1):
|
|
87
100
|
for scan_step in range(1, num_scan_steps + 1):
|
|
88
101
|
for meas_num in range(1, num_meas + 1):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: dkist-processing-cryonirsp
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.25rc1
|
|
4
4
|
Summary: Science processing code for the Cryo-NIRSP instrument on DKIST
|
|
5
5
|
Home-page: https://bitbucket.org/dkistdc/dkist_processing_cryonirsp/src/main/
|
|
6
6
|
Author: NSO / AURA
|
|
@@ -12,7 +12,8 @@ setup.cfg
|
|
|
12
12
|
setup.py
|
|
13
13
|
towncrier_science.toml
|
|
14
14
|
changelog/.gitempty
|
|
15
|
-
changelog/
|
|
15
|
+
changelog/84.bugfix.rst
|
|
16
|
+
changelog/84.misc.rst
|
|
16
17
|
dkist_processing_cryonirsp/__init__.py
|
|
17
18
|
dkist_processing_cryonirsp.egg-info/PKG-INFO
|
|
18
19
|
dkist_processing_cryonirsp.egg-info/SOURCES.txt
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Pillow==10.0.1
|
|
2
2
|
astropy==5.3.2
|
|
3
|
-
dkist-fits-specifications==
|
|
4
|
-
dkist-header-validator==
|
|
5
|
-
dkist-processing-common==5.0.
|
|
3
|
+
dkist-fits-specifications==4.0.0rc5
|
|
4
|
+
dkist-header-validator==5.0.0rc6
|
|
5
|
+
dkist-processing-common==5.0.1rc1
|
|
6
6
|
dkist-processing-math==2.0.0
|
|
7
|
-
dkist-processing-pac==3.0.
|
|
7
|
+
dkist-processing-pac==3.0.1
|
|
8
8
|
dkist-spectral-lines==2.0.0
|
|
9
9
|
largestinteriorrectangle==0.2.0
|
|
10
10
|
dkist-service-configuration==1.1.0
|
|
@@ -28,7 +28,7 @@ dkist-sphinx-theme
|
|
|
28
28
|
[grogu]
|
|
29
29
|
dkist
|
|
30
30
|
pyparsing
|
|
31
|
-
dkist-inventory
|
|
31
|
+
dkist-inventory==1.2.2rc3
|
|
32
32
|
|
|
33
33
|
[test]
|
|
34
34
|
pytest
|
|
@@ -37,4 +37,4 @@ pytest-xdist
|
|
|
37
37
|
pytest-mock
|
|
38
38
|
hypothesis
|
|
39
39
|
towncrier
|
|
40
|
-
dkist-data-simulator
|
|
40
|
+
dkist-data-simulator==5.0.0rc5
|
|
@@ -19,11 +19,11 @@ include_package_data = True
|
|
|
19
19
|
install_requires =
|
|
20
20
|
Pillow == 10.0.1
|
|
21
21
|
astropy == 5.3.2
|
|
22
|
-
dkist-fits-specifications ==
|
|
23
|
-
dkist-header-validator ==
|
|
24
|
-
dkist-processing-common == 5.0.
|
|
22
|
+
dkist-fits-specifications == 4.0.0rc5
|
|
23
|
+
dkist-header-validator == 5.0.0rc6
|
|
24
|
+
dkist-processing-common == 5.0.1rc1
|
|
25
25
|
dkist-processing-math == 2.0.0
|
|
26
|
-
dkist-processing-pac == 3.0.
|
|
26
|
+
dkist-processing-pac == 3.0.1
|
|
27
27
|
dkist-spectral-lines == 2.0.0
|
|
28
28
|
largestinteriorrectangle == 0.2.0
|
|
29
29
|
dkist-service-configuration == 1.1.0
|
|
@@ -43,11 +43,11 @@ test =
|
|
|
43
43
|
pytest-mock
|
|
44
44
|
hypothesis
|
|
45
45
|
towncrier
|
|
46
|
-
dkist-data-simulator
|
|
46
|
+
dkist-data-simulator == 5.0.0rc5
|
|
47
47
|
grogu =
|
|
48
48
|
dkist
|
|
49
49
|
pyparsing
|
|
50
|
-
dkist-inventory
|
|
50
|
+
dkist-inventory == 1.2.2rc3
|
|
51
51
|
docs =
|
|
52
52
|
sphinx
|
|
53
53
|
sphinx-astropy
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Adding manual processing worker capabilities via dkist-processing-common update.
|
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/.readthedocs.yml
RENAMED
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/SCIENCE_CHANGELOG.rst
RENAMED
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/changelog/.gitempty
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/changelog.rst
RENAMED
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/index.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/docs/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/licenses/LICENSE.rst
RENAMED
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/pyproject.toml
RENAMED
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/science_towncrier.sh
RENAMED
|
File without changes
|
|
File without changes
|
{dkist_processing_cryonirsp-0.0.23rc2 → dkist_processing_cryonirsp-0.0.25rc1}/towncrier_science.toml
RENAMED
|
File without changes
|