Skip to content

Conversation

@tbwester
Copy link
Contributor

Description

This PR adds utility functions for WireMod to sbncode. Specifically, this adds:

  • Matching sim::SimEnergyDeposits to recob::Hits for creating hit truth information
  • Matching recob::Hits to ROI ranges
  • Calculating scale values for hit charges & widths according to truth information & pre-computed WireMod splines
  • Wire waveform modification via scaling by the ratio of Gaussian functions

We plan for ICARUS & SBND to both maintain separate experiment-specific modules that use this common utility. In particular,

  • SBND needs support for sim::IDE objects for its Spring production files, which do not have SimEnergyDeposits. SimEnergyDeposits will be kept in future productions, so support for sim::IDEs will be implemented at the sbndcode-level
  • ICARUS also modifies ChannelROI objects in addition to recob::Wires. This functionality will be added at the icaruscode level.

This is the V10-compatible veresion of PR#499 by @hausnerh.

  • Have you added a label? (bug/enhancement/physics etc.)
  • Have you assigned at least 1 reviewer?
  • Is this PR related to an open issue / project?
  • Does this PR affect CAF data format? If so, please assign a CAF maintainer as additional reviewer.
  • Does this PR require merging another PR in a different repository (such as sbnanobj/sbnobj etc.)? If so, please link it in the description.

@tbwester tbwester requested a review from hausnerh October 23, 2025 18:52
@tbwester tbwester self-assigned this Oct 23, 2025
@tbwester tbwester added the enhancement New feature or request label Oct 23, 2025
Copy link
Contributor

@hausnerh hausnerh left a comment

Choose a reason for hiding this comment

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

Overall this look good to me.
One commented out block that could be cleaned up, but nothing worth blocking the merge over

if (planeXInWindow(shifted_edep.X(), plane, *curTPCGeomPtr, offset + tickOffset))
target_roi_vec.emplace_back(wireReadout->PlaneWireToChannel(edep_wireID), std::round(planeXToTick(shifted_edep.X(), plane, *curTPCGeomPtr, offset + tickOffset)));
}
/*
Copy link
Contributor

Choose a reason for hiding this comment

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

If this block is unused we should probably remove it to keep the utility as clean as possible.
The loop above, (while, imo, having less legible syntax) does the trick just fine

@kjplows
Copy link
Contributor

kjplows commented Nov 3, 2025

trigger build LArSoft/lar*@LARSOFT_SUITE_v10_06_00_02 SBNSoftware/sbn*@release/SBN2025A

@FNALbuild
Copy link

❌ CI build for LArSoft Failed at phase build LArSoft on slf7 for c14:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build LArSoft phase logs

@FNALbuild
Copy link

❌ CI build for LArSoft Failed at phase build LArSoft on slf7 for e26:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build LArSoft phase logs

@kjplows
Copy link
Contributor

kjplows commented Nov 4, 2025

trigger build ci_ref=v10_06_02 LArSoft/larsoft@LARSOFT_SUITE_v10_06_00_02 LArSoft/larwirecell@LARSOFT_SUITE_v10_06_00_02 LArSoft/lar*@LARSOFT_SUITE_v10_06_00 SBNSoftware/sbn*@release/SBN2025A SBNSoftware/sbndcode@v10_06_00_05

@FNALbuild
Copy link

✔️ CI build for LArSoft Succeeded on slf7 for e26:prof -- details available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for SBND Failed at phase build SBND on slf7 for e26:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build SBND phase logs

parent CI build details are available through the CI dashboard

@FNALbuild
Copy link

✔️ CI build for LArSoft Succeeded on slf7 for c14:prof -- details available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for ICARUS Failed at phase build ICARUS on slf7 for c14:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build ICARUS phase logs

parent CI build details are available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for SBND Failed at phase build SBND on slf7 for c14:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build SBND phase logs

parent CI build details are available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for ICARUS Failed at phase ci_tests ICARUS on slf7 for e26:prof - ignored warnings for build -- details available through the CI dashboard

🚨 For more details about the failed phase, check the ci_tests ICARUS phase logs

parent CI build details are available through the CI dashboard

@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@SBNSoftware SBNSoftware deleted a comment from FNALbuild Nov 4, 2025
@kjplows
Copy link
Contributor

kjplows commented Nov 4, 2025

trigger build ci_ref=v10_06_02 LArSoft/larsoft@LARSOFT_SUITE_v10_06_00_02 LArSoft/larwirecell@LARSOFT_SUITE_v10_06_00_02 LArSoft/lar*@LARSOFT_SUITE_v10_06_00 SBNSoftware/sbndcode@v10_06_00_05 SBNSoftware/sbn*@release/SBN2025A

@FNALbuild
Copy link

✔️ CI build for LArSoft Succeeded on slf7 for e26:prof -- details available through the CI dashboard

@FNALbuild
Copy link

✔️ CI build for LArSoft Succeeded on slf7 for c14:prof -- details available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for SBND Failed at phase build SBND on slf7 for c14:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build SBND phase logs

parent CI build details are available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for ICARUS Failed at phase build ICARUS on slf7 for c14:prof -- details available through the CI dashboard

🚨 For more details about the failed phase, check the build ICARUS phase logs

parent CI build details are available through the CI dashboard

@FNALbuild
Copy link

⚠️ CI build for SBND Warning at phase ci_tests SBND on slf7 for e26:prof - ignored warnings for build -- details available through the CI dashboard

🚨 For more details about the warning phase, check the ci_tests SBND phase logs

parent CI build details are available through the CI dashboard

@FNALbuild
Copy link

❌ CI build for ICARUS Failed at phase ci_tests ICARUS on slf7 for e26:prof - ignored warnings for build -- details available through the CI dashboard

🚨 For more details about the failed phase, check the ci_tests ICARUS phase logs

parent CI build details are available through the CI dashboard

@kjplows kjplows moved this from Testing to To merge in SBN software development Nov 4, 2025
@kjplows kjplows merged commit e7cfb2c into release/SBN2025A Nov 5, 2025
@github-project-automation github-project-automation bot moved this from To merge to Done in SBN software development Nov 5, 2025
@kjplows kjplows moved this from Done to Recently done in SBN software development Nov 5, 2025
@tbwester tbwester deleted the feature/twester_wiremod_production branch November 5, 2025 21:32
@kjplows kjplows moved this from Recently done to Done in SBN software development Nov 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants