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: Geometry-agnostic material mapping for both surfaces and volumes #2935

Closed

Conversation

ssdetlab
Copy link
Contributor

@ssdetlab ssdetlab commented Feb 7, 2024

This is an attempt to finish the work started by the #2473

In addition to the changes described in the original PR:

  1. Support of both the TrackingGeometry Navigator and the DetectorNavigator in both SurfaceMaterialMapper and VolumeMaterialMapper is implemented.

  2. Volume material mapping is finished with conversion of the VolumeHit struct into something that can support both the geometries for the time being. Now it is inheriting from the InteractionVolume which already has some infrastructure for the Detector/TrackingGeometry switching. Slight renaming is introduced.

  3. Minor fixes in Python bindings are made. The segfault problem of the original PR is resolved. Root hashes were modified due to the renaming of the output files.

  4. Modifications are made to the DetectorNavigator to resolve the problem of stepping loop abortion before the first step is even made, and the problem of exiting the stepping loop due to the VolumeBounds::inside() returning true when the stepper just exited the Portal and is on the verge of the volume. The latter prevented End Of World check from executing correctly. These are, most likely, temporary solutions, as it feels that something smarter can be done there.

  5. Unit Tests are expanded for both Volume and Surface material mapping.

@github-actions github-actions bot added Component - Core Affects the Core module Component - Examples Affects the Examples module labels Feb 7, 2024
Copy link

codecov bot commented Feb 7, 2024

Codecov Report

Attention: 194 lines in your changes are missing coverage. Please review.

Comparison is base (a5b3864) 48.87% compared to head (b6bd5e7) 49.14%.
Report is 5 commits behind head on main.

Files Patch % Lines
Core/src/Material/VolumeMaterialMapper.cpp 13.33% 92 Missing and 25 partials ⚠️
Core/src/Material/SurfaceMaterialMapper.cpp 41.75% 10 Missing and 43 partials ⚠️
Core/include/Acts/Propagator/VolumeCollector.hpp 0.00% 15 Missing ⚠️
...ore/include/Acts/Utilities/BinAdjustmentVolume.hpp 22.22% 4 Missing and 3 partials ⚠️
...ore/include/Acts/Material/VolumeMaterialMapper.hpp 0.00% 1 Missing ⚠️
Core/include/Acts/Navigation/DetectorNavigator.hpp 85.71% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2935      +/-   ##
==========================================
+ Coverage   48.87%   49.14%   +0.26%     
==========================================
  Files         495      496       +1     
  Lines       28904    28965      +61     
  Branches    13722    13730       +8     
==========================================
+ Hits        14128    14234     +106     
+ Misses       4883     4741     -142     
- Partials     9893     9990      +97     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@ssdetlab ssdetlab changed the title feat: Agnostic surface material mapping feat: Geometry-agnostic material mapping for both surfaces and volumes Feb 13, 2024
@ssdetlab ssdetlab marked this pull request as ready for review February 13, 2024 17:58
@paulgessinger paulgessinger added this to the next milestone Feb 15, 2024
@ssdetlab
Copy link
Contributor Author

Separated the Navigator part into the #2988

Closing for now, will come back later.

@ssdetlab ssdetlab closed this Feb 26, 2024
@paulgessinger paulgessinger modified the milestones: next, v33.0.0 Mar 6, 2024
@ssdetlab ssdetlab deleted the agnostic-surface-material-mapping branch October 11, 2024 12:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes Performance Component - Core Affects the Core module Component - Examples Affects the Examples module
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants