feat(dd4hep): add experimental DDG4 integration plugins and examples#266
Merged
feat(dd4hep): add experimental DDG4 integration plugins and examples#266
Conversation
Removed license header from OpticsEvent.cc
Removed license header and brief description from OpticsEvent.hh
Removed license header and comments related to SEvt initialization.
Removed license header and brief description from OpticsSteppingAction.hh
Implement raindrop detector geometry for DD4hep with nested volumes and optical surfaces.
Add CMake configuration for DD4hep example
…rectory When DD4hep is found, dd4hepplugins is built in-tree alongside the rest of eic-opticks. The plugins CMakeLists.txt now detects whether it is being built standalone (find_package(eic-opticks)) or in-tree (uses local target names) so it works in both modes.
U4SensorIdentifierDefault::getInstanceIdentity required the physical volume name to contain "PMT" to be recognized as a sensor. This is a JUNO-specific assumption that breaks any detector using non-PMT sensors (e.g. dRICH SiPMs). A volume with a G4VSensitiveDetector attached is a sensor regardless of its name.
Replace hardcoded spack hashes and absolute paths with portable alternatives: compact file resolved relative to the script location, ROOT/DD4hep python paths expected on PYTHONPATH from the activated spack environment, DD4hepINSTALL read from the environment.
Add examples/dd4hep as a subdirectory in the DD4hep conditional block so libRaindropGeo.so builds and installs alongside libddeicopticks.so. Fix examples/dd4hep/CMakeLists.txt which contained prose mixed with cmake commands and was not valid.
- Move sensitive volume from water drop to lead container (CtPMT) - Move border surface from water/air to air/lead with EFFICIENCY=1.0 - Remove all scintillation properties from OpWater - Add ABSLENGTH to OpLead (1mm) - CPU test: use Geant4OpticalTrackerAction + BoundaryInvokeSD=true - GPU test: add OpticsSteppingAction, fix gun isotrop
Adds DD4hep plugin layer (dd4hepplugins/) and a raindrop example geometry to
run optical photon simulation through the DD4hep framework, both on CPU
(Geant4) and GPU (simphony).