reboost 0.8.3__tar.gz → 0.8.4__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 (84) hide show
  1. {reboost-0.8.3/src/reboost.egg-info → reboost-0.8.4}/PKG-INFO +2 -2
  2. {reboost-0.8.3 → reboost-0.8.4}/pyproject.toml +1 -1
  3. reboost-0.8.4/src/reboost/__main__.py +6 -0
  4. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/_version.py +3 -3
  5. reboost-0.8.4/src/reboost/optmap/__main__.py +6 -0
  6. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/convolve.py +3 -3
  7. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/evt.py +2 -2
  8. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/mapview.py +1 -1
  9. reboost-0.8.4/src/reboost/spms/__init__.py +10 -0
  10. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/spms/pe.py +8 -3
  11. {reboost-0.8.3 → reboost-0.8.4/src/reboost.egg-info}/PKG-INFO +2 -2
  12. {reboost-0.8.3 → reboost-0.8.4}/src/reboost.egg-info/SOURCES.txt +2 -0
  13. {reboost-0.8.3 → reboost-0.8.4}/src/reboost.egg-info/requires.txt +1 -1
  14. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/spms.yaml +1 -0
  15. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/test_build_hit.py +1 -0
  16. reboost-0.8.3/src/reboost/spms/__init__.py +0 -5
  17. {reboost-0.8.3 → reboost-0.8.4}/LICENSE +0 -0
  18. {reboost-0.8.3 → reboost-0.8.4}/README.md +0 -0
  19. {reboost-0.8.3 → reboost-0.8.4}/setup.cfg +0 -0
  20. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/__init__.py +0 -0
  21. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/build_evt.py +0 -0
  22. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/build_glm.py +0 -0
  23. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/build_hit.py +0 -0
  24. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/cli.py +0 -0
  25. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/core.py +0 -0
  26. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/daq/__init__.py +0 -0
  27. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/daq/core.py +0 -0
  28. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/daq/utils.py +0 -0
  29. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/hpge/__init__.py +0 -0
  30. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/hpge/psd.py +0 -0
  31. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/hpge/surface.py +0 -0
  32. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/hpge/utils.py +0 -0
  33. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/iterator.py +0 -0
  34. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/log_utils.py +0 -0
  35. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/math/__init__.py +0 -0
  36. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/math/functions.py +0 -0
  37. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/math/stats.py +0 -0
  38. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/__init__.py +0 -0
  39. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/cli.py +0 -0
  40. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/create.py +0 -0
  41. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/numba_pdg.py +0 -0
  42. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/optmap/optmap.py +0 -0
  43. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/profile.py +0 -0
  44. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/shape/__init__.py +0 -0
  45. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/shape/cluster.py +0 -0
  46. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/shape/group.py +0 -0
  47. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/shape/reduction.py +0 -0
  48. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/units.py +0 -0
  49. {reboost-0.8.3 → reboost-0.8.4}/src/reboost/utils.py +0 -0
  50. {reboost-0.8.3 → reboost-0.8.4}/src/reboost.egg-info/dependency_links.txt +0 -0
  51. {reboost-0.8.3 → reboost-0.8.4}/src/reboost.egg-info/entry_points.txt +0 -0
  52. {reboost-0.8.3 → reboost-0.8.4}/src/reboost.egg-info/not-zip-safe +0 -0
  53. {reboost-0.8.3 → reboost-0.8.4}/src/reboost.egg-info/top_level.txt +0 -0
  54. {reboost-0.8.3 → reboost-0.8.4}/tests/conftest.py +0 -0
  55. {reboost-0.8.3 → reboost-0.8.4}/tests/evt/test_evt.py +0 -0
  56. {reboost-0.8.3 → reboost-0.8.4}/tests/glm/test_build_glm.py +0 -0
  57. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/args.yaml +0 -0
  58. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/basic.yaml +0 -0
  59. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/foward_only.yaml +0 -0
  60. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/geom.gdml +0 -0
  61. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/hit_config.yaml +0 -0
  62. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/pars.yaml +0 -0
  63. {reboost-0.8.3 → reboost-0.8.4}/tests/hit/configs/reshape.yaml +0 -0
  64. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/simulation/gammas.mac +0 -0
  65. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/simulation/geometry.gdml +0 -0
  66. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/simulation/make_dt_map.jl +0 -0
  67. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/simulation/make_geom.py +0 -0
  68. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_current.py +0 -0
  69. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_dt_heuristic.py +0 -0
  70. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_files/drift_time_maps.lh5 +0 -0
  71. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_files/internal_electron.lh5 +0 -0
  72. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_hpge_map.py +0 -0
  73. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_r90.py +0 -0
  74. {reboost-0.8.3 → reboost-0.8.4}/tests/hpge/test_surface.py +0 -0
  75. {reboost-0.8.3 → reboost-0.8.4}/tests/spms/test_pe.py +0 -0
  76. {reboost-0.8.3 → reboost-0.8.4}/tests/test_cli.py +0 -0
  77. {reboost-0.8.3 → reboost-0.8.4}/tests/test_core.py +0 -0
  78. {reboost-0.8.3 → reboost-0.8.4}/tests/test_math.py +0 -0
  79. {reboost-0.8.3 → reboost-0.8.4}/tests/test_optmap.py +0 -0
  80. {reboost-0.8.3 → reboost-0.8.4}/tests/test_optmap_dets.gdml +0 -0
  81. {reboost-0.8.3 → reboost-0.8.4}/tests/test_profile.py +0 -0
  82. {reboost-0.8.3 → reboost-0.8.4}/tests/test_shape.py +0 -0
  83. {reboost-0.8.3 → reboost-0.8.4}/tests/test_units.py +0 -0
  84. {reboost-0.8.3 → reboost-0.8.4}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reboost
3
- Version: 0.8.3
3
+ Version: 0.8.4
4
4
  Summary: New LEGEND Monte-Carlo simulation post-processing
5
5
  Author-email: Manuel Huber <info@manuelhu.de>, Toby Dixon <toby.dixon.23@ucl.ac.uk>, Luigi Pertoldi <gipert@pm.me>
6
6
  Maintainer: The LEGEND Collaboration
@@ -28,7 +28,7 @@ Requires-Dist: scipy
28
28
  Requires-Dist: numba>=0.60
29
29
  Requires-Dist: legend-pydataobj>=1.15.1
30
30
  Requires-Dist: legend-pygeom-optics>=0.15.0
31
- Requires-Dist: legend-pygeom-tools>=0.0.25
31
+ Requires-Dist: legend-pygeom-tools>=0.0.26
32
32
  Requires-Dist: legend-pygeom-hpges
33
33
  Requires-Dist: hist
34
34
  Requires-Dist: dbetto
@@ -39,7 +39,7 @@ dependencies = [
39
39
  "numba >=0.60",
40
40
  "legend-pydataobj >=1.15.1",
41
41
  "legend-pygeom-optics >=0.15.0",
42
- "legend-pygeom-tools >=0.0.25",
42
+ "legend-pygeom-tools >=0.0.26",
43
43
  "legend-pygeom-hpges",
44
44
  "hist",
45
45
  "dbetto",
@@ -0,0 +1,6 @@
1
+ from __future__ import annotations
2
+
3
+ from .cli import cli
4
+
5
+ if __name__ == "__main__":
6
+ cli()
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.8.3'
32
- __version_tuple__ = version_tuple = (0, 8, 3)
31
+ __version__ = version = '0.8.4'
32
+ __version_tuple__ = version_tuple = (0, 8, 4)
33
33
 
34
- __commit_id__ = commit_id = 'g2085bdbed'
34
+ __commit_id__ = commit_id = 'g974fc1b03'
@@ -0,0 +1,6 @@
1
+ from __future__ import annotations
2
+
3
+ from .cli import optical_cli
4
+
5
+ if __name__ == "__main__":
6
+ optical_cli()
@@ -32,7 +32,7 @@ class OptmapForConvolve(NamedTuple):
32
32
 
33
33
  def open_optmap(optmap_fn: str) -> OptmapForConvolve:
34
34
  dets = lh5.ls(optmap_fn, "/channels/")
35
- detidx = np.arange(0, dets.shape[0])
35
+ detidx = np.arange(0, len(dets))
36
36
 
37
37
  optmap_all = lh5.read("/all/prob", optmap_fn)
38
38
  assert isinstance(optmap_all, Histogram)
@@ -61,14 +61,14 @@ def open_optmap(optmap_fn: str) -> OptmapForConvolve:
61
61
  raise ValueError(msg)
62
62
  else:
63
63
  detidx = np.array([OPTMAP_ANY_CH])
64
- dets = np.array(["all"])
64
+ dets = ["all"]
65
65
 
66
66
  # check the exponent from the optical map file
67
67
  if "_hitcounts_exp" in lh5.ls(optmap_fn):
68
68
  msg = "found _hitcounts_exp which is not supported any more"
69
69
  raise RuntimeError(msg)
70
70
 
71
- dets = [d.replace("/channels/", "") for d in dets]
71
+ dets = np.array([d.replace("/channels/", "") for d in dets])
72
72
 
73
73
  return OptmapForConvolve(dets, detidx, optmap_edges, ow)
74
74
 
@@ -131,9 +131,9 @@ def get_optical_detectors_from_geom(geom_fn) -> dict[int, str]:
131
131
  import pygeomtools
132
132
 
133
133
  geom_registry = pyg4ometry.gdml.Reader(geom_fn).getRegistry()
134
- detectors = pygeomtools.get_all_sensvols(geom_registry)
134
+ detectors = pygeomtools.get_all_sensvols(geom_registry, type_filter="optical")
135
135
  return OrderedDict(
136
- [(d.uid, name) for name, d in detectors.items() if d.detector_type == "optical"]
136
+ [(d.uid, d.ntuple_name if d.ntuple_name else name) for name, d in detectors.items()]
137
137
  )
138
138
 
139
139
 
@@ -95,7 +95,7 @@ def _read_data(
95
95
  histogram_choice: str = "prob",
96
96
  ) -> tuple[tuple[NDArray], NDArray]:
97
97
  histogram = histogram_choice if histogram_choice != "prob_unc_rel" else "prob"
98
- detid = f"channels/{detid}" if detid != all and not detid.startswith("channels/") else detid
98
+ detid = f"channels/{detid}" if detid != "all" and not detid.startswith("channels/") else detid
99
99
 
100
100
  optmap_all = lh5.read(f"/{detid}/{histogram}", optmap_fn)
101
101
  optmap_edges = tuple([b.edges for b in optmap_all.binning])
@@ -0,0 +1,10 @@
1
+ from __future__ import annotations
2
+
3
+ from .pe import detected_photoelectrons, emitted_scintillation_photons, load_optmap, load_optmap_all
4
+
5
+ __all__ = [
6
+ "detected_photoelectrons",
7
+ "emitted_scintillation_photons",
8
+ "load_optmap",
9
+ "load_optmap_all",
10
+ ]
@@ -140,8 +140,8 @@ def detected_photoelectrons(
140
140
  """
141
141
  hits = ak.Array(
142
142
  {
143
- "num_scint_ph": num_scint_ph,
144
- "particle": particle,
143
+ "num_scint_ph": units_conv_ak(num_scint_ph, "dimensionless"),
144
+ "particle": units_conv_ak(particle, "dimensionless"),
145
145
  "time": units_conv_ak(time, "ns"),
146
146
  "xloc": units_conv_ak(xloc, "m"),
147
147
  "yloc": units_conv_ak(yloc, "m"),
@@ -171,7 +171,12 @@ def emitted_scintillation_photons(
171
171
  material
172
172
  scintillating material name.
173
173
  """
174
- hits = ak.Array({"edep": units_conv_ak(edep, "keV"), "particle": particle})
174
+ hits = ak.Array(
175
+ {
176
+ "edep": units_conv_ak(edep, "keV"),
177
+ "particle": units_conv_ak(particle, "dimensionless"),
178
+ }
179
+ )
175
180
 
176
181
  scint_mat_params = convolve._get_scint_params(material)
177
182
  ph = convolve.iterate_stepwise_depositions_scintillate(hits, scint_mat_params)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reboost
3
- Version: 0.8.3
3
+ Version: 0.8.4
4
4
  Summary: New LEGEND Monte-Carlo simulation post-processing
5
5
  Author-email: Manuel Huber <info@manuelhu.de>, Toby Dixon <toby.dixon.23@ucl.ac.uk>, Luigi Pertoldi <gipert@pm.me>
6
6
  Maintainer: The LEGEND Collaboration
@@ -28,7 +28,7 @@ Requires-Dist: scipy
28
28
  Requires-Dist: numba>=0.60
29
29
  Requires-Dist: legend-pydataobj>=1.15.1
30
30
  Requires-Dist: legend-pygeom-optics>=0.15.0
31
- Requires-Dist: legend-pygeom-tools>=0.0.25
31
+ Requires-Dist: legend-pygeom-tools>=0.0.26
32
32
  Requires-Dist: legend-pygeom-hpges
33
33
  Requires-Dist: hist
34
34
  Requires-Dist: dbetto
@@ -2,6 +2,7 @@ LICENSE
2
2
  README.md
3
3
  pyproject.toml
4
4
  src/reboost/__init__.py
5
+ src/reboost/__main__.py
5
6
  src/reboost/_version.py
6
7
  src/reboost/build_evt.py
7
8
  src/reboost/build_glm.py
@@ -31,6 +32,7 @@ src/reboost/math/__init__.py
31
32
  src/reboost/math/functions.py
32
33
  src/reboost/math/stats.py
33
34
  src/reboost/optmap/__init__.py
35
+ src/reboost/optmap/__main__.py
34
36
  src/reboost/optmap/cli.py
35
37
  src/reboost/optmap/convolve.py
36
38
  src/reboost/optmap/create.py
@@ -5,7 +5,7 @@ scipy
5
5
  numba>=0.60
6
6
  legend-pydataobj>=1.15.1
7
7
  legend-pygeom-optics>=0.15.0
8
- legend-pygeom-tools>=0.0.25
8
+ legend-pygeom-tools>=0.0.26
9
9
  legend-pygeom-hpges
10
10
  hist
11
11
  dbetto
@@ -1,5 +1,6 @@
1
1
  objects:
2
2
  spms: "['S001', 'S002']"
3
+ optmap_test: reboost.spms.load_optmap_all(ARGS.optmap_path)
3
4
 
4
5
  processing_groups:
5
6
  - name: spms
@@ -333,6 +333,7 @@ def test_spms(test_gen_lh5_scint, tmptestdir):
333
333
  m.create_probability()
334
334
  m.write_lh5(map_file, "channels/S001", "overwrite_file")
335
335
  m.write_lh5(map_file, "channels/S002", "write_safe")
336
+ m.write_lh5(map_file, "all", "write_safe")
336
337
 
337
338
  outfile = f"{tmptestdir}/spms_hit.lh5"
338
339
  reboost.build_hit(
@@ -1,5 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from .pe import detected_photoelectrons, emitted_scintillation_photons, load_optmap
4
-
5
- __all__ = ["detected_photoelectrons", "emitted_scintillation_photons", "load_optmap"]
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