Skip to content

Conversation

@stognini
Copy link

@stognini stognini commented Jan 9, 2026

This PR moves the code from PDFastSimPAR_module to a new OpticalPropPDFastSimPAR tool, derived from IOpticalPropagation. This tool is used by the new OpticalPropagation_module, which will substitute PDFastSimPAR_module and will be the main mechanism for transporting optical photons through Celeritas or Opticks, which will be added as concrete implementations of the IOpticalPropagation tool interface.

@stognini stognini marked this pull request as draft January 9, 2026 20:11
@stognini
Copy link
Author

stognini commented Jan 9, 2026

There are multiple loose ends still in this draft PR still.

TODOS:

  • The fcl files all require an overhaul and testing.
  • The fast sim tool requires the construction of 2 RNG engines used by two other tools. These RNGs are initialized in the OpticalPropagation module constructor via OpticalPropPDFastSimPAR::InitializeTools, but I am not sure this is the best way to do it.
  • The make_tool invocation in the OpticalPropagation module constructor needs attention.
  • The code does not build yet:
[ 20%] Building CXX object larsim/larsim/PhotonPropagation/CMakeFiles/larsim_PhotonPropagation_OpticalPropagation_module.dir/OpticalPropagation_module.cc.o
[ 20%] Linking CXX shared module ../../slf7.x86_64.e26.prof/lib/liblarsim_PhotonPropagation_OpticalPropagation_module.so
/usr/bin/ld: Dwarf Error: found dwarf version '5', this reader only handles version 2, 3 and 4 information.
CMakeFiles/larsim_PhotonPropagation_OpticalPropagation_module.dir/OpticalPropagation_module.cc.o: In function `phot::OpticalPropagation::OpticalPropagation(art::ProducerTable<phot::OpticalPropPDFastSimPAR::Config, art::detail::ModuleConfig, void> const&)':
OpticalPropagation_module.cc:(.text+0x19d7): undefined reference to `typeinfo for phot::OpticalPropPDFastSimPAR'
OpticalPropagation_module.cc:(.text+0x1bf6): undefined reference to `phot::OpticalPropPDFastSimPAR::InitializeTools(CLHEP::HepRandomEngine&, CLHEP::HepRandomEngine&)'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant