essdiffraction 24.9.0__tar.gz → 24.10.0__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.
Files changed (120) hide show
  1. {essdiffraction-24.9.0/src/essdiffraction.egg-info → essdiffraction-24.10.0}/PKG-INFO +2 -2
  2. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/pyproject.toml +1 -1
  3. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/base.in +1 -1
  4. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/base.txt +13 -13
  5. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/basetest.txt +5 -5
  6. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/ci.txt +7 -5
  7. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/dev.txt +5 -5
  8. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/docs.txt +9 -9
  9. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/nightly.txt +8 -8
  10. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/static.txt +3 -3
  11. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/wheels.txt +3 -3
  12. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/io/geant4.py +31 -15
  13. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/io/nexus.py +1 -1
  14. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/workflow.py +8 -8
  15. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/types.py +17 -25
  16. {essdiffraction-24.9.0 → essdiffraction-24.10.0/src/essdiffraction.egg-info}/PKG-INFO +2 -2
  17. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/essdiffraction.egg-info/requires.txt +1 -1
  18. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/dream/geant4_reduction_test.py +8 -8
  19. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/dream/io/geant4_test.py +5 -11
  20. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/dream/io/nexus_test.py +3 -3
  21. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.copier-answers.ess.yml +0 -0
  22. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.copier-answers.yml +0 -0
  23. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/ISSUE_TEMPLATE/blank.md +0 -0
  24. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/ISSUE_TEMPLATE/high-level-requirement.yml +0 -0
  25. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/dependabot.yml +0 -0
  26. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/ci.yml +0 -0
  27. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/docs.yml +0 -0
  28. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/nightly_at_main.yml +0 -0
  29. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/nightly_at_release.yml +0 -0
  30. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/python-version-ci +0 -0
  31. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/release.yml +0 -0
  32. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/test.yml +0 -0
  33. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.github/workflows/unpinned.yml +0 -0
  34. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.gitignore +0 -0
  35. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.pre-commit-config.yaml +0 -0
  36. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/.python-version +0 -0
  37. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/CODE_OF_CONDUCT.md +0 -0
  38. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/CONTRIBUTING.md +0 -0
  39. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/LICENSE +0 -0
  40. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/MANIFEST.in +0 -0
  41. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/README.md +0 -0
  42. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/conda/meta.yaml +0 -0
  43. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_static/anaconda-icon.js +0 -0
  44. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_static/favicon.svg +0 -0
  45. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_static/logo-dark.svg +0 -0
  46. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_static/logo.svg +0 -0
  47. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_templates/class-template.rst +0 -0
  48. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_templates/doc_version.html +0 -0
  49. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/_templates/module-template.rst +0 -0
  50. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/about/bibliography.rst +0 -0
  51. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/about/index.md +0 -0
  52. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/api-reference/index.md +0 -0
  53. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/bibliography.bib +0 -0
  54. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/conf.py +0 -0
  55. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/developer/coding-conventions.md +0 -0
  56. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/developer/dependency-management.md +0 -0
  57. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/developer/getting-started.md +0 -0
  58. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/developer/index.md +0 -0
  59. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/index.md +0 -0
  60. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/dream/dream-data-reduction.ipynb +0 -0
  61. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/dream/dream-instrument-view.ipynb +0 -0
  62. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/dream/index.md +0 -0
  63. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/index.md +0 -0
  64. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/sns-instruments/POWGEN_data_reduction.ipynb +0 -0
  65. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/sns-instruments/index.md +0 -0
  66. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/sns-instruments/preprocess_files.ipynb +0 -0
  67. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/docs/user-guide/sns-instruments/vanadium_processing.ipynb +0 -0
  68. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/basetest.in +0 -0
  69. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/ci.in +0 -0
  70. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/dev.in +0 -0
  71. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/docs.in +0 -0
  72. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/make_base.py +0 -0
  73. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/mypy.in +0 -0
  74. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/mypy.txt +0 -0
  75. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/nightly.in +0 -0
  76. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/static.in +0 -0
  77. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/test.in +0 -0
  78. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/test.txt +0 -0
  79. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/requirements/wheels.in +0 -0
  80. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/resources/logo.svg +0 -0
  81. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/setup.cfg +0 -0
  82. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/diffraction/__init__.py +0 -0
  83. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/diffraction/py.typed +0 -0
  84. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/__init__.py +0 -0
  85. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/data.py +0 -0
  86. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/instrument_view.py +0 -0
  87. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/io/__init__.py +0 -0
  88. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/io/cif.py +0 -0
  89. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/dream/py.typed +0 -0
  90. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/__init__.py +0 -0
  91. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/_util.py +0 -0
  92. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/conversion.py +0 -0
  93. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/correction.py +0 -0
  94. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/filtering.py +0 -0
  95. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/grouping.py +0 -0
  96. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/logging.py +0 -0
  97. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/masking.py +0 -0
  98. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/py.typed +0 -0
  99. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/smoothing.py +0 -0
  100. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/powder/transform.py +0 -0
  101. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/__init__.py +0 -0
  102. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/beamline.py +0 -0
  103. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/calibration.py +0 -0
  104. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/data.py +0 -0
  105. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/instrument_view.py +0 -0
  106. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/peaks.py +0 -0
  107. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/ess/snspowder/powgen/workflow.py +0 -0
  108. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/essdiffraction.egg-info/SOURCES.txt +0 -0
  109. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/essdiffraction.egg-info/dependency_links.txt +0 -0
  110. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/src/essdiffraction.egg-info/top_level.txt +0 -0
  111. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/dream/instrument_view_test.py +0 -0
  112. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/dream/io/cif_test.py +0 -0
  113. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/package_test.py +0 -0
  114. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/powder/conversion_test.py +0 -0
  115. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/powder/correction_test.py +0 -0
  116. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/powder/filtering_test.py +0 -0
  117. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/powder/transform_test.py +0 -0
  118. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/snspowder/powgen/load_test.py +0 -0
  119. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tests/snspowder/powgen/powgen_reduction_test.py +0 -0
  120. {essdiffraction-24.9.0 → essdiffraction-24.10.0}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: essdiffraction
3
- Version: 24.9.0
3
+ Version: 24.10.0
4
4
  Summary: Diffraction data reduction for the European Spallation Source
5
5
  Author: Scipp contributors
6
6
  License: BSD 3-Clause License
@@ -51,7 +51,7 @@ Requires-Python: >=3.10
51
51
  Description-Content-Type: text/markdown
52
52
  License-File: LICENSE
53
53
  Requires-Dist: dask
54
- Requires-Dist: essreduce>=24.08.2
54
+ Requires-Dist: essreduce>=24.10.2
55
55
  Requires-Dist: graphviz
56
56
  Requires-Dist: numpy
57
57
  Requires-Dist: plopp
@@ -31,7 +31,7 @@ requires-python = ">=3.10"
31
31
  # Make sure to list one dependency per line.
32
32
  dependencies = [
33
33
  "dask",
34
- "essreduce>=24.08.2",
34
+ "essreduce>=24.10.2",
35
35
  "graphviz",
36
36
  "numpy",
37
37
  "plopp",
@@ -3,7 +3,7 @@
3
3
  # --- END OF CUSTOM SECTION ---
4
4
  # The following was generated by 'tox -e deps', DO NOT EDIT MANUALLY!
5
5
  dask
6
- essreduce>=24.08.2
6
+ essreduce>=24.10.2
7
7
  graphviz
8
8
  numpy
9
9
  plopp
@@ -1,4 +1,4 @@
1
- # SHA1:2cad3df672e12033fa21254667278ceafae15e09
1
+ # SHA1:86f9288f7221f3a8506d1cc40db8a4584011b0e0
2
2
  #
3
3
  # This file is autogenerated by pip-compile-multi
4
4
  # To update, run:
@@ -15,27 +15,27 @@ comm==0.2.2
15
15
  # via ipywidgets
16
16
  contourpy==1.3.0
17
17
  # via matplotlib
18
- cyclebane==24.6.0
18
+ cyclebane==24.10.0
19
19
  # via sciline
20
20
  cycler==0.12.1
21
21
  # via matplotlib
22
- dask==2024.9.0
22
+ dask==2024.9.1
23
23
  # via -r base.in
24
24
  decorator==5.1.1
25
25
  # via ipython
26
- essreduce==24.9.1
26
+ essreduce==24.10.2
27
27
  # via -r base.in
28
28
  exceptiongroup==1.2.2
29
29
  # via ipython
30
30
  executing==2.1.0
31
31
  # via stack-data
32
- fonttools==4.53.1
32
+ fonttools==4.54.1
33
33
  # via matplotlib
34
34
  fsspec==2024.9.0
35
35
  # via dask
36
36
  graphviz==0.20.3
37
37
  # via -r base.in
38
- h5py==3.11.0
38
+ h5py==3.12.1
39
39
  # via
40
40
  # scippneutron
41
41
  # scippnexus
@@ -43,7 +43,7 @@ importlib-metadata==8.5.0
43
43
  # via dask
44
44
  ipydatawidgets==4.3.5
45
45
  # via pythreejs
46
- ipython==8.27.0
46
+ ipython==8.28.0
47
47
  # via ipywidgets
48
48
  ipywidgets==8.1.5
49
49
  # via
@@ -65,9 +65,9 @@ matplotlib-inline==0.1.7
65
65
  # via ipython
66
66
  mpltoolbox==24.5.1
67
67
  # via scippneutron
68
- networkx==3.3
68
+ networkx==3.4
69
69
  # via cyclebane
70
- numpy==2.1.1
70
+ numpy==2.1.2
71
71
  # via
72
72
  # -r base.in
73
73
  # contourpy
@@ -91,11 +91,11 @@ pexpect==4.9.0
91
91
  # via ipython
92
92
  pillow==10.4.0
93
93
  # via matplotlib
94
- plopp==24.9.1
94
+ plopp==24.9.3
95
95
  # via
96
96
  # -r base.in
97
97
  # scippneutron
98
- prompt-toolkit==3.0.47
98
+ prompt-toolkit==3.0.48
99
99
  # via ipython
100
100
  ptyprocess==0.7.0
101
101
  # via pexpect
@@ -125,7 +125,7 @@ scipp==24.9.1
125
125
  # scippnexus
126
126
  scippneutron==24.9.0
127
127
  # via -r base.in
128
- scippnexus==24.9.0
128
+ scippnexus==24.10.0
129
129
  # via
130
130
  # -r base.in
131
131
  # essreduce
@@ -140,7 +140,7 @@ six==1.16.0
140
140
  # python-dateutil
141
141
  stack-data==0.6.3
142
142
  # via ipython
143
- toolz==0.12.1
143
+ toolz==1.0.0
144
144
  # via
145
145
  # dask
146
146
  # partd
@@ -7,7 +7,7 @@
7
7
  #
8
8
  certifi==2024.8.30
9
9
  # via requests
10
- charset-normalizer==3.3.2
10
+ charset-normalizer==3.4.0
11
11
  # via requests
12
12
  exceptiongroup==1.2.2
13
13
  # via pytest
@@ -15,13 +15,13 @@ idna==3.10
15
15
  # via requests
16
16
  iniconfig==2.0.0
17
17
  # via pytest
18
- numpy==2.1.1
18
+ numpy==2.1.2
19
19
  # via pandas
20
20
  packaging==24.1
21
21
  # via
22
22
  # pooch
23
23
  # pytest
24
- pandas==2.2.2
24
+ pandas==2.2.3
25
25
  # via -r basetest.in
26
26
  platformdirs==4.3.6
27
27
  # via pooch
@@ -39,9 +39,9 @@ requests==2.32.3
39
39
  # via pooch
40
40
  six==1.16.0
41
41
  # via python-dateutil
42
- tomli==2.0.1
42
+ tomli==2.0.2
43
43
  # via pytest
44
- tzdata==2024.1
44
+ tzdata==2024.2
45
45
  # via pandas
46
46
  urllib3==2.2.3
47
47
  # via requests
@@ -11,11 +11,11 @@ certifi==2024.8.30
11
11
  # via requests
12
12
  chardet==5.2.0
13
13
  # via tox
14
- charset-normalizer==3.3.2
14
+ charset-normalizer==3.4.0
15
15
  # via requests
16
16
  colorama==0.4.6
17
17
  # via tox
18
- distlib==0.3.8
18
+ distlib==0.3.9
19
19
  # via virtualenv
20
20
  filelock==3.16.1
21
21
  # via
@@ -44,13 +44,15 @@ requests==2.32.3
44
44
  # via -r ci.in
45
45
  smmap==5.0.1
46
46
  # via gitdb
47
- tomli==2.0.1
47
+ tomli==2.0.2
48
48
  # via
49
49
  # pyproject-api
50
50
  # tox
51
- tox==4.20.0
51
+ tox==4.21.2
52
52
  # via -r ci.in
53
+ typing-extensions==4.12.2
54
+ # via tox
53
55
  urllib3==2.2.3
54
56
  # via requests
55
- virtualenv==20.26.5
57
+ virtualenv==20.26.6
56
58
  # via tox
@@ -14,7 +14,7 @@
14
14
  -r wheels.txt
15
15
  annotated-types==0.7.0
16
16
  # via pydantic
17
- anyio==4.4.0
17
+ anyio==4.6.0
18
18
  # via
19
19
  # httpx
20
20
  # jupyter-server
@@ -38,7 +38,7 @@ funcy==2.0
38
38
  # via copier
39
39
  h11==0.14.0
40
40
  # via httpcore
41
- httpcore==1.0.5
41
+ httpcore==1.0.6
42
42
  # via httpx
43
43
  httpx==0.27.2
44
44
  # via jupyterlab
@@ -81,9 +81,9 @@ pip-compile-multi==2.6.4
81
81
  # via -r dev.in
82
82
  pip-tools==7.4.1
83
83
  # via pip-compile-multi
84
- plumbum==1.8.3
84
+ plumbum==1.9.0
85
85
  # via copier
86
- prometheus-client==0.20.0
86
+ prometheus-client==0.21.0
87
87
  # via jupyter-server
88
88
  pycparser==2.22
89
89
  # via cffi
@@ -115,7 +115,7 @@ terminado==0.18.1
115
115
  # jupyter-server-terminals
116
116
  toposort==1.10
117
117
  # via pip-compile-multi
118
- types-python-dateutil==2.9.0.20240906
118
+ types-python-dateutil==2.9.0.20241003
119
119
  # via arrow
120
120
  uri-template==1.3.0
121
121
  # via jsonschema
@@ -26,9 +26,9 @@ bleach==6.1.0
26
26
  # via nbconvert
27
27
  certifi==2024.8.30
28
28
  # via requests
29
- charset-normalizer==3.3.2
29
+ charset-normalizer==3.4.0
30
30
  # via requests
31
- debugpy==1.8.5
31
+ debugpy==1.8.7
32
32
  # via ipykernel
33
33
  defusedxml==0.7.1
34
34
  # via nbconvert
@@ -60,7 +60,7 @@ jinja2==3.1.4
60
60
  # sphinx
61
61
  jsonschema==4.23.0
62
62
  # via nbformat
63
- jsonschema-specifications==2023.12.1
63
+ jsonschema-specifications==2024.10.1
64
64
  # via jsonschema
65
65
  jupyter-client==8.6.3
66
66
  # via
@@ -81,7 +81,7 @@ markdown-it-py==3.0.0
81
81
  # via
82
82
  # mdit-py-plugins
83
83
  # myst-parser
84
- markupsafe==2.1.5
84
+ markupsafe==3.0.1
85
85
  # via
86
86
  # jinja2
87
87
  # nbconvert
@@ -106,7 +106,7 @@ nbsphinx==0.9.5
106
106
  # via -r docs.in
107
107
  nest-asyncio==1.6.0
108
108
  # via ipykernel
109
- pandas==2.2.2
109
+ pandas==2.2.3
110
110
  # via -r docs.in
111
111
  pandocfilters==1.5.1
112
112
  # via nbconvert
@@ -150,7 +150,7 @@ snowballstemmer==2.2.0
150
150
  # via sphinx
151
151
  soupsieve==2.6
152
152
  # via beautifulsoup4
153
- sphinx==8.0.2
153
+ sphinx==8.1.0
154
154
  # via
155
155
  # -r docs.in
156
156
  # myst-parser
@@ -160,7 +160,7 @@ sphinx==8.0.2
160
160
  # sphinx-copybutton
161
161
  # sphinx-design
162
162
  # sphinxcontrib-bibtex
163
- sphinx-autodoc-typehints==2.4.4
163
+ sphinx-autodoc-typehints==2.5.0
164
164
  # via -r docs.in
165
165
  sphinx-copybutton==0.5.2
166
166
  # via -r docs.in
@@ -182,13 +182,13 @@ sphinxcontrib-serializinghtml==2.0.0
182
182
  # via sphinx
183
183
  tinycss2==1.3.0
184
184
  # via nbconvert
185
- tomli==2.0.1
185
+ tomli==2.0.2
186
186
  # via sphinx
187
187
  tornado==6.4.1
188
188
  # via
189
189
  # ipykernel
190
190
  # jupyter-client
191
- tzdata==2024.1
191
+ tzdata==2024.2
192
192
  # via pandas
193
193
  urllib3==2.2.3
194
194
  # via requests
@@ -16,11 +16,11 @@ comm==0.2.2
16
16
  # via ipywidgets
17
17
  contourpy==1.3.0
18
18
  # via matplotlib
19
- cyclebane==24.6.0
19
+ cyclebane==24.10.0
20
20
  # via sciline
21
21
  cycler==0.12.1
22
22
  # via matplotlib
23
- dask==2024.9.0
23
+ dask==2024.9.1
24
24
  # via -r nightly.in
25
25
  decorator==5.1.1
26
26
  # via ipython
@@ -28,13 +28,13 @@ essreduce @ git+https://github.com/scipp/essreduce@main
28
28
  # via -r nightly.in
29
29
  executing==2.1.0
30
30
  # via stack-data
31
- fonttools==4.53.1
31
+ fonttools==4.54.1
32
32
  # via matplotlib
33
33
  fsspec==2024.9.0
34
34
  # via dask
35
35
  graphviz==0.20.3
36
36
  # via -r nightly.in
37
- h5py==3.11.0
37
+ h5py==3.12.1
38
38
  # via
39
39
  # scippneutron
40
40
  # scippnexus
@@ -42,7 +42,7 @@ importlib-metadata==8.5.0
42
42
  # via dask
43
43
  ipydatawidgets==4.3.5
44
44
  # via pythreejs
45
- ipython==8.27.0
45
+ ipython==8.28.0
46
46
  # via ipywidgets
47
47
  ipywidgets==8.1.5
48
48
  # via
@@ -64,7 +64,7 @@ matplotlib-inline==0.1.7
64
64
  # via ipython
65
65
  mpltoolbox==24.5.1
66
66
  # via scippneutron
67
- networkx==3.3
67
+ networkx==3.4
68
68
  # via cyclebane
69
69
  parso==0.8.4
70
70
  # via jedi
@@ -78,7 +78,7 @@ plopp @ git+https://github.com/scipp/plopp@main
78
78
  # via
79
79
  # -r nightly.in
80
80
  # scippneutron
81
- prompt-toolkit==3.0.47
81
+ prompt-toolkit==3.0.48
82
82
  # via ipython
83
83
  ptyprocess==0.7.0
84
84
  # via pexpect
@@ -115,7 +115,7 @@ scipy==1.14.1
115
115
  # scippnexus
116
116
  stack-data==0.6.3
117
117
  # via ipython
118
- toolz==0.12.1
118
+ toolz==1.0.0
119
119
  # via
120
120
  # dask
121
121
  # partd
@@ -7,7 +7,7 @@
7
7
  #
8
8
  cfgv==3.4.0
9
9
  # via pre-commit
10
- distlib==0.3.8
10
+ distlib==0.3.9
11
11
  # via virtualenv
12
12
  filelock==3.16.1
13
13
  # via virtualenv
@@ -17,9 +17,9 @@ nodeenv==1.9.1
17
17
  # via pre-commit
18
18
  platformdirs==4.3.6
19
19
  # via virtualenv
20
- pre-commit==3.8.0
20
+ pre-commit==4.0.1
21
21
  # via -r static.in
22
22
  pyyaml==6.0.2
23
23
  # via pre-commit
24
- virtualenv==20.26.5
24
+ virtualenv==20.26.6
25
25
  # via pre-commit
@@ -5,11 +5,11 @@
5
5
  #
6
6
  # pip-compile-multi
7
7
  #
8
- build==1.2.2
8
+ build==1.2.2.post1
9
9
  # via -r wheels.in
10
10
  packaging==24.1
11
11
  # via build
12
- pyproject-hooks==1.1.0
12
+ pyproject-hooks==1.2.0
13
13
  # via build
14
- tomli==2.0.1
14
+ tomli==2.0.2
15
15
  # via build
@@ -4,6 +4,7 @@
4
4
  import numpy as np
5
5
  import sciline
6
6
  import scipp as sc
7
+ import scippnexus as snx
7
8
 
8
9
  from ess.powder.types import (
9
10
  CalibratedDetector,
@@ -11,13 +12,13 @@ from ess.powder.types import (
11
12
  CalibrationFilename,
12
13
  DetectorData,
13
14
  Filename,
14
- NeXusDetector,
15
+ NeXusComponent,
15
16
  NeXusDetectorName,
16
- NeXusSample,
17
- NeXusSource,
17
+ Position,
18
18
  RunType,
19
19
  )
20
- from ess.reduce.nexus.generic_workflow import GenericNeXusWorkflow
20
+ from ess.reduce.nexus.types import CalibratedBeamline
21
+ from ess.reduce.nexus.workflow import GenericNeXusWorkflow
21
22
 
22
23
  MANTLE_DETECTOR_ID = sc.index(7)
23
24
  HIGH_RES_DETECTOR_ID = sc.index(8)
@@ -60,9 +61,23 @@ def load_geant4_csv(file_path: Filename[RunType]) -> AllRawDetectors[RunType]:
60
61
 
61
62
  def extract_geant4_detector(
62
63
  detectors: AllRawDetectors[RunType], detector_name: NeXusDetectorName
63
- ) -> NeXusDetector[RunType]:
64
+ ) -> NeXusComponent[snx.NXdetector, RunType]:
64
65
  """Extract a single detector from a loaded GEANT4 simulation."""
65
- return NeXusDetector[RunType](detectors["instrument"][detector_name])
66
+ return NeXusComponent[snx.NXdetector, RunType](
67
+ detectors["instrument"][detector_name]
68
+ )
69
+
70
+
71
+ def get_calibrated_geant4_detector(
72
+ detector: NeXusComponent[snx.NXdetector, RunType],
73
+ ) -> CalibratedDetector[RunType]:
74
+ """
75
+ Replacement for :py:func:`ess.reduce.nexus.workflow.get_calibrated_detector`.
76
+
77
+ Since the Geant4 detectors already have computed positions as well as logical shape,
78
+ this just extracts the relevant event data.
79
+ """
80
+ return detector['events'].copy(deep=False)
66
81
 
67
82
 
68
83
  def _load_raw_events(file_path: str) -> sc.DataArray:
@@ -171,21 +186,21 @@ def geant4_load_calibration(filename: CalibrationFilename) -> CalibrationData:
171
186
 
172
187
 
173
188
  def dummy_assemble_detector_data(
174
- detector: CalibratedDetector[RunType],
189
+ detector: CalibratedBeamline[RunType],
175
190
  ) -> DetectorData[RunType]:
176
191
  """Dummy assembly of detector data, detector already contains neutron data."""
177
192
  return DetectorData[RunType](detector)
178
193
 
179
194
 
180
- def dummy_source() -> NeXusSource[RunType]:
181
- return NeXusSource[RunType](
182
- sc.DataGroup(position=sc.vector([np.nan, np.nan, np.nan], unit="mm"))
195
+ def dummy_source_position() -> Position[snx.NXsource, RunType]:
196
+ return Position[snx.NXsource, RunType](
197
+ sc.vector([np.nan, np.nan, np.nan], unit="mm")
183
198
  )
184
199
 
185
200
 
186
- def dummy_sample() -> NeXusSample[RunType]:
187
- return NeXusSample[RunType](
188
- sc.DataGroup(position=sc.vector([np.nan, np.nan, np.nan], unit="mm"))
201
+ def dummy_sample_position() -> Position[snx.NXsample, RunType]:
202
+ return Position[snx.NXsample, RunType](
203
+ sc.vector([np.nan, np.nan, np.nan], unit="mm")
189
204
  )
190
205
 
191
206
 
@@ -197,7 +212,8 @@ def LoadGeant4Workflow() -> sciline.Pipeline:
197
212
  wf.insert(extract_geant4_detector)
198
213
  wf.insert(load_geant4_csv)
199
214
  wf.insert(geant4_load_calibration)
215
+ wf.insert(get_calibrated_geant4_detector)
200
216
  wf.insert(dummy_assemble_detector_data)
201
- wf.insert(dummy_source)
202
- wf.insert(dummy_sample)
217
+ wf.insert(dummy_source_position)
218
+ wf.insert(dummy_sample_position)
203
219
  return wf
@@ -15,8 +15,8 @@ and the ICD DREAM interface specification for details.
15
15
 
16
16
  import sciline
17
17
 
18
- from ess.reduce.nexus.generic_workflow import GenericNeXusWorkflow
19
18
  from ess.reduce.nexus.types import DetectorBankSizes
19
+ from ess.reduce.nexus.workflow import GenericNeXusWorkflow
20
20
 
21
21
  DETECTOR_BANK_SIZES = {
22
22
  "endcap_backward_detector": {
@@ -5,12 +5,12 @@ import itertools
5
5
 
6
6
  import sciline
7
7
  import scipp as sc
8
+ import scippnexus as snx
8
9
 
9
10
  from ess.powder import providers as powder_providers
10
11
  from ess.powder.types import (
11
12
  AccumulatedProtonCharge,
12
- NeXusSample,
13
- NeXusSource,
13
+ Position,
14
14
  SampleRun,
15
15
  VanadiumRun,
16
16
  )
@@ -23,14 +23,14 @@ _dream_providers = (prepare_reduced_dspacing_cif,)
23
23
 
24
24
  def default_parameters() -> dict:
25
25
  # Quantities not available in the simulated data
26
- sample = sc.DataGroup(position=sc.vector([0.0, 0.0, 0.0], unit="mm"))
27
- source = sc.DataGroup(position=sc.vector([-3.478, 0.0, -76550], unit="mm"))
26
+ sample_position = sc.vector([0.0, 0.0, 0.0], unit="mm")
27
+ source_position = sc.vector([-3.478, 0.0, -76550], unit="mm")
28
28
  charge = sc.scalar(1.0, unit="µAh")
29
29
  return {
30
- NeXusSample[SampleRun]: sample,
31
- NeXusSample[VanadiumRun]: sample,
32
- NeXusSource[SampleRun]: source,
33
- NeXusSource[VanadiumRun]: source,
30
+ Position[snx.NXsample, SampleRun]: sample_position,
31
+ Position[snx.NXsample, VanadiumRun]: sample_position,
32
+ Position[snx.NXsource, SampleRun]: source_position,
33
+ Position[snx.NXsource, VanadiumRun]: source_position,
34
34
  AccumulatedProtonCharge[SampleRun]: charge,
35
35
  AccumulatedProtonCharge[VanadiumRun]: charge,
36
36
  CIFAuthors: CIFAuthors([]),
@@ -14,36 +14,28 @@ import sciline
14
14
  import scipp as sc
15
15
  from scippneutron.io import cif
16
16
 
17
- from ess.reduce.nexus import generic_types as reduce_gt
18
17
  from ess.reduce.nexus import types as reduce_t
19
18
  from ess.reduce.uncertainty import UncertaintyBroadcastMode as _UncertaintyBroadcastMode
20
19
 
21
20
  # 1 TypeVars used to parametrize the generic parts of the workflow
22
21
 
23
- BackgroundRun = reduce_gt.BackgroundRun
24
- CalibratedDetector = reduce_gt.CalibratedDetector
25
- CalibratedMonitor = reduce_gt.CalibratedMonitor
26
- DetectorData = reduce_gt.DetectorData
27
- DetectorPositionOffset = reduce_gt.DetectorPositionOffset
28
- EmptyBeamRun = reduce_gt.EmptyBeamRun
29
- Filename = reduce_gt.Filename
30
- Incident = reduce_gt.Incident
31
- MonitorData = reduce_gt.MonitorData
32
- MonitorPositionOffset = reduce_gt.MonitorPositionOffset
33
- MonitorType = reduce_gt.MonitorType
34
- NeXusMonitorName = reduce_gt.NeXusMonitorName
35
- NeXusDetector = reduce_gt.NeXusDetector
36
- NeXusMonitor = reduce_gt.NeXusMonitor
37
- NeXusSample = reduce_gt.NeXusSample
38
- NeXusSource = reduce_gt.NeXusSource
39
- RunType = reduce_gt.RunType
40
- SampleRun = reduce_gt.SampleRun
41
- ScatteringRunType = reduce_gt.ScatteringRunType
42
- Transmission = reduce_gt.Transmission
43
- TransmissionRun = reduce_gt.TransmissionRun
44
- SamplePosition = reduce_gt.SamplePosition
45
- SourcePosition = reduce_gt.SourcePosition
46
- VanadiumRun = reduce_gt.VanadiumRun
22
+ BackgroundRun = reduce_t.BackgroundRun
23
+ CalibratedDetector = reduce_t.CalibratedDetector
24
+ CalibratedMonitor = reduce_t.CalibratedMonitor
25
+ DetectorData = reduce_t.DetectorData
26
+ DetectorPositionOffset = reduce_t.DetectorPositionOffset
27
+ EmptyBeamRun = reduce_t.EmptyBeamRun
28
+ Filename = reduce_t.Filename
29
+ MonitorData = reduce_t.MonitorData
30
+ MonitorPositionOffset = reduce_t.MonitorPositionOffset
31
+ MonitorType = reduce_t.MonitorType
32
+ NeXusDetectorName = reduce_t.NeXusDetectorName
33
+ NeXusMonitorName = reduce_t.NeXusName
34
+ NeXusComponent = reduce_t.NeXusComponent
35
+ RunType = reduce_t.RunType
36
+ SampleRun = reduce_t.SampleRun
37
+ Position = reduce_t.Position
38
+ VanadiumRun = reduce_t.VanadiumRun
47
39
 
48
40
  DetectorBankSizes = reduce_t.DetectorBankSizes
49
41
  NeXusDetectorName = reduce_t.NeXusDetectorName
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: essdiffraction
3
- Version: 24.9.0
3
+ Version: 24.10.0
4
4
  Summary: Diffraction data reduction for the European Spallation Source
5
5
  Author: Scipp contributors
6
6
  License: BSD 3-Clause License
@@ -51,7 +51,7 @@ Requires-Python: >=3.10
51
51
  Description-Content-Type: text/markdown
52
52
  License-File: LICENSE
53
53
  Requires-Dist: dask
54
- Requires-Dist: essreduce>=24.08.2
54
+ Requires-Dist: essreduce>=24.10.2
55
55
  Requires-Dist: graphviz
56
56
  Requires-Dist: numpy
57
57
  Requires-Dist: plopp
@@ -1,5 +1,5 @@
1
1
  dask
2
- essreduce>=24.08.2
2
+ essreduce>=24.10.2
3
3
  graphviz
4
4
  numpy
5
5
  plopp
@@ -7,6 +7,7 @@ import pytest
7
7
  import sciline
8
8
  import scipp as sc
9
9
  import scipp.testing
10
+ import scippnexus as snx
10
11
  from scippneutron.io.cif import Author
11
12
 
12
13
  import ess.dream.data # noqa: F401
@@ -22,9 +23,8 @@ from ess.powder.types import (
22
23
  IofDspacingTwoTheta,
23
24
  MaskedData,
24
25
  NeXusDetectorName,
25
- NeXusSample,
26
- NeXusSource,
27
26
  NormalizedByProtonCharge,
27
+ Position,
28
28
  ReducedDspacingCIF,
29
29
  SampleRun,
30
30
  TofMask,
@@ -35,8 +35,8 @@ from ess.powder.types import (
35
35
  WavelengthMask,
36
36
  )
37
37
 
38
- sample = sc.DataGroup(position=sc.vector([0.0, 0.0, 0.0], unit='mm'))
39
- source = sc.DataGroup(position=sc.vector([-3.478, 0.0, -76550], unit='mm'))
38
+ sample = sc.vector([0.0, 0.0, 0.0], unit='mm')
39
+ source = sc.vector([-3.478, 0.0, -76550], unit='mm')
40
40
  charge = sc.scalar(1.0, unit='µAh')
41
41
 
42
42
  params = {
@@ -48,10 +48,10 @@ params = {
48
48
  DspacingBins: sc.linspace('dspacing', 0.0, 2.3434, 201, unit='angstrom'),
49
49
  TofMask: lambda x: (x < sc.scalar(0.0, unit='ns'))
50
50
  | (x > sc.scalar(86e6, unit='ns')),
51
- NeXusSample[SampleRun]: sample,
52
- NeXusSample[VanadiumRun]: sample,
53
- NeXusSource[SampleRun]: source,
54
- NeXusSource[VanadiumRun]: source,
51
+ Position[snx.NXsample, SampleRun]: sample,
52
+ Position[snx.NXsample, VanadiumRun]: sample,
53
+ Position[snx.NXsource, SampleRun]: source,
54
+ Position[snx.NXsource, VanadiumRun]: source,
55
55
  AccumulatedProtonCharge[SampleRun]: charge,
56
56
  AccumulatedProtonCharge[VanadiumRun]: charge,
57
57
  TwoThetaMask: None,
@@ -8,17 +8,11 @@ import numpy as np
8
8
  import pytest
9
9
  import scipp as sc
10
10
  import scipp.testing
11
+ import scippnexus as snx
11
12
 
12
13
  from ess.dream import data, load_geant4_csv
13
14
  from ess.dream.io.geant4 import LoadGeant4Workflow
14
- from ess.powder.types import (
15
- Filename,
16
- NeXusDetector,
17
- NeXusDetectorName,
18
- NeXusSample,
19
- NeXusSource,
20
- SampleRun,
21
- )
15
+ from ess.powder.types import Filename, NeXusComponent, NeXusDetectorName, SampleRun
22
16
 
23
17
 
24
18
  @pytest.fixture(scope="module")
@@ -186,13 +180,13 @@ def test_geant4_in_pipeline(file_path, file):
186
180
  pipeline = LoadGeant4Workflow()
187
181
  pipeline[Filename[SampleRun]] = file_path
188
182
  pipeline[NeXusDetectorName] = NeXusDetectorName("mantle")
189
- pipeline[NeXusSample[SampleRun]] = sc.DataGroup(
183
+ pipeline[NeXusComponent[snx.NXsample, SampleRun]] = sc.DataGroup(
190
184
  position=sc.vector([0.0, 0.0, 0.0], unit="mm")
191
185
  )
192
- pipeline[NeXusSource[SampleRun]] = sc.DataGroup(
186
+ pipeline[NeXusComponent[snx.NXsource, SampleRun]] = sc.DataGroup(
193
187
  position=sc.vector([-3.478, 0.0, -76550], unit="mm")
194
188
  )
195
189
 
196
- detector = pipeline.compute(NeXusDetector[SampleRun])['events']
190
+ detector = pipeline.compute(NeXusComponent[snx.NXdetector, SampleRun])['events']
197
191
  expected = load_geant4_csv(file)["instrument"]["mantle"]["events"]
198
192
  sc.testing.assert_identical(detector, expected)
@@ -6,16 +6,16 @@ import scipp as sc
6
6
 
7
7
  import ess.dream.data # noqa: F401
8
8
  from ess import dream
9
- from ess.reduce.nexus.generic_types import (
9
+ from ess.reduce.nexus.types import (
10
10
  CalibratedDetector,
11
11
  CalibratedMonitor,
12
12
  DetectorData,
13
13
  Filename,
14
14
  Monitor1,
15
- NeXusMonitorName,
15
+ NeXusDetectorName,
16
16
  SampleRun,
17
17
  )
18
- from ess.reduce.nexus.types import NeXusDetectorName
18
+ from ess.reduce.nexus.types import NeXusName as NeXusMonitorName
19
19
 
20
20
  bank_dims = {'wire', 'module', 'segment', 'strip', 'counter'}
21
21
  hr_sans_dims = {'strip', 'other'}