Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: geant4 gdml detector - ODD light part 1 #2424

Merged
merged 13 commits into from
Sep 12, 2023

Conversation

asalzburger
Copy link
Contributor

Build ODD light detector in new Detector frame.

By doing so, two things had to be corrected:

  • the PolyhedronReferenceGenerator is now templated on the number of segments and whether the center of gravity is added
  • the KdtSurfacesProvider now calculated the center of gravity of the reference points, BUT already in the casted frame, this avoid e.g. a cylinder to be assigned to (x,y) = (0,0) if not needed there

It also removed the odd_from_json.py to be replaced by the odd_light.py, which can be fed in from json, Geant4, DD4hep, TGeo, ...

@asalzburger asalzburger added this to the next milestone Sep 6, 2023
@github-actions github-actions bot added Component - Core Affects the Core module Component - Examples Affects the Examples module Component - Plugins Affects one or more Plugins Component - Documentation Affects the documentation labels Sep 6, 2023
@asalzburger asalzburger changed the title Feat geant4 gdml detector feat: geant4 gdml detector Sep 6, 2023
@codecov
Copy link

codecov bot commented Sep 6, 2023

Codecov Report

Merging #2424 (c2fe512) into main (3214740) will increase coverage by 0.00%.
The diff coverage is 50.00%.

@@           Coverage Diff           @@
##             main    #2424   +/-   ##
=======================================
  Coverage   49.70%   49.70%           
=======================================
  Files         458      458           
  Lines       25946    25949    +3     
  Branches    11918    11919    +1     
=======================================
+ Hits        12896    12899    +3     
- Misses       4595     4596    +1     
+ Partials     8455     8454    -1     
Files Changed Coverage Δ
...clude/Acts/Detector/detail/ReferenceGenerators.hpp 46.66% <0.00%> (+2.91%) ⬆️
Core/include/Acts/Detector/KdtSurfacesProvider.hpp 60.86% <56.25%> (+3.36%) ⬆️

... and 1 file with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@asalzburger
Copy link
Contributor Author

Hey @niermann999 - this is the first step to build ODD light.

@asalzburger asalzburger changed the title feat: geant4 gdml detector feat: geant4 gdml detector - part1 Sep 11, 2023
@asalzburger asalzburger changed the title feat: geant4 gdml detector - part1 feat: geant4 gdml detector - ODD light part 1 Sep 11, 2023
Copy link
Contributor

@niermann999 niermann999 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a few very minor comments

Examples/Python/python/acts/examples/detector.py Outdated Show resolved Hide resolved
Examples/Python/python/acts/examples/detector.py Outdated Show resolved Hide resolved
docs/plugins/geant4.md Outdated Show resolved Hide resolved
docs/plugins/geant4.md Outdated Show resolved Hide resolved
docs/plugins/geant4.md Outdated Show resolved Hide resolved
docs/plugins/geant4.md Outdated Show resolved Hide resolved
Examples/Python/python/acts/examples/odd_light.py Outdated Show resolved Hide resolved
@asalzburger
Copy link
Contributor Author

All comments addressed.

@kodiakhq kodiakhq bot merged commit 410ed37 into acts-project:main Sep 12, 2023
60 checks passed
kodiakhq bot pushed a commit that referenced this pull request Sep 13, 2023
This PR adds the possibility to create a grid based start volume lookup for navigation. It reduces the time for 1000 lookups in the ODD light example from `20 ms` to `1.5 ms` and hence `1.5 µs` per lookup.

This sits on top of #2424 and will wait until this one is merged.
@paulgessinger paulgessinger modified the milestones: next, v29.2.0 Sep 15, 2023
kodiakhq bot pushed a commit that referenced this pull request Sep 20, 2023
This PR introduces:

- an interface of a `Acts::Experimental::IGeometryIdGenerator` tool
- a standard `Acts::Experimental::GeometryIdGenerator` implementation
- slots in the detector building to attach those generators
- a check in the `Acts::Detector` class that surfaces have unique geometry ids
- a `Acts::GeometryHierarchyMap<Surface>` for the detector
- unit tests for all of those
- finally the ODD light with geometry id settings as the ODD standard

This is a squashed version of #2439 -  It sits on top of #2424 and #2436 and will wait until those are merged.
AJPfleger pushed a commit to AJPfleger/acts that referenced this pull request Sep 29, 2023
This PR introduces:

- an interface of a `Acts::Experimental::IGeometryIdGenerator` tool
- a standard `Acts::Experimental::GeometryIdGenerator` implementation
- slots in the detector building to attach those generators
- a check in the `Acts::Detector` class that surfaces have unique geometry ids
- a `Acts::GeometryHierarchyMap<Surface>` for the detector
- unit tests for all of those
- finally the ODD light with geometry id settings as the ODD standard

This is a squashed version of acts-project#2439 -  It sits on top of acts-project#2424 and acts-project#2436 and will wait until those are merged.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component - Core Affects the Core module Component - Documentation Affects the documentation Component - Examples Affects the Examples module Component - Plugins Affects one or more Plugins
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants