essdiffraction 26.4.1__tar.gz → 26.5.2__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.
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/LICENSE +1 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/PKG-INFO +21 -5
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/README.md +1 -1
- essdiffraction-26.5.2/docs/_static/essdiffraction-search-logo.png +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_templates/doc_version.html +1 -1
- essdiffraction-26.5.2/docs/_templates/layout.html +5 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/about/index.md +2 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/api-reference/index.md +28 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/conf.py +1 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/index.md +7 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/beer/beer_modulation_mcstas.ipynb +2 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/common/vanadium_processing.ipynb +2 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-powder-reduction.ipynb +2 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/workflow-widget-dream.ipynb +1 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/index.md +1 -0
- essdiffraction-26.5.2/docs/user-guide/magic/index.md +4 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/pyproject.toml +25 -49
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/clustering.py +1 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/conversions.py +1 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/io.py +57 -14
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/workflow.py +6 -5
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/diffraction/__init__.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/io/cif.py +1 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/io/geant4.py +1 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/parameters.py +1 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/workflows.py +3 -2
- essdiffraction-26.5.2/src/ess/magic/__init__.py +19 -0
- essdiffraction-26.5.2/src/ess/magic/beamline.py +9 -0
- essdiffraction-26.5.2/src/ess/magic/data.py +10 -0
- essdiffraction-26.5.2/src/ess/magic/types.py +31 -0
- essdiffraction-26.5.2/src/ess/magic/workflow.py +23 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/types.py +1 -4
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/workflow.py +2 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/essdiffraction.egg-info/PKG-INFO +21 -5
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/essdiffraction.egg-info/SOURCES.txt +10 -41
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/essdiffraction.egg-info/requires.txt +17 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/beer/mcstas_reduction_test.py +38 -6
- essdiffraction-26.4.1/tests/diffraction/test_peaks.py → essdiffraction-26.5.2/tests/diffraction/peaks_test.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/dream/geant4_reduction_test.py +4 -4
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/dream/instrument_view_test.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/dream/io/cif_test.py +3 -4
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/dream/io/geant4_test.py +0 -1
- essdiffraction-26.5.2/tests/magic/workflow_test.py +17 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/powder/conversion_test.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/powder/correction_test.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/powder/filtering_test.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/powder/transform_test.py +1 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/snspowder/powgen/load_test.py +0 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/snspowder/powgen/powgen_reduction_test.py +6 -5
- essdiffraction-26.4.1/.github/ISSUE_TEMPLATE/high-level-requirement.yml +0 -97
- essdiffraction-26.4.1/.github/dependabot.yml +0 -13
- essdiffraction-26.4.1/.github/workflows/ci.yml +0 -58
- essdiffraction-26.4.1/.github/workflows/docs.yml +0 -79
- essdiffraction-26.4.1/.github/workflows/nightly_at_main.yml +0 -35
- essdiffraction-26.4.1/.github/workflows/nightly_at_main_lower_bound.yml +0 -37
- essdiffraction-26.4.1/.github/workflows/nightly_at_release.yml +0 -42
- essdiffraction-26.4.1/.github/workflows/python-version-ci +0 -1
- essdiffraction-26.4.1/.github/workflows/release.yml +0 -73
- essdiffraction-26.4.1/.github/workflows/test.yml +0 -90
- essdiffraction-26.4.1/.github/workflows/unpinned.yml +0 -41
- essdiffraction-26.4.1/.github/workflows/weekly_windows_macos.yml +0 -42
- essdiffraction-26.4.1/.gitignore +0 -48
- essdiffraction-26.4.1/.pre-commit-config.yaml +0 -55
- essdiffraction-26.4.1/.python-version +0 -1
- essdiffraction-26.4.1/CODE_OF_CONDUCT.md +0 -134
- essdiffraction-26.4.1/CONTRIBUTING.md +0 -20
- essdiffraction-26.4.1/MANIFEST.in +0 -1
- essdiffraction-26.4.1/requirements/base.in +0 -17
- essdiffraction-26.4.1/requirements/base.txt +0 -227
- essdiffraction-26.4.1/requirements/basetest.in +0 -13
- essdiffraction-26.4.1/requirements/basetest.txt +0 -87
- essdiffraction-26.4.1/requirements/ci.in +0 -4
- essdiffraction-26.4.1/requirements/ci.txt +0 -56
- essdiffraction-26.4.1/requirements/dev.in +0 -11
- essdiffraction-26.4.1/requirements/dev.txt +0 -123
- essdiffraction-26.4.1/requirements/docs.in +0 -18
- essdiffraction-26.4.1/requirements/docs.txt +0 -181
- essdiffraction-26.4.1/requirements/make_base.py +0 -78
- essdiffraction-26.4.1/requirements/mypy.in +0 -2
- essdiffraction-26.4.1/requirements/mypy.txt +0 -16
- essdiffraction-26.4.1/requirements/nightly.in +0 -23
- essdiffraction-26.4.1/requirements/nightly.txt +0 -245
- essdiffraction-26.4.1/requirements/static.in +0 -1
- essdiffraction-26.4.1/requirements/static.txt +0 -31
- essdiffraction-26.4.1/requirements/test.in +0 -4
- essdiffraction-26.4.1/requirements/test.txt +0 -9
- essdiffraction-26.4.1/requirements/wheels.in +0 -1
- essdiffraction-26.4.1/requirements/wheels.txt +0 -13
- essdiffraction-26.4.1/tox.ini +0 -76
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/.copier-answers.ess.yml +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/.copier-answers.yml +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/anaconda-icon.js +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/favicon.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/logo-dark.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/logo.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/thumbnails/beer_mcstas_dark.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/thumbnails/beer_mcstas_light.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/thumbnails/dream_advanced_powder_reduction_dark.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/thumbnails/dream_advanced_powder_reduction_light.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/thumbnails/dream_basic_powder_reduction_dark.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_static/thumbnails/dream_basic_powder_reduction_light.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_templates/class-template.rst +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/_templates/module-template.rst +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/about/bibliography.rst +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/bibliography.bib +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/developer/coding-conventions.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/developer/dependency-management.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/developer/getting-started.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/developer/index.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/beer/index.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/common/index.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-advanced-powder-reduction.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-detector-diagnostics.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-instrument-view.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-make-wavelength-lookup-table.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-visualize-absorption.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/index.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/installation.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/sns-instruments/POWGEN_data_reduction.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/sns-instruments/index.md +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/resources/logo.svg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/setup.cfg +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/__init__.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/data.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/peakfinding.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/beer/types.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/diffraction/peaks.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/diffraction/py.typed +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/__init__.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/beamline.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/data.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/diagnostics.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/instrument_view.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/io/__init__.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/dream/py.typed +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/__init__.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/_util.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/calibration.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/conversion.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/correction.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/filtering.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/grouping.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/logging.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/masking.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/py.typed +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/smoothing.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/transform.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/powder/workflow.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/__init__.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/beamline.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/calibration.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/data.py +1 -1
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/instrument_view.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/ess/snspowder/powgen/peaks.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/essdiffraction.egg-info/dependency_links.txt +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/src/essdiffraction.egg-info/top_level.txt +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/conftest.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/dream/diagnostics_test.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/dream/workflows/dream_generic_workflow_test.py +2 -2
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tests/package_test.py +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tools/docs/beer-thumbnails.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tools/docs/dream-thumbnails.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tools/preprocess_pg3_files.ipynb +0 -0
- {essdiffraction-26.4.1 → essdiffraction-26.5.2}/tools/shrink_nexus.py +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: essdiffraction
|
|
3
|
-
Version: 26.
|
|
3
|
+
Version: 26.5.2
|
|
4
4
|
Summary: Diffraction data reduction for the European Spallation Source
|
|
5
5
|
Author: Scipp contributors
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
7
|
-
Project-URL: Bug Tracker, https://github.com/scipp/
|
|
8
|
-
Project-URL: Documentation, https://scipp.github.io/
|
|
9
|
-
Project-URL: Source, https://github.com/scipp/essdiffraction
|
|
7
|
+
Project-URL: Bug Tracker, https://github.com/scipp/ess/issues
|
|
8
|
+
Project-URL: Documentation, https://scipp.github.io/ess/diffraction
|
|
9
|
+
Project-URL: Source, https://github.com/scipp/ess/tree/main/packages/essdiffraction
|
|
10
10
|
Classifier: Intended Audience :: Science/Research
|
|
11
11
|
Classifier: Natural Language :: English
|
|
12
12
|
Classifier: Operating System :: OS Independent
|
|
@@ -38,11 +38,27 @@ Requires-Dist: pandas>=2.1.2; extra == "test"
|
|
|
38
38
|
Requires-Dist: pooch>=1.5; extra == "test"
|
|
39
39
|
Requires-Dist: pytest>=7.0; extra == "test"
|
|
40
40
|
Requires-Dist: ipywidgets>=8.1.7; extra == "test"
|
|
41
|
+
Provides-Extra: docs
|
|
42
|
+
Requires-Dist: autodoc-pydantic; extra == "docs"
|
|
43
|
+
Requires-Dist: ipykernel; extra == "docs"
|
|
44
|
+
Requires-Dist: ipympl; extra == "docs"
|
|
45
|
+
Requires-Dist: ipython!=8.7.0; extra == "docs"
|
|
46
|
+
Requires-Dist: myst-parser; extra == "docs"
|
|
47
|
+
Requires-Dist: nbsphinx; extra == "docs"
|
|
48
|
+
Requires-Dist: pandas; extra == "docs"
|
|
49
|
+
Requires-Dist: pooch; extra == "docs"
|
|
50
|
+
Requires-Dist: pydata-sphinx-theme>=0.14; extra == "docs"
|
|
51
|
+
Requires-Dist: sphinx; extra == "docs"
|
|
52
|
+
Requires-Dist: sphinx-autodoc-typehints; extra == "docs"
|
|
53
|
+
Requires-Dist: sphinx-copybutton; extra == "docs"
|
|
54
|
+
Requires-Dist: sphinx-design; extra == "docs"
|
|
55
|
+
Requires-Dist: sphinxcontrib-bibtex; extra == "docs"
|
|
56
|
+
Requires-Dist: pyarrow; extra == "docs"
|
|
41
57
|
Dynamic: license-file
|
|
42
58
|
|
|
43
59
|
[](CODE_OF_CONDUCT.md)
|
|
44
60
|
[](https://pypi.python.org/pypi/essdiffraction)
|
|
45
|
-
[](https://anaconda.org/conda-forge/essdiffraction)
|
|
46
62
|
[](LICENSE)
|
|
47
63
|
|
|
48
64
|
# ESSdiffraction
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[](CODE_OF_CONDUCT.md)
|
|
2
2
|
[](https://pypi.python.org/pypi/essdiffraction)
|
|
3
|
-
[](https://anaconda.org/conda-forge/essdiffraction)
|
|
4
4
|
[](LICENSE)
|
|
5
5
|
|
|
6
6
|
# ESSdiffraction
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
<!-- This will display the version of the docs -->
|
|
2
|
-
Current ESSdiffraction version: {{ version }} (<a href="https://github.com/scipp/
|
|
2
|
+
Current ESSdiffraction version: {{ version }} (<a href="https://github.com/scipp/ess/releases?q=essdiffraction">older versions</a>).
|
|
@@ -18,12 +18,12 @@ To cite a specific version of ESSdiffraction, select the desired version on Zeno
|
|
|
18
18
|
|
|
19
19
|
## Older versions of the documentation
|
|
20
20
|
|
|
21
|
-
Older versions of the documentation pages can be found under the assets of each [release](https://github.com/scipp/
|
|
21
|
+
Older versions of the documentation pages can be found under the assets of each [release](https://github.com/scipp/ess/releases?q=essdiffraction).
|
|
22
22
|
Simply download the archive, unzip and view locally in a web browser.
|
|
23
23
|
|
|
24
24
|
## Source code and development
|
|
25
25
|
|
|
26
|
-
ESSdiffraction is hosted and developed [on GitHub](https://github.com/scipp/essdiffraction).
|
|
26
|
+
ESSdiffraction is hosted and developed [on GitHub](https://github.com/scipp/ess/tree/main/packages/essdiffraction).
|
|
27
27
|
|
|
28
28
|
```{toctree}
|
|
29
29
|
---
|
|
@@ -140,6 +140,34 @@
|
|
|
140
140
|
workflow
|
|
141
141
|
```
|
|
142
142
|
|
|
143
|
+
## MAGIC
|
|
144
|
+
|
|
145
|
+
### Workflows
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
```{eval-rst}
|
|
149
|
+
.. currentmodule:: ess.magic
|
|
150
|
+
|
|
151
|
+
.. autosummary::
|
|
152
|
+
:toctree: ../generated/functions
|
|
153
|
+
|
|
154
|
+
MagicWorkflow
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Submodules
|
|
158
|
+
|
|
159
|
+
```{eval-rst}
|
|
160
|
+
.. autosummary::
|
|
161
|
+
:toctree: ../generated/modules
|
|
162
|
+
:template: module-template.rst
|
|
163
|
+
:recursive:
|
|
164
|
+
|
|
165
|
+
beamline
|
|
166
|
+
data
|
|
167
|
+
types
|
|
168
|
+
workflow
|
|
169
|
+
```
|
|
170
|
+
|
|
143
171
|
## SNS powder
|
|
144
172
|
|
|
145
173
|
```{eval-rst}
|
|
@@ -191,7 +191,7 @@ html_theme_options = {
|
|
|
191
191
|
"icon_links": [
|
|
192
192
|
{
|
|
193
193
|
"name": "GitHub",
|
|
194
|
-
"url": "https://github.com/scipp/essdiffraction",
|
|
194
|
+
"url": "https://github.com/scipp/ess/tree/main/packages/essdiffraction",
|
|
195
195
|
"icon": "fa-brands fa-github",
|
|
196
196
|
"type": "fontawesome",
|
|
197
197
|
},
|
|
@@ -43,6 +43,11 @@
|
|
|
43
43
|
|
|
44
44
|
:::
|
|
45
45
|
|
|
46
|
+
:::{grid-item-card} MAGIC
|
|
47
|
+
:link: user-guide/magic/index.md
|
|
48
|
+
|
|
49
|
+
:::
|
|
50
|
+
|
|
46
51
|
:::{grid-item-card} SNS instruments
|
|
47
52
|
:link: user-guide/sns-instruments/index.md
|
|
48
53
|
|
|
@@ -61,8 +66,8 @@
|
|
|
61
66
|
|
|
62
67
|
## Get in touch
|
|
63
68
|
|
|
64
|
-
- If you have questions that are not answered by these documentation pages, ask on [discussions](https://github.com/scipp/
|
|
65
|
-
- Report bugs (including unclear, missing, or wrong documentation!), suggest features or view the source code [on GitHub](https://github.com/scipp/essdiffraction).
|
|
69
|
+
- If you have questions that are not answered by these documentation pages, ask on [discussions](https://github.com/scipp/ess/discussions). Please include a self-contained reproducible example if possible.
|
|
70
|
+
- Report bugs (including unclear, missing, or wrong documentation!), suggest features or view the source code [on GitHub](https://github.com/scipp/ess/tree/main/packages/essdiffraction).
|
|
66
71
|
|
|
67
72
|
```{toctree}
|
|
68
73
|
---
|
{essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/beer/beer_modulation_mcstas.ipynb
RENAMED
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"source": [
|
|
41
41
|
"## Beam modulation mode\n",
|
|
42
42
|
"\n",
|
|
43
|
-
"In the \"modulation mode\" the BEER instrument maximizes signal intensity while retaining wavelength resolution by utilizing choppers to create multiple pulses, each with well
|
|
43
|
+
"In the \"modulation mode\" the BEER instrument maximizes signal intensity while retaining wavelength resolution by utilizing choppers to create multiple pulses, each with well-defined wavelength, that reach the sample simultaneously.\n",
|
|
44
44
|
"The pulses can be distinguished in the detector data under the assumption that the peaks in $d_{hkl}$ are sufficiently well separated from each other.\n",
|
|
45
45
|
"\n",
|
|
46
46
|
"\n",
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
"\n",
|
|
84
84
|
"### Difference between modulation modes\n",
|
|
85
85
|
"\n",
|
|
86
|
-
"There are different modulation modes depending on the desired trade
|
|
86
|
+
"There are different modulation modes depending on the desired trade-off between resolution and intensity.\n",
|
|
87
87
|
"Below is a table describing the available modes.\n",
|
|
88
88
|
"\n",
|
|
89
89
|
"<table style=\"border-collapse: collapse; border: 1px solid #aaa; font-family: Arial, sans-serif; font-size: 14px;\">\n",
|
{essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/common/vanadium_processing.ipynb
RENAMED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"# Vanadium processing\n",
|
|
9
9
|
"\n",
|
|
10
10
|
"We normalize by vanadium measurements because vanadium scatters almost entirely incoherently.\n",
|
|
11
|
-
"But
|
|
11
|
+
"But vanadium does produce some coherent scattering peaks, and those need to be removed before normalization.\n",
|
|
12
12
|
"This notebook demonstrates how this can be done using ESSdiffraction and ScippNeutron.\n",
|
|
13
13
|
"It uses the same data as the [POWGEN_data_reduction](../sns-instruments/POWGEN_data_reduction.rst) workflow.\n",
|
|
14
14
|
"\n",
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
"Even though the peaks are small for vanadium, we need to remove them to extract pure incoherent scattering.\n",
|
|
131
131
|
"We can approximate the coherent scattering contribution by fitting functions to the peaks and subtracting those fitted functions.\n",
|
|
132
132
|
"[scippneutron.peaks](https://scipp.github.io/scippneutron/generated/modules/scippneutron.peaks.html) contains general functionality for fitting and removing peaks.\n",
|
|
133
|
-
"Here, we use it through [ess.snspowder.powgen.peaks](../../generated/modules/ess.snspowder.powgen.peaks.rst) which provides useful defaults for vanadium peaks at POWGEN.\n",
|
|
133
|
+
"Here, we use it through [ess.snspowder.powgen.peaks](../../generated/modules/ess.snspowder.powgen.peaks.rst), which provides useful defaults for vanadium peaks at POWGEN.\n",
|
|
134
134
|
"For example, it selects appropriate models for peaks (gaussian) and backgrounds (linear and quadratic).\n",
|
|
135
135
|
"\n",
|
|
136
136
|
"First, define estimates for the peaks based on the known crystal structure of vanadium:"
|
{essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/dream-powder-reduction.ipynb
RENAMED
|
@@ -165,7 +165,7 @@
|
|
|
165
165
|
"source": [
|
|
166
166
|
"cif_data.comment = \"\"\"This file was generated with the basic DREAM data reduction user guide\n",
|
|
167
167
|
"in the documentation of ESSdiffraction.\n",
|
|
168
|
-
"See https://scipp.github.io/
|
|
168
|
+
"See https://scipp.github.io/ess/diffraction/\n",
|
|
169
169
|
"\"\"\"\n",
|
|
170
170
|
"cif_data.save(\"reduced.cif\")"
|
|
171
171
|
]
|
|
@@ -207,7 +207,7 @@
|
|
|
207
207
|
"\n",
|
|
208
208
|
"---\n",
|
|
209
209
|
"\n",
|
|
210
|
-
"Next, consider reading [DREAM advanced powder data reduction](./dream-advanced-powder-reduction.rst) guide which demonstrates some
|
|
210
|
+
"Next, consider reading the [DREAM advanced powder data reduction](./dream-advanced-powder-reduction.rst) guide, which demonstrates some built-in options for customizing the workflow and how to compute alternative results."
|
|
211
211
|
]
|
|
212
212
|
}
|
|
213
213
|
],
|
{essdiffraction-26.4.1 → essdiffraction-26.5.2}/docs/user-guide/dream/workflow-widget-dream.ipynb
RENAMED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"source": [
|
|
8
8
|
"# Workflow widgets example\n",
|
|
9
9
|
"\n",
|
|
10
|
-
"This notebook illustrates how we can use ESSreduce
|
|
10
|
+
"This notebook illustrates how we can use ESSreduce's [workflow widgets](https://scipp.github.io/essreduce/user-guide/widget.html) to generate a graphical interface for running the [DREAM GEANT4 workflow](./dream-powder-reduction.rst).\n",
|
|
11
11
|
"\n",
|
|
12
12
|
"## Initializing the GUI\n",
|
|
13
13
|
"\n",
|
|
@@ -10,7 +10,6 @@ name = "essdiffraction"
|
|
|
10
10
|
description = "Diffraction data reduction for the European Spallation Source"
|
|
11
11
|
authors = [{ name = "Scipp contributors" }]
|
|
12
12
|
license = "BSD-3-Clause"
|
|
13
|
-
license-files = ["LICENSE"]
|
|
14
13
|
readme = "README.md"
|
|
15
14
|
classifiers = [
|
|
16
15
|
"Intended Audience :: Science/Research",
|
|
@@ -54,13 +53,35 @@ test = [
|
|
|
54
53
|
"pytest>=7.0",
|
|
55
54
|
"ipywidgets>=8.1.7",
|
|
56
55
|
]
|
|
56
|
+
docs = [
|
|
57
|
+
"autodoc-pydantic",
|
|
58
|
+
"ipykernel",
|
|
59
|
+
"ipympl",
|
|
60
|
+
# Breaks syntax highlighting in Jupyter code cells.
|
|
61
|
+
"ipython!=8.7.0",
|
|
62
|
+
"myst-parser",
|
|
63
|
+
"nbsphinx",
|
|
64
|
+
"pandas",
|
|
65
|
+
"pooch",
|
|
66
|
+
"pydata-sphinx-theme>=0.14",
|
|
67
|
+
"sphinx",
|
|
68
|
+
"sphinx-autodoc-typehints",
|
|
69
|
+
"sphinx-copybutton",
|
|
70
|
+
"sphinx-design",
|
|
71
|
+
"sphinxcontrib-bibtex",
|
|
72
|
+
# needed by pandas < 3.0
|
|
73
|
+
"pyarrow",
|
|
74
|
+
]
|
|
57
75
|
|
|
58
76
|
[project.urls]
|
|
59
|
-
"Bug Tracker" = "https://github.com/scipp/
|
|
60
|
-
"Documentation" = "https://scipp.github.io/
|
|
61
|
-
"Source" = "https://github.com/scipp/essdiffraction"
|
|
77
|
+
"Bug Tracker" = "https://github.com/scipp/ess/issues"
|
|
78
|
+
"Documentation" = "https://scipp.github.io/ess/diffraction"
|
|
79
|
+
"Source" = "https://github.com/scipp/ess/tree/main/packages/essdiffraction"
|
|
62
80
|
|
|
63
81
|
[tool.setuptools_scm]
|
|
82
|
+
root = "../.."
|
|
83
|
+
tag_regex = "^essdiffraction/(?P<version>[vV]?\\d+(?:\\.\\d+)*(?:[._-]?\\w+)*)$"
|
|
84
|
+
git_describe_command = ["git", "describe", "--dirty", "--tags", "--long", "--match", "essdiffraction/*[0-9]*"]
|
|
64
85
|
|
|
65
86
|
[tool.pytest.ini_options]
|
|
66
87
|
minversion = "7.0"
|
|
@@ -79,43 +100,6 @@ filterwarnings = [
|
|
|
79
100
|
'ignore:\s*Pyarrow will become a required dependency of pandas:DeprecationWarning',
|
|
80
101
|
]
|
|
81
102
|
|
|
82
|
-
[tool.ruff]
|
|
83
|
-
line-length = 88
|
|
84
|
-
extend-include = ["*.ipynb"]
|
|
85
|
-
extend-exclude = [
|
|
86
|
-
".*", "__pycache__", "build", "dist", "install",
|
|
87
|
-
]
|
|
88
|
-
|
|
89
|
-
[tool.ruff.lint]
|
|
90
|
-
# See https://docs.astral.sh/ruff/rules/
|
|
91
|
-
select = ["B", "C4", "DTZ", "E", "F", "G", "I", "PERF", "PGH", "PT", "PYI", "RUF", "S", "T20", "UP", "W"]
|
|
92
|
-
ignore = [
|
|
93
|
-
# Conflict with ruff format, see
|
|
94
|
-
# https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules
|
|
95
|
-
"COM812", "COM819", "D206", "D300", "E111", "E114", "E117", "ISC001", "ISC002", "Q000", "Q001", "Q002", "Q003", "W191",
|
|
96
|
-
]
|
|
97
|
-
fixable = ["B010", "I001", "PT001", "RUF022"]
|
|
98
|
-
isort.known-first-party = ["ess.diffraction", "ess.dream", "ess.powder"]
|
|
99
|
-
pydocstyle.convention = "numpy"
|
|
100
|
-
|
|
101
|
-
[tool.ruff.lint.per-file-ignores]
|
|
102
|
-
# those files have an increased risk of relying on import order
|
|
103
|
-
"tests/*" = [
|
|
104
|
-
"S101", # asserts are fine in tests
|
|
105
|
-
"B018", # 'useless expressions' are ok because some tests just check for exceptions
|
|
106
|
-
]
|
|
107
|
-
"*.ipynb" = [
|
|
108
|
-
"E501", # longer lines are sometimes more readable
|
|
109
|
-
"F403", # *-imports used with domain types
|
|
110
|
-
"F405", # linter may fail to find names because of *-imports
|
|
111
|
-
"I", # we don't collect imports at the top
|
|
112
|
-
"S101", # asserts are used for demonstration and are safe in notebooks
|
|
113
|
-
"T201", # printing is ok for demonstration purposes
|
|
114
|
-
]
|
|
115
|
-
|
|
116
|
-
[tool.ruff.format]
|
|
117
|
-
quote-style = "preserve"
|
|
118
|
-
|
|
119
103
|
[tool.mypy]
|
|
120
104
|
strict = true
|
|
121
105
|
ignore_missing_imports = true
|
|
@@ -125,11 +109,3 @@ enable_error_code = [
|
|
|
125
109
|
"truthy-bool",
|
|
126
110
|
]
|
|
127
111
|
warn_unreachable = true
|
|
128
|
-
|
|
129
|
-
[tool.codespell]
|
|
130
|
-
ignore-words-list = [
|
|
131
|
-
# Codespell wants "socioeconomic" which seems to be the standard spelling.
|
|
132
|
-
# But we use the word in our code of conduct which is the contributor covenant.
|
|
133
|
-
# Let's not modify it if we don't have to.
|
|
134
|
-
"socio-economic",
|
|
135
|
-
]
|
|
@@ -8,9 +8,10 @@ import h5py
|
|
|
8
8
|
import numpy as np
|
|
9
9
|
import scipp as sc
|
|
10
10
|
import scipp.constants
|
|
11
|
-
|
|
12
11
|
from ess.powder.types import CaveMonitor, RunType, WavelengthMonitor
|
|
13
12
|
|
|
13
|
+
from ess.reduce.nexus.types import DetectorBankSizes
|
|
14
|
+
|
|
14
15
|
from .types import (
|
|
15
16
|
DetectorBank,
|
|
16
17
|
Filename,
|
|
@@ -147,7 +148,38 @@ def _effective_chopper_position_from_mode(
|
|
|
147
148
|
raise ValueError(f'Unkonwn chopper mode {mode}.')
|
|
148
149
|
|
|
149
150
|
|
|
150
|
-
def _load_beer_mcstas(f, north_or_south=None, number=None):
|
|
151
|
+
def _load_beer_mcstas(f, *, north_or_south=None, number=None, detector_sizes):
|
|
152
|
+
# Allow the keys of detector_sizes to be both the
|
|
153
|
+
# NeXus detector name or DetectorBank enum.
|
|
154
|
+
# It makes the code a bit more complex here, but I think mixing them up
|
|
155
|
+
# is an easy mistake to make and it makes sense
|
|
156
|
+
# to handle that gracefully.
|
|
157
|
+
normalized_detector_sizes = {
|
|
158
|
+
(
|
|
159
|
+
'south'
|
|
160
|
+
if key in (DetectorBank.south, 'south_detector')
|
|
161
|
+
else 'north'
|
|
162
|
+
if key in (DetectorBank.north, 'north_detector')
|
|
163
|
+
else key
|
|
164
|
+
): value
|
|
165
|
+
for key, value in detector_sizes.items()
|
|
166
|
+
}
|
|
167
|
+
if north_or_south is not None:
|
|
168
|
+
# In newer files the bank is determined by a name (north or south).
|
|
169
|
+
sizes = normalized_detector_sizes[north_or_south]
|
|
170
|
+
else:
|
|
171
|
+
# In older files the detector bank is determined by an index.
|
|
172
|
+
if number == 1:
|
|
173
|
+
sizes = normalized_detector_sizes['south']
|
|
174
|
+
elif number == 2:
|
|
175
|
+
sizes = normalized_detector_sizes['north']
|
|
176
|
+
else:
|
|
177
|
+
raise ValueError(
|
|
178
|
+
'Could not determine detector sizes from provided '
|
|
179
|
+
f'`DetectorBankSizes`: {detector_sizes}. '
|
|
180
|
+
'Expected keys: "south_detector" and "north_detector".'
|
|
181
|
+
)
|
|
182
|
+
|
|
151
183
|
positions = {
|
|
152
184
|
name: f'/entry1/instrument/components/{key}/Position'
|
|
153
185
|
for key in f['/entry1/instrument/components']
|
|
@@ -177,7 +209,7 @@ def _load_beer_mcstas(f, north_or_south=None, number=None):
|
|
|
177
209
|
positions['MCC'],
|
|
178
210
|
)
|
|
179
211
|
data = (
|
|
180
|
-
next(_find_all_h5(data_dir, f'.*{north_or_south}{number}'))
|
|
212
|
+
next(_find_all_h5(data_dir, f'.*{north_or_south}{number}_events'))
|
|
181
213
|
if north_or_south is not None and number is not None
|
|
182
214
|
else next(_find_all_h5(data_dir, f'.*{north_or_south}'))
|
|
183
215
|
if north_or_south is not None
|
|
@@ -190,7 +222,7 @@ def _load_beer_mcstas(f, north_or_south=None, number=None):
|
|
|
190
222
|
]
|
|
191
223
|
detector_rotation = _find_h5(
|
|
192
224
|
f['/entry1/instrument/components'],
|
|
193
|
-
f'.*nD_Mantid_?{north_or_south}_{number}
|
|
225
|
+
f'.*nD_Mantid_?{north_or_south}_{number}$'
|
|
194
226
|
if north_or_south is not None and number is not None
|
|
195
227
|
else f'.*nD_Mantid_?{north_or_south}.*'
|
|
196
228
|
if north_or_south is not None
|
|
@@ -255,8 +287,8 @@ def _load_beer_mcstas(f, north_or_south=None, number=None):
|
|
|
255
287
|
# Bin detector panel into rectangular "pixels"
|
|
256
288
|
# similar in size to the physical detector pixels.
|
|
257
289
|
da = da.bin(
|
|
258
|
-
y=sc.linspace('y', -0.5, 0.5,
|
|
259
|
-
x=sc.linspace('x', -0.5, 0.5,
|
|
290
|
+
y=sc.linspace('y', -0.5, 0.5, sizes['y'] + 1, unit='m'),
|
|
291
|
+
x=sc.linspace('x', -0.5, 0.5, sizes['x'] + 1, unit='m'),
|
|
260
292
|
)
|
|
261
293
|
|
|
262
294
|
# Compute the position of each pixel in the global coordinate system.
|
|
@@ -318,7 +350,9 @@ def _load_beer_mcstas(f, north_or_south=None, number=None):
|
|
|
318
350
|
return da
|
|
319
351
|
|
|
320
352
|
|
|
321
|
-
def load_beer_mcstas(
|
|
353
|
+
def load_beer_mcstas(
|
|
354
|
+
f: str | Path | h5py.File, bank: DetectorBank, detector_sizes: DetectorBankSizes
|
|
355
|
+
) -> sc.DataArray:
|
|
322
356
|
'''Load beer McStas data from a file to a data array.'''
|
|
323
357
|
if not isinstance(bank, DetectorBank):
|
|
324
358
|
raise ValueError(
|
|
@@ -327,20 +361,30 @@ def load_beer_mcstas(f: str | Path | h5py.File, bank: DetectorBank) -> sc.DataAr
|
|
|
327
361
|
|
|
328
362
|
if isinstance(f, str | Path):
|
|
329
363
|
with h5py.File(f) as ff:
|
|
330
|
-
return load_beer_mcstas(ff, bank=bank)
|
|
364
|
+
return load_beer_mcstas(ff, bank=bank, detector_sizes=detector_sizes)
|
|
331
365
|
|
|
332
366
|
if len(list(_find_all_h5(f['/entry1/data'], '.*bank', nxclass='NXdata'))) < 8:
|
|
333
367
|
# If we don't find ~13 detectors, then assume the detectors are 2D
|
|
334
368
|
if len(list(_find_all_h5(f['/entry1/data'], '.*south', nxclass='NXdata'))) > 0:
|
|
335
|
-
return _load_beer_mcstas(
|
|
369
|
+
return _load_beer_mcstas(
|
|
370
|
+
f, north_or_south=bank.name, detector_sizes=detector_sizes
|
|
371
|
+
)
|
|
336
372
|
|
|
337
373
|
return _load_beer_mcstas(
|
|
338
|
-
f,
|
|
374
|
+
f,
|
|
375
|
+
north_or_south=None,
|
|
376
|
+
number=1 if bank == DetectorBank.south else 2,
|
|
377
|
+
detector_sizes=detector_sizes,
|
|
339
378
|
)
|
|
340
379
|
|
|
341
380
|
return sc.concat(
|
|
342
381
|
[
|
|
343
|
-
_load_beer_mcstas(
|
|
382
|
+
_load_beer_mcstas(
|
|
383
|
+
f,
|
|
384
|
+
north_or_south=bank.name,
|
|
385
|
+
number=number,
|
|
386
|
+
detector_sizes=detector_sizes,
|
|
387
|
+
)
|
|
344
388
|
for number in range(1, 13)
|
|
345
389
|
],
|
|
346
390
|
dim='panel',
|
|
@@ -399,10 +443,9 @@ def load_beer_mcstas_monitor(f: str | Path | h5py.File):
|
|
|
399
443
|
|
|
400
444
|
|
|
401
445
|
def load_beer_mcstas_provider(
|
|
402
|
-
fname: Filename[RunType],
|
|
403
|
-
bank: DetectorBank,
|
|
446
|
+
fname: Filename[RunType], bank: DetectorBank, detector_bank_sizes: DetectorBankSizes
|
|
404
447
|
) -> RawDetector[RunType]:
|
|
405
|
-
return load_beer_mcstas(fname, bank)
|
|
448
|
+
return load_beer_mcstas(fname, bank, detector_bank_sizes)
|
|
406
449
|
|
|
407
450
|
|
|
408
451
|
def load_beer_mcstas_monitor_provider(
|
|
@@ -4,7 +4,6 @@ import itertools
|
|
|
4
4
|
|
|
5
5
|
import sciline as sl
|
|
6
6
|
import scipp as sc
|
|
7
|
-
|
|
8
7
|
from ess.powder import providers as powder_providers
|
|
9
8
|
from ess.powder.correction import RunNormalization, insert_run_normalization
|
|
10
9
|
from ess.powder.types import (
|
|
@@ -15,6 +14,7 @@ from ess.powder.types import (
|
|
|
15
14
|
SampleRun,
|
|
16
15
|
VanadiumRun,
|
|
17
16
|
)
|
|
17
|
+
|
|
18
18
|
from ess.reduce.nexus.types import DetectorBankSizes, NeXusName
|
|
19
19
|
from ess.reduce.unwrap import GenericUnwrapWorkflow
|
|
20
20
|
|
|
@@ -28,6 +28,10 @@ from .types import (
|
|
|
28
28
|
|
|
29
29
|
default_parameters = {
|
|
30
30
|
PulseLength: sc.scalar(0.003, unit='s'),
|
|
31
|
+
DetectorBankSizes: {
|
|
32
|
+
'south_detector': {'y': 200, 'x': 500},
|
|
33
|
+
'north_detector': {'y': 200, 'x': 500},
|
|
34
|
+
},
|
|
31
35
|
}
|
|
32
36
|
|
|
33
37
|
|
|
@@ -93,10 +97,6 @@ def BeerPowderWorkflow(
|
|
|
93
97
|
monitor_types=[BunkerMonitor, CaveMonitor],
|
|
94
98
|
**kwargs,
|
|
95
99
|
)
|
|
96
|
-
wf[DetectorBankSizes] = {
|
|
97
|
-
'south_detector': {'y': 200, 'x': 500},
|
|
98
|
-
'north_detector': {'y': 200, 'x': 500},
|
|
99
|
-
}
|
|
100
100
|
wf[NeXusName[CaveMonitor]] = "monitor_cave"
|
|
101
101
|
|
|
102
102
|
for provider in itertools.chain(powder_providers, convert_pulse_shaping):
|
|
@@ -109,6 +109,7 @@ def BeerPowderWorkflow(
|
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
def BeerPowderMcStasWorkflow(**kwargs) -> sl.Pipeline:
|
|
112
|
+
"""Create the BEER powder workflow with McStas loaders inserted."""
|
|
112
113
|
wf = BeerPowderWorkflow(**kwargs)
|
|
113
114
|
for provider in mcstas_providers:
|
|
114
115
|
wf.insert(provider)
|
|
@@ -4,8 +4,6 @@
|
|
|
4
4
|
"""CIF writer for DREAM."""
|
|
5
5
|
|
|
6
6
|
import scipp as sc
|
|
7
|
-
from scippneutron.io import cif
|
|
8
|
-
|
|
9
7
|
from ess.powder.calibration import OutputCalibrationData
|
|
10
8
|
from ess.powder.types import (
|
|
11
9
|
Beamline,
|
|
@@ -19,6 +17,7 @@ from ess.powder.types import (
|
|
|
19
17
|
SampleRun,
|
|
20
18
|
Source,
|
|
21
19
|
)
|
|
20
|
+
from scippneutron.io import cif
|
|
22
21
|
|
|
23
22
|
|
|
24
23
|
def prepare_reduced_tof_cif(
|
|
@@ -5,8 +5,6 @@ import numpy as np
|
|
|
5
5
|
import sciline
|
|
6
6
|
import scipp as sc
|
|
7
7
|
import scippnexus as snx
|
|
8
|
-
from scippneutron.metadata import ESS_SOURCE
|
|
9
|
-
|
|
10
8
|
from ess.powder.types import (
|
|
11
9
|
Beamline,
|
|
12
10
|
CalibrationData,
|
|
@@ -26,6 +24,7 @@ from ess.powder.types import (
|
|
|
26
24
|
RunType,
|
|
27
25
|
Source,
|
|
28
26
|
)
|
|
27
|
+
from scippneutron.metadata import ESS_SOURCE
|
|
29
28
|
|
|
30
29
|
MANTLE_DETECTOR_ID = sc.index(7)
|
|
31
30
|
HIGH_RES_DETECTOR_ID = sc.index(8)
|
|
@@ -6,8 +6,6 @@ import itertools
|
|
|
6
6
|
import sciline
|
|
7
7
|
import scipp as sc
|
|
8
8
|
import scippnexus as snx
|
|
9
|
-
from scippneutron.metadata import Software
|
|
10
|
-
|
|
11
9
|
from ess.powder import providers as powder_providers
|
|
12
10
|
from ess.powder import with_pixel_mask_filenames
|
|
13
11
|
from ess.powder.correction import RunNormalization, insert_run_normalization
|
|
@@ -30,6 +28,8 @@ from ess.powder.types import (
|
|
|
30
28
|
VanadiumRun,
|
|
31
29
|
WavelengthMask,
|
|
32
30
|
)
|
|
31
|
+
from scippneutron.metadata import Software
|
|
32
|
+
|
|
33
33
|
from ess.reduce.nexus.types import DetectorBankSizes, NeXusName
|
|
34
34
|
from ess.reduce.parameter import parameter_mappers
|
|
35
35
|
from ess.reduce.unwrap import GenericUnwrapWorkflow
|
|
@@ -144,6 +144,7 @@ parameter_mappers[PixelMaskFilename] = with_pixel_mask_filenames
|
|
|
144
144
|
|
|
145
145
|
|
|
146
146
|
def default_parameters() -> dict:
|
|
147
|
+
"""Return the default reduction parameters shared by DREAM powder workflows."""
|
|
147
148
|
return {
|
|
148
149
|
KeepEvents[SampleRun]: KeepEvents[SampleRun](True),
|
|
149
150
|
KeepEvents[VanadiumRun]: KeepEvents[VanadiumRun](True),
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
# Copyright (c) 2026 Scipp contributors (https://github.com/scipp)
|
|
3
|
+
|
|
4
|
+
import importlib.metadata
|
|
5
|
+
|
|
6
|
+
from .workflow import MagicWorkflow, default_parameters
|
|
7
|
+
|
|
8
|
+
try:
|
|
9
|
+
__version__ = importlib.metadata.version("essdiffraction")
|
|
10
|
+
except importlib.metadata.PackageNotFoundError:
|
|
11
|
+
__version__ = "0.0.0"
|
|
12
|
+
|
|
13
|
+
del importlib
|
|
14
|
+
|
|
15
|
+
__all__ = [
|
|
16
|
+
'MagicWorkflow',
|
|
17
|
+
'__version__',
|
|
18
|
+
'default_parameters',
|
|
19
|
+
]
|