From 3abd95cd303784d70d2d7999e4b778668d4ee8b2 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 6 Nov 2025 11:02:26 -0600 Subject: [PATCH 01/36] adjustments to new paths --- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 3 +- sbndcode/BlipRecoSBND/CMakeLists.txt | 3 +- sbndcode/BlipRecoSBND/Utils/BlipUtils.h | 2 +- sbndcode/BlipRecoSBND/Utils/classes.h | 37 +----------------------- 4 files changed, 5 insertions(+), 40 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index e62631aa7..3a404125c 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -11,6 +11,7 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg lardataobj::RawData lardataobj::RecoBase lardata::RecoObjects + larreco::Calorimetry larpandora::LArPandoraInterface nusimdata::SimulationBase cetlib::cetlib @@ -34,7 +35,7 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg sbndcode_CRTUtils sbnobj::Common_CRT #sbndcode_CosmicIdUtils - sbndcode_BlipUtils + BlipUtils ) install_headers() diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index 13ccdac63..38734b91c 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -37,9 +37,8 @@ set( MODULE_LIBRARIES larcorealg::Geometry sbndcode_BlipRecoAlg ) -add_subdirectory(Utils) add_subdirectory(Alg) - +add_subdirectory(Utils) cet_build_plugin(BlipAna art::Module SOURCE BlipAna_module.cc LIBRARIES ${MODULE_LIBRARIES} ) cet_build_plugin(BlipRecoProducer art::Module SOURCE BlipRecoProducer_module.cc LIBRARIES ${MODULE_LIBRARIES} ) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h index bcd216b38..707f35516 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h @@ -34,7 +34,7 @@ #include #include -#include "sbndcode/BlipRecoSBND/Utils/DataTypes.h" +#include "sbnobj/SBND/Blip/DataTypes.h" #include "TH1D.h" diff --git a/sbndcode/BlipRecoSBND/Utils/classes.h b/sbndcode/BlipRecoSBND/Utils/classes.h index 403af300f..a3d8b2a2e 100644 --- a/sbndcode/BlipRecoSBND/Utils/classes.h +++ b/sbndcode/BlipRecoSBND/Utils/classes.h @@ -1,36 +1 @@ -// -// Build a dictionary. -// -// $Id: classes.h,v 1.8 2010/04/12 18:12:28 Exp $ -// $Author: $ -// $Date: 2010/04/12 18:12:28 $ -// -// Original author Rob Kutschke, modified by wes -// - -#include "canvas/Persistency/Common/Wrapper.h" - -// data-products -// lardataobj -//#include "lardata/Utilities/AssociationUtil.h" -#include "canvas/Persistency/Common/Assns.h" -#include "lardataobj/RecoBase/PFParticle.h" -#include "lardataobj/RecoBase/Hit.h" -#include "nusimdata/SimulationBase/MCTruth.h" -#include "sbndcode/BlipRecoSBND/Utils/DataTypes.h" -#include "lardataobj/RecoBase/SpacePoint.h" - -// -// Only include objects that we would like to be able to put into the event. -// Do not include the objects they contain internally. -// - -template class art::Assns; -template class art::Wrapper >; -template class std::vector; -template class art::Wrapper >; -template class std::map; -template class art::Assns; -template class art::Wrapper >; -template class art::Assns; -template class art::Wrapper >; +#include "sbnobj/SBND/Blip/classes.h" From 4d2df24d718a5284a625d5db5c003758021d9a6e Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 6 Nov 2025 12:38:13 -0600 Subject: [PATCH 02/36] Trying to get compile to solve --- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 2 +- sbndcode/BlipRecoSBND/Utils/BlipUtils.h | 2 +- sbndcode/BlipRecoSBND/Utils/CMakeLists.txt | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index 3a404125c..6e99a8365 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -35,7 +35,7 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg sbndcode_CRTUtils sbnobj::Common_CRT #sbndcode_CosmicIdUtils - BlipUtils + sbndcode_BlipUtils ) install_headers() diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h index 707f35516..b59fdb187 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h @@ -34,7 +34,7 @@ #include #include -#include "sbnobj/SBND/Blip/DataTypes.h" +#include "sbnobj/SBND/Blip/BlipDataTypes.h" #include "TH1D.h" diff --git a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt index da1dcdd20..b05f2f7f0 100644 --- a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt @@ -38,6 +38,7 @@ cet_make_library( ROOT::Gdml sbndcode_CRTUtils sbnobj::Common_CRT + sbndobj_BlipDataTypes #sbndcode_CosmicIdUtils ) From 619cc9db6bf087fe1182889c7856998ee2bd715d Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Mon, 10 Nov 2025 09:07:13 -0600 Subject: [PATCH 03/36] Assorted changes to things I don't actually use so the compiler would be happy --- sbndcode/CRT/CRTAna/CRTAnalysis_module.cc | 2 +- .../CRT/CRTEventDisplay/CRTEventDisplayAlg.cc | 2 +- .../CRT/CRTReco/CRTTrackProducer_module.cc | 19 ++++++++++++------- .../LightPropagationCorrectionAna_module.cc | 14 +++++++------- .../LightPropagationCorrection_module.cc | 12 ++++++------ 5 files changed, 27 insertions(+), 22 deletions(-) diff --git a/sbndcode/CRT/CRTAna/CRTAnalysis_module.cc b/sbndcode/CRT/CRTAna/CRTAnalysis_module.cc index 09c31d779..85d53ba1d 100644 --- a/sbndcode/CRT/CRTAna/CRTAnalysis_module.cc +++ b/sbndcode/CRT/CRTAna/CRTAnalysis_module.cc @@ -1748,7 +1748,7 @@ void sbnd::crt::CRTAnalysis::AnalyseTPCMatching(const art::Event &e, const art:: _tpc_tr_ts1[nActualTracks] = crttrack->Ts1(); _tpc_tr_score[nActualTracks] = trackMatch.TriggerConfidence(); - const std::set taggers = crttrack->Taggers(); + const std::vector taggers = crttrack->Taggers(); const geo::Point_t start = crttrack->Start(); const geo::Point_t end = crttrack->End(); diff --git a/sbndcode/CRT/CRTEventDisplay/CRTEventDisplayAlg.cc b/sbndcode/CRT/CRTEventDisplay/CRTEventDisplayAlg.cc index 967b363c5..598bee225 100644 --- a/sbndcode/CRT/CRTEventDisplay/CRTEventDisplayAlg.cc +++ b/sbndcode/CRT/CRTEventDisplay/CRTEventDisplayAlg.cc @@ -597,7 +597,7 @@ namespace sbnd::crt { if(trackTime < fMinTime || trackTime > fMaxTime) continue; - std::set taggers = track->Taggers(); + std::vector taggers = track->Taggers(); //used to be set. May cause issues bool none = fChoseTaggers; for(auto const& tagger : taggers) diff --git a/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc b/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc index e9d586531..7337fd915 100644 --- a/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc +++ b/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc @@ -35,7 +35,6 @@ #include - namespace geo { using Point2D_t = ROOT::Math::PositionVector2D, ROOT::Math::GlobalCoordinateSystemTag>; @@ -238,15 +237,18 @@ std::vector>> sbnd::crt::CRTTr const double pe = primarySpacePoint->PE() + secondarySpacePoint->PE() + tertiarySpacePoint->PE(); - const std::set used_taggers = {primaryCluster->Tagger(), secondaryCluster->Tagger(), tertiaryCluster->Tagger()}; + const std::vector used_taggers = {primaryCluster->Tagger(), secondaryCluster->Tagger(), tertiaryCluster->Tagger()}; geo::Point_t fitStart, fitMid, fitEnd; double gof; BestFitLine(primarySpacePoint->Pos(), secondarySpacePoint->Pos(), tertiarySpacePoint->Pos(), primaryCluster->Tagger(), secondaryCluster->Tagger(), tertiaryCluster->Tagger(), fitStart, fitMid, fitEnd, gof); - - const CRTTrack track({fitStart, fitMid, fitEnd}, t0, et0, t1, et1, pe, tof, used_taggers); + const double _t0 = t0; + const double _et0 = et0; + const double _t1 = t1; + const double _et1 = et1; + const CRTTrack track({fitStart, fitMid, fitEnd}, _t0, _et0, _t1, _et1, pe, tof, used_taggers); const std::set used_spacepoints = {i, ii, iii}; candidates.emplace_back(track, used_spacepoints); @@ -264,9 +266,12 @@ std::vector>> sbnd::crt::CRTTr const double pe = primarySpacePoint->PE() + secondarySpacePoint->PE(); - const std::set used_taggers = {primaryCluster->Tagger(), secondaryCluster->Tagger()}; - - const CRTTrack track(start, end, t0, et0, t1, et1, pe, tof, used_taggers); + const std::vector used_taggers = {primaryCluster->Tagger(), secondaryCluster->Tagger()}; + const double _t0 = t0; + const double _et0 = et0; + const double _t1 = t1; + const double _et1 = et1; + const CRTTrack track(start, end, _t0, _et0, _t1, _et1, pe, tof, used_taggers); const std::set used_spacepoints = {i, ii}; candidates.emplace_back(track, used_spacepoints); diff --git a/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc b/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc index f90b0db3b..9899d9edf 100644 --- a/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc +++ b/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc @@ -118,14 +118,14 @@ void LightPropagationCorrectionAna::analyze(art::Event const& e) std::cout << " Corrected flash time is " << correctedopflash->OpFlashT0 << std::endl; std::cout << " Associated with slice id " << slice_v[0]->ID() << std::endl; - std::cout << "Corrected flash time light only " << correctedopflash->UpstreamTime_lightonly << std::endl; - std::cout << "Corrected flash time tpc z corr " << correctedopflash->UpstreamTime_tpczcorr << std::endl; - std::cout << "Corrected flash time prop corr tpc z corr " << correctedopflash->UpstreamTime_propcorr_tpczcorr << std::endl; + //std::cout << "Corrected flash time light only " << correctedopflash->UpstreamTime_lightonly << std::endl; + //std::cout << "Corrected flash time tpc z corr " << correctedopflash->UpstreamTime_tpczcorr << std::endl; + //std::cout << "Corrected flash time prop corr tpc z corr " << correctedopflash->UpstreamTime_propcorr_tpczcorr << std::endl; fOpFlashT0 = correctedopflash->OpFlashT0; - fUpstreamTime_lightonly = correctedopflash->UpstreamTime_lightonly; - fUpstreamTime_tpczcorr = correctedopflash->UpstreamTime_tpczcorr; - fUpstreamTime_propcorr_tpczcorr = correctedopflash->UpstreamTime_propcorr_tpczcorr; + //fUpstreamTime_lightonly = correctedopflash->UpstreamTime_lightonly; + //fUpstreamTime_tpczcorr = correctedopflash->UpstreamTime_tpczcorr; + //fUpstreamTime_propcorr_tpczcorr = correctedopflash->UpstreamTime_propcorr_tpczcorr; fTree->Fill(); } } @@ -147,4 +147,4 @@ void LightPropagationCorrectionAna::beginJob() } -DEFINE_ART_MODULE(LightPropagationCorrectionAna) \ No newline at end of file +DEFINE_ART_MODULE(LightPropagationCorrectionAna) diff --git a/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc b/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc index 79e4849cb..25be6fd77 100644 --- a/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc +++ b/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc @@ -299,11 +299,11 @@ void sbnd::LightPropagationCorrection::produce(art::Event & e) newFlashTime = flasht0; sbn::CorrectedOpFlashTiming correctedOpFlashTiming; correctedOpFlashTiming.OpFlashT0 = originalFlashTime + fEventTriggerTime/1000 - fRWMTime/1000; - correctedOpFlashTiming.UpstreamTime_lightonly = originalFlashTime + fEventTriggerTime/1000 - fRWMTime/1000 - (Zcenter/fSpeedOfLight)/1000; - correctedOpFlashTiming.UpstreamTime_tpczcorr = originalFlashTime + fEventTriggerTime/1000 - fRWMTime/1000 - (fRecoVz/fSpeedOfLight)/1000; - correctedOpFlashTiming.UpstreamTime_propcorr_tpczcorr = newFlashTime + fEventTriggerTime/1000 - fRWMTime/1000 - (fRecoVz/fSpeedOfLight)/1000; - correctedOpFlashTiming.FMScore = _fFMScore; - correctedOpFlashTiming.SliceNuScore = _sliceMaxNuScore; + //correctedOpFlashTiming.UpstreamTime_lightonly = originalFlashTime + fEventTriggerTime/1000 - fRWMTime/1000 - (Zcenter/fSpeedOfLight)/1000; + //correctedOpFlashTiming.UpstreamTime_tpczcorr = originalFlashTime + fEventTriggerTime/1000 - fRWMTime/1000 - (fRecoVz/fSpeedOfLight)/1000; + //correctedOpFlashTiming.UpstreamTime_propcorr_tpczcorr = newFlashTime + fEventTriggerTime/1000 - fRWMTime/1000 - (fRecoVz/fSpeedOfLight)/1000; + //correctedOpFlashTiming.FMScore = _fFMScore; + //correctedOpFlashTiming.SliceNuScore = _sliceMaxNuScore; correctedOpFlashTimes->emplace_back(std::move(correctedOpFlashTiming)); } @@ -551,4 +551,4 @@ ::lightana::LiteOpHitArray_t sbnd::LightPropagationCorrection::GetAssociatedLite } return flash_hits_v; - } \ No newline at end of file + } From 8c71d0bce4aba4b0d8858db1122d21a48fa33cc8 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Mon, 10 Nov 2025 15:28:24 -0600 Subject: [PATCH 04/36] updated sbnobj --- sbndcode/BlipRecoSBND/BlipAna_module.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/BlipAna_module.cc b/sbndcode/BlipRecoSBND/BlipAna_module.cc index b9ca904e8..6dce5dd4a 100644 --- a/sbndcode/BlipRecoSBND/BlipAna_module.cc +++ b/sbndcode/BlipRecoSBND/BlipAna_module.cc @@ -75,7 +75,8 @@ const int kMaxTrks = 1000; const int kMaxBlips = 5000; const int kMaxG4 = 30000; const int kMaxEDeps = 10000; -const int kMaxTrkPts = 2000; +const int kMaxTrkPts = 2000; +const int kNplanes = blip::kNplanes; class BlipAna; From bb7fca38885c361a1b4dea88e9cca7e2d3557400 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 13 Nov 2025 16:28:09 -0600 Subject: [PATCH 05/36] Forgot to take out cmake lists --- sbndcode/BlipRecoSBND/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index 38734b91c..91c26f818 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -38,7 +38,7 @@ set( MODULE_LIBRARIES larcorealg::Geometry ) add_subdirectory(Alg) -add_subdirectory(Utils) +#add_subdirectory(Utils) cet_build_plugin(BlipAna art::Module SOURCE BlipAna_module.cc LIBRARIES ${MODULE_LIBRARIES} ) cet_build_plugin(BlipRecoProducer art::Module SOURCE BlipRecoProducer_module.cc LIBRARIES ${MODULE_LIBRARIES} ) From 04973a2074250c663ddb00ce3f5e13502d9c2a03 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 13 Nov 2025 16:47:23 -0600 Subject: [PATCH 06/36] CMAKEList updates --- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 3 ++- sbndcode/BlipRecoSBND/CMakeLists.txt | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index 6e99a8365..9ed0e28c7 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -35,7 +35,8 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg sbndcode_CRTUtils sbnobj::Common_CRT #sbndcode_CosmicIdUtils - sbndcode_BlipUtils + #sbndcode_BlipUtils + sbndobj_BlipDataTypes ) install_headers() diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index 91c26f818..d77b574a9 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -33,7 +33,8 @@ set( MODULE_LIBRARIES larcorealg::Geometry ROOT::Gdml sbndcode_RecoUtils sbndcode_OpDetSim - sbndcode_BlipUtils + #sbndcode_BlipUtils + sbndobj_BlipDataTypes sbndcode_BlipRecoAlg ) From a8816a28531877dcaea4a2a713612a26db4bb2f8 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 13 Nov 2025 17:14:13 -0600 Subject: [PATCH 07/36] Updating includes --- sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h index 4ba2e61ad..16f688bc0 100644 --- a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h +++ b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h @@ -52,7 +52,8 @@ #include "larevt/CalibrationDBI/Interface/ChannelStatusProvider.h" // Blip-specific utils -#include "sbndcode/BlipRecoSBND/Utils/BlipUtils.h" +//#include "sbndcode/BlipRecoSBND/Utils/BlipUtils.h" +#include "sbnobj/SBND/Blip/BlipDataTypes.h" // ROOT stuff #include "TH1D.h" From 7a1e130dd8d64c54c751bd00aca8e8b3925efc70 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 13 Nov 2025 17:22:34 -0600 Subject: [PATCH 08/36] Tried to separate the removal of classes.h but it doesn't actually work --- sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc | 2 +- sbndcode/BlipRecoSBND/CMakeLists.txt | 4 +- sbndcode/BlipRecoSBND/Utils/DataTypes.h | 174 -------------------- sbndcode/BlipRecoSBND/Utils/classes.h | 1 - sbndcode/BlipRecoSBND/Utils/classes_def.xml | 14 -- 5 files changed, 3 insertions(+), 192 deletions(-) delete mode 100644 sbndcode/BlipRecoSBND/Utils/DataTypes.h delete mode 100644 sbndcode/BlipRecoSBND/Utils/classes.h delete mode 100644 sbndcode/BlipRecoSBND/Utils/classes_def.xml diff --git a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc index 1abf5cc7f..a0e941748 100644 --- a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc +++ b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc @@ -12,7 +12,7 @@ namespace blip { auto const& detProp = art::ServiceHandle()->DataForJob(); auto const& clockData = art::ServiceHandle()->DataForJob(); - art::ServiceHandle wireReadoutGeom; + art::ServiceHandle wireReadoutGeom; kLArDensity = detProp.Density(); kNominalEfield = detProp.Efield(); kDriftVelocity = detProp.DriftVelocity(detProp.Efield(0),detProp.Temperature()); diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index d77b574a9..414aecabf 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -33,13 +33,13 @@ set( MODULE_LIBRARIES larcorealg::Geometry ROOT::Gdml sbndcode_RecoUtils sbndcode_OpDetSim - #sbndcode_BlipUtils + sbndcode_BlipUtils sbndobj_BlipDataTypes sbndcode_BlipRecoAlg ) add_subdirectory(Alg) -#add_subdirectory(Utils) +add_subdirectory(Utils) cet_build_plugin(BlipAna art::Module SOURCE BlipAna_module.cc LIBRARIES ${MODULE_LIBRARIES} ) cet_build_plugin(BlipRecoProducer art::Module SOURCE BlipRecoProducer_module.cc LIBRARIES ${MODULE_LIBRARIES} ) diff --git a/sbndcode/BlipRecoSBND/Utils/DataTypes.h b/sbndcode/BlipRecoSBND/Utils/DataTypes.h deleted file mode 100644 index 023eb99ce..000000000 --- a/sbndcode/BlipRecoSBND/Utils/DataTypes.h +++ /dev/null @@ -1,174 +0,0 @@ - -#include "lardataobj/RecoBase/Hit.h" -#include "nusimdata/SimulationBase/MCParticle.h" - -#include - -typedef std::vector vint_t; -typedef std::vector vbool_t; -typedef std::vector vfloat_t; -typedef std::set si_t; -typedef std::map mif_t; - -const int kNplanes = 3; -const int kNTPCs = 2; - -namespace blip { - - //################################################### - // Data structures - //################################################### - - struct ParticleInfo { - simb::MCParticle particle; - int trackId = -9; - int index = -9; - int isPrimary = -9; - int numTrajPts = -9; - double depEnergy = -9; - int depElectrons = -9; - double numElectrons = -9; - double mass = -9; - double E = -9; - double endE = -9; - double KE = -9; - double endKE = -9; - double P = -9; - double Px = -9; - double Py = -9; - double Pz = -9; - double pathLength = -9; - double time = -9; - double endtime = -9; - TVector3 startPoint; - TVector3 endPoint; - TVector3 position; - }; - - // True energy depositions - struct TrueBlip { - int ID = -9; // unique blip ID - int Cryostat = -9; // Cryostat ID - int TPC = -9; // TPC ID - float Time = -9; // time of particle interaction - int TimeTick = -9; // time tick - float DriftTime = -9; // drift time [us] - float Energy = 0; // energy dep [MeV] - int DepElectrons = 0; // deposited electrons - int NumElectrons = 0; // electrons reaching wires - int LeadG4ID = -9; // lead G4 track ID - int LeadG4Index = -9; // lead G4 track index - int LeadG4PDG = -9; // lead G4 PDG - float LeadCharge = -9; // lead G4 charge dep - TVector3 Position; // XYZ position - mif_t G4ChargeMap; - mif_t G4PDGMap; - }; - - struct HitInfo { - int hitid = -9; - int cryo = -9; - int tpc = -9; - int plane = -9; - int wire = -9; - int chan = -9; - float amp = -9; - float rms = -9; - int trkid = -9; - int shwrid = -9; - int clustid = -9; - int blipid = -9; - bool ismatch = false; - float integralADC = -999; // [ADCs] from integral - float sigmaintegral = -999; - float sumADC = -999; // [ADCs] from sum - float charge = -999; // [e-] - float peakTime = -999999; - float driftTime = -999999; // [tick] - float gof = -9; - int g4trkid = -9; - int g4pdg = -999; - int g4charge = -999; // [e-] - float g4frac = -99; - float g4energy = -999; // [MeV] - }; - - struct HitClust { - int ID = -9; - bool isValid = false; - int CenterChan = -999; - int CenterWire = -999; - bool isTruthMatched = false; - bool isMerged = false; - bool isMatched = false; - int DeadWireSep = 99; - int Cryostat = -9; - int TPC = -9; - int Plane = -9; - int NHits = -9; - int NWires = -9; - float ADCs = -999; - float Amplitude = -999; - float Charge = -999; - float SigmaCharge = -999; - float TimeTick = -999; - float Time = -999; - float StartHitTime = -999; - float EndHitTime = -999; - float StartTime = -999; - float EndTime = -999; - float Timespan = -999; - float RMS = -999; - int StartWire = -999; - int EndWire = -999; - int NPulseTrainHits = -9; - float GoodnessOfFit = -999; - int BlipID = -9; - int EdepID = -9; - si_t HitIDs; - si_t Wires; - si_t Chans; - si_t G4IDs; - - std::map IntersectLocations; - }; - - struct Blip { - - int ID = -9; // Blip ID / index - bool isValid = false; // Blip passes basic checks - int Cryostat = -9; // Cryostat - int TPC = -9; // TPC - int NPlanes = -9; // Num. matched planes - int MaxWireSpan = -9; // Maximum span of wires on any plane cluster - float TimeTick = -999; // Readout time [ticks] - float Time = -999; // Drift time [us] - float Charge = -9; // Charge on calorimetry plane - float Energy = -999; // Energy (const dE/dx, fcl-configurable) - float EnergyESTAR = -999; // Energy (ESTAR method from ArgoNeuT) - float EnergyPSTAR = -999; // Energy (PSTAR method similar with ESTAR method from ArgoNeuT) - float ProxTrkDist = -9; // Distance to cloest track - int ProxTrkID = -9; // ID of closest track - bool inCylinder = false; // Is it in a cone/cylinder region? - - TVector3 Position; // 3D position TVector3 - float SigmaYZ = -9.; // Uncertainty in YZ intersect [cm] - float dX = -9; // Equivalent length along drift direction [cm] - float dYZ = -9; // Approximate length scale in YZ space [cm] - - // Plane/cluster-specific information - blip::HitClust clusters[kNplanes]; - - // Truth-matched energy deposition - blip::TrueBlip truth; - - // Prototype getter functions - double X() { return Position.X(); } - double Y() { return Position.Y(); } - double Z() { return Position.Z(); } - - }; - -} - - diff --git a/sbndcode/BlipRecoSBND/Utils/classes.h b/sbndcode/BlipRecoSBND/Utils/classes.h deleted file mode 100644 index a3d8b2a2e..000000000 --- a/sbndcode/BlipRecoSBND/Utils/classes.h +++ /dev/null @@ -1 +0,0 @@ -#include "sbnobj/SBND/Blip/classes.h" diff --git a/sbndcode/BlipRecoSBND/Utils/classes_def.xml b/sbndcode/BlipRecoSBND/Utils/classes_def.xml deleted file mode 100644 index c5492251c..000000000 --- a/sbndcode/BlipRecoSBND/Utils/classes_def.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - From 70ee378181114da96aefc483a84e1d856230a8be Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 13 Nov 2025 18:35:52 -0600 Subject: [PATCH 09/36] compiler is so fussy --- sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc | 2 +- sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h | 4 ++-- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 2 +- sbndcode/BlipRecoSBND/Utils/classes.h | 0 sbndcode/BlipRecoSBND/Utils/classes_def.xml | 2 ++ 5 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 sbndcode/BlipRecoSBND/Utils/classes.h create mode 100644 sbndcode/BlipRecoSBND/Utils/classes_def.xml diff --git a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc index a0e941748..1abf5cc7f 100644 --- a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc +++ b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc @@ -12,7 +12,7 @@ namespace blip { auto const& detProp = art::ServiceHandle()->DataForJob(); auto const& clockData = art::ServiceHandle()->DataForJob(); - art::ServiceHandle wireReadoutGeom; + art::ServiceHandle wireReadoutGeom; kLArDensity = detProp.Density(); kNominalEfield = detProp.Efield(); kDriftVelocity = detProp.DriftVelocity(detProp.Efield(0),detProp.Temperature()); diff --git a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h index 16f688bc0..6e54c5beb 100644 --- a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h +++ b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h @@ -39,7 +39,7 @@ #include "larcorealg/Geometry/GeometryCore.h" #include "larreco/Calorimetry/CalorimetryAlg.h" #include "art/Framework/Principal/Event.h" - +#include "larcore/Geometry/WireReadout.h" // Microboone includes //#include "ubevt/Database/TPCEnergyCalib/TPCEnergyCalibService.h" @@ -52,7 +52,7 @@ #include "larevt/CalibrationDBI/Interface/ChannelStatusProvider.h" // Blip-specific utils -//#include "sbndcode/BlipRecoSBND/Utils/BlipUtils.h" +#include "sbndcode/BlipRecoSBND/Utils/BlipUtils.h" #include "sbnobj/SBND/Blip/BlipDataTypes.h" // ROOT stuff diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index 9ed0e28c7..7fab12836 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -35,7 +35,7 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg sbndcode_CRTUtils sbnobj::Common_CRT #sbndcode_CosmicIdUtils - #sbndcode_BlipUtils + sbndcode_BlipUtils sbndobj_BlipDataTypes ) diff --git a/sbndcode/BlipRecoSBND/Utils/classes.h b/sbndcode/BlipRecoSBND/Utils/classes.h new file mode 100644 index 000000000..e69de29bb diff --git a/sbndcode/BlipRecoSBND/Utils/classes_def.xml b/sbndcode/BlipRecoSBND/Utils/classes_def.xml new file mode 100644 index 000000000..2eff49dff --- /dev/null +++ b/sbndcode/BlipRecoSBND/Utils/classes_def.xml @@ -0,0 +1,2 @@ + + From 9a4101987a6d19a460a372da9acc3fbea4e89a75 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Fri, 14 Nov 2025 10:30:16 -0600 Subject: [PATCH 10/36] compile changes --- CMakeLists.txt | 2 +- ups/product_deps | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 033c8a6bc..95dbcc756 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,7 +15,7 @@ cmake_minimum_required(VERSION 3.20 FATAL_ERROR) -set(${PROJECT_NAME}_CMAKE_PROJECT_VERSION_STRING 10.11.01.01) +set(${PROJECT_NAME}_CMAKE_PROJECT_VERSION_STRING 10.12.02) find_package(cetmodules REQUIRED) project(sbndcode LANGUAGES CXX) diff --git a/ups/product_deps b/ups/product_deps index 151fd7276..efe9f99ee 100644 --- a/ups/product_deps +++ b/ups/product_deps @@ -253,7 +253,7 @@ wpdir product_dir wire-cell-cfg # #################################### product version qual flags -sbncode v10_11_01_01 - +sbncode v10_12_02 - cetmodules v3_24_01 - only_for_build sbnd_data v01_36_00 - sbndutil v10_06_01 - optional From b2c99ca3ce9b68b8239f8706f63248b033171230 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Fri, 14 Nov 2025 11:55:16 -0600 Subject: [PATCH 11/36] updated caf maker fcl --- sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl index d18bc079b..f93d6bacf 100644 --- a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl +++ b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl @@ -126,9 +126,9 @@ physics: # change tools in sbn to have 2D TPC sim/sp input physics.producers.pandoraShowerRazzle.SimChannelLabel: "simtpc2d:simpleSC" physics.producers.pandoraTrackDazzle.SimChannelLabel: "simtpc2d:simpleSC" -physics.producers.cnnid.WireLabel: "simtpc2d:gauss" +#physics.producers.cnnid.WireLabel: "simtpc2d:gauss" # uncomment below line for to use DNN ROI SP for CNNID scores -#physics.producers.cnnid.WireLabel: "simtpc2d:dnnsp" +physics.producers.cnnid.WireLabel: "simtpc2d:dnnsp" physics.producers.vertexCharge.CaloAlg: @local::sbnd_calorimetryalgmc physics.producers.vertexStub.CaloAlg: @local::sbnd_calorimetryalgmc @@ -136,6 +136,7 @@ physics.producers.vertexStub.CaloAlg: @local::sbnd_calorimetryalgmc physics.producers.cafmaker: @local::standard_cafmaker physics.producers.cafmaker.CosmicGenLabel: "corsika" physics.producers.cafmaker.SimChannelLabel: "simtpc2d:simpleSC" +physics.producers.cafmaker.BlipTag: "blipreco" # Blinding not needed for MC physics.producers.cafmaker.CreateBlindedCAF: false From 2736872a5c96003aa96ae165476401b1b0c7a7ff Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Fri, 14 Nov 2025 13:25:43 -0600 Subject: [PATCH 12/36] fcl changes to include blips --- .../standard/caf/cafmakerjob_sbnd_data_sce.fcl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_data_sce.fcl b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_data_sce.fcl index fb093fa55..e584b5a47 100644 --- a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_data_sce.fcl +++ b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_data_sce.fcl @@ -15,6 +15,7 @@ physics.producers.cafmaker.TPCPMTBarycenterMatchLabel: "tpcpmtbarycentermatching physics.producers.cafmaker.CVNLabel: "cvnSCE" physics.producers.cafmaker.CorrectedOpFlashLabel: "lightpropagationcorrectionSCE" physics.producers.cnnid.WireLabel: "sptpc2d:dnnsp" +physics.producers.cafmaker.BlipTag: "blipreco" physics.producers.cnnid.ClusterModuleLabel: "pandoraSCE" physics.producers.cnnid.PFParticleModuleLabel: "pandoraSCE" @@ -35,7 +36,7 @@ physics.producers.pandoraShowerCosmicDist.PandoraLabel: "pandoraSCE" physics.producers.pandoraShowerCosmicDist.ShowerLabel: "pandoraSCEShowerSBN" physics.producers.pandoraShowerRazzle.PFPLabel: "pandoraSCE" physics.producers.pandoraShowerRazzle.ShowerLabel: "pandoraSCEShowerSBN" - +physics.producers.pandoraShowerRazzle.SimChannelLabel: "sptpc2d:dnnsp" physics.producers.pandoraRazzled: @local::razzled_sbnd_sce physics.producers.pandoraTrackClosestApproach.TrackLabel: "pandoraSCETrack" @@ -53,6 +54,8 @@ physics.producers.pandoraTrackDazzle.PFPLabel: "pandoraSCE" physics.producers.pandoraTrackDazzle.TrackLabel: "pandoraSCETrack" physics.producers.pandoraTrackDazzle.CaloLabel: "pandoraSCECaloData" physics.producers.pandoraTrackDazzle.Chi2Label: "pandoraSCEPidData" +physics.producers.pandoraTrackDazzle.SimChannelLabel: "sptpc2d:dnnsp" + physics.producers.fmatchSCE: @local::transfer_flashmatch_sce_sbnd physics.producers.fmatchopSCE: @local::transfer_flashmatch_sce_sbnd From dbcec4b627cd88f52c543b8d8df1b8a18b63b576 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Fri, 14 Nov 2025 13:29:02 -0600 Subject: [PATCH 13/36] MC caf updates --- sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_sce.fcl | 1 + 1 file changed, 1 insertion(+) diff --git a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_sce.fcl b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_sce.fcl index 43493065b..87259491f 100644 --- a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_sce.fcl +++ b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd_sce.fcl @@ -15,6 +15,7 @@ physics.producers.cafmaker.CRTTrackMatchLabel: "pandoraSCETrackCRTTrack" physics.producers.cafmaker.OpT0Label: "opt0finderSCE" physics.producers.cafmaker.TPCPMTBarycenterMatchLabel: "tpcpmtbarycentermatchingSCE" physics.producers.cafmaker.CVNLabel: "cvnSCE" +physics.producers.cafmaker.BlipTag: "blipreco" physics.producers.cnnid.ClusterModuleLabel: "pandoraSCE" physics.producers.cnnid.PFParticleModuleLabel: "pandoraSCE" From f63553b0ba7e0bf649b29b5a1e7a67e79be57c4f Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Wed, 19 Nov 2025 10:08:18 -0600 Subject: [PATCH 14/36] Fixing changes I didn't intend to make --- sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc | 9 ++++----- .../LightPropagationCorrectionAna_module.cc | 2 +- .../LightPropagationCorrection_module.cc | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc b/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc index 9f610fb6b..912923274 100644 --- a/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc +++ b/sbndcode/CRT/CRTReco/CRTTrackProducer_module.cc @@ -35,6 +35,7 @@ #include + namespace geo { using Point2D_t = ROOT::Math::PositionVector2D, ROOT::Math::GlobalCoordinateSystemTag>; @@ -244,11 +245,8 @@ std::vector>> sbnd::crt::CRTTr BestFitLine(primarySpacePoint->Pos(), secondarySpacePoint->Pos(), tertiarySpacePoint->Pos(), primaryCluster->Tagger(), secondaryCluster->Tagger(), tertiaryCluster->Tagger(), fitStart, fitMid, fitEnd, gof); - const double _t0 = t0; - const double _et0 = et0; - const double _t1 = t1; - const double _et1 = et1; - const CRTTrack track({fitStart, fitMid, fitEnd}, _t0, _et0, _t1, _et1, pe, tof, used_taggers); + + const CRTTrack track({fitStart, fitMid, fitEnd}, t0, et0, t1, et1, pe, tof, used_taggers); const std::set used_spacepoints = {i, ii, iii}; candidates.emplace_back(track, used_spacepoints); @@ -267,6 +265,7 @@ std::vector>> sbnd::crt::CRTTr const double pe = primarySpacePoint->PE() + secondarySpacePoint->PE(); const std::vector used_taggers = {primaryCluster->Tagger(), secondaryCluster->Tagger()}; + const CRTTrack track(start, end, t0, et0, t1, et1, pe, tof, used_taggers); const std::set used_spacepoints = {i, ii}; diff --git a/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc b/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc index a46649f8a..9b09202a2 100644 --- a/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc +++ b/sbndcode/LightPropagationCorrection/LightPropagationCorrectionAna_module.cc @@ -147,4 +147,4 @@ void LightPropagationCorrectionAna::beginJob() } -DEFINE_ART_MODULE(LightPropagationCorrectionAna) +DEFINE_ART_MODULE(LightPropagationCorrectionAna) \ No newline at end of file diff --git a/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc b/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc index 1e74b4b1c..eb75360a4 100644 --- a/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc +++ b/sbndcode/LightPropagationCorrection/LightPropagationCorrection_module.cc @@ -542,4 +542,4 @@ ::lightana::LiteOpHitArray_t sbnd::LightPropagationCorrection::GetAssociatedLite } return flash_hits_v; - } + } \ No newline at end of file From 1fbb8281dc77bb7896a9f3991d3b9edddb1f4ad0 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 20 Nov 2025 09:55:01 -0600 Subject: [PATCH 15/36] Fixed indentation --- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index 7fab12836..31a572935 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -11,7 +11,7 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg lardataobj::RawData lardataobj::RecoBase lardata::RecoObjects - larreco::Calorimetry + larreco::Calorimetry larpandora::LArPandoraInterface nusimdata::SimulationBase cetlib::cetlib @@ -35,8 +35,8 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg sbndcode_CRTUtils sbnobj::Common_CRT #sbndcode_CosmicIdUtils - sbndcode_BlipUtils - sbndobj_BlipDataTypes + sbndcode_BlipUtils + sbndobj_BlipDataTypes ) install_headers() From 1031a7812ffe9f42a7214858eed705543b049338 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Wed, 26 Nov 2025 13:38:01 -0600 Subject: [PATCH 16/36] Had a mislabel on the fcl param --- .../standard/reco/config/workflow_reco1.fcl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl b/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl index d9b166996..f7acf84d0 100755 --- a/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl +++ b/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl @@ -83,9 +83,9 @@ sbnd_reco1_producers.gaushit.CalDataModuleLabel: sbnd_reco1_producers.fasthit.DigitModuleLabel: "simtpc2d:daq" sbnd_reco1_producers.gaushitTruthMatch.HitParticleAssociations.HitModuleLabel: "gaushit" sbnd_reco1_producers.specialblipgaushit.CalDataModuleLabel: "simtpc2d:gauss" -sbnd_reco1_producers.specialblipgaushit.MinHitHeightPlane0: 8 -sbnd_reco1_producers.specialblipgaushit.MinHitHeightPlane1: 15 -sbnd_reco1_producers.specialblipgaushit.MinHitHeightPlane2: 5 +sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane0.MinHitHeight: 8 +sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane1.MinHitHeight: 15 +sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane2.MinHitHeight: 5 sbnd_reco1_producers.blipgaushitTruthMatch.HitParticleAssociations.HitModuleLabel: "specialblipgaushit" sbnd_reco1_filters: { #filter events based on the number of reconstructed hits (avoids overly messy data events) From 382de1d6bcb4a0dcde6d7a40411c8622bbcca990 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 29 Nov 2025 11:36:20 -0600 Subject: [PATCH 17/36] fixed library name --- sbndcode/BlipRecoSBND/Utils/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt index b05f2f7f0..e46d26faf 100644 --- a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt @@ -42,7 +42,7 @@ cet_make_library( #sbndcode_CosmicIdUtils ) -art_dictionary(DICTIONARY_LIBRARIES sbndcode_BlipUtils) +art_dictionary(DICTIONARY_LIBRARIES sbnobj::SBND_Blip) install_headers() install_source() install_fhicl() From 180851404edfa44ea397522db2dd7e9ed4ef767a Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 12:49:37 -0600 Subject: [PATCH 18/36] TVector3 Replacement updates --- sbndcode/BlipRecoSBND/Utils/BlipUtils.cc | 14 ++++++++++---- sbndcode/BlipRecoSBND/Utils/BlipUtils.h | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc index e1b8b1b48..2ca7840a0 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc @@ -55,7 +55,9 @@ namespace BlipUtils { pinfo.pathLength = PathLength( part, pinfo.startPoint, pinfo.endPoint); // Central position of trajectory - pinfo.position = 0.5*(pinfo.startPoint+pinfo.endPoint); + pinfo.position.SetXYZ(0.5*(pinfo.startPoint.X()+pinfo.endPoint.X()), + 0.5*(pinfo.startPoint.Y()+pinfo.endPoint.Y()), + 0.5*(pinfo.startPoint.Z()+pinfo.endPoint.Z()) ); // Energy/charge deposited by this particle, found using SimEnergyDeposits pinfo.depEnergy = 0; @@ -155,7 +157,9 @@ namespace BlipUtils { float totE = tblip.Energy + pinfo.depEnergy; float w1 = tblip.Energy/totE; float w2 = pinfo.depEnergy/totE; - tblip.Position = w1*tblip.Position + w2*pinfo.position; + tblip.Position.SetXYZ( w1*tblip.Position.X() + w2*pinfo.position.X(), + w1*tblip.Position.Y() + w2*pinfo.position.Y(), + w1*tblip.Position.Z() + w2*pinfo.position.Z()); tblip.Time = w1*tblip.Time + w2*pinfo.time; tblip.LeadCharge = pinfo.depElectrons; // ... if the particle isn't a match, show's over @@ -196,7 +200,7 @@ namespace BlipUtils { // check that the times are similar (we don't want to merge // together a blip that happened much later but in the same spot) if( fabs(blip_i.Time - blip_j.Time) > 5 ) continue; - float d = (blip_i.Position-blip_j.Position).Mag(); + float d = TMath::Sqrt((blip_i.Position-blip_j.Position).Mag2()); if( d < dmin ) { isGrouped.at(j) = true; //float totE = blip_i.Energy + blip_j.Energy; @@ -204,7 +208,9 @@ namespace BlipUtils { float w1 = blip_i.DepElectrons/totQ; float w2 = blip_j.DepElectrons/totQ; blip_i.Energy += blip_j.Energy; - blip_i.Position = w1*blip_i.Position + w2*blip_j.Position; + blip_i.Position.SetXYZ( w1*blip_i.Position.X() + w2*blip_j.Position.X(), + w1*blip_i.Position.Y() + w2*blip_j.Position.Y(), + w1*blip_i.Position.Z() + w2*blip_j.Position.Z()) blip_i.DriftTime = w1*blip_i.DriftTime+ w2*blip_j.DriftTime; blip_i.Time = w1*blip_i.Time + w2*blip_j.Time; blip_i.DepElectrons += blip_j.DepElectrons; diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h index 4f7cc0d0d..6da1d4963 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h @@ -76,7 +76,7 @@ namespace BlipUtils { //void HitTruth(art::Ptr const&, int&, float&, float&, float&); //si_t HitTruthIds( art::Ptr const&); //bool G4IdToMCTruth( int const, art::Ptr&); - double PathLength(const simb::MCParticle&, TVector3&, TVector3&); + double PathLength(const simb::MCParticle&, geo::Point_t&, geo::Point_t&); double PathLength(const simb::MCParticle&); bool IsAncestorOf(int, int, bool); double DistToBoundary(const recob::Track::Point_t&); From d137623af87540d884cc3d7f9908e7b5188b3944 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:02:03 -0600 Subject: [PATCH 19/36] more TVector 3 conversion --- sbndcode/BlipRecoSBND/Utils/BlipUtils.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc index 2ca7840a0..fb44a567e 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc @@ -210,7 +210,7 @@ namespace BlipUtils { blip_i.Energy += blip_j.Energy; blip_i.Position.SetXYZ( w1*blip_i.Position.X() + w2*blip_j.Position.X(), w1*blip_i.Position.Y() + w2*blip_j.Position.Y(), - w1*blip_i.Position.Z() + w2*blip_j.Position.Z()) + w1*blip_i.Position.Z() + w2*blip_j.Position.Z()); blip_i.DriftTime = w1*blip_i.DriftTime+ w2*blip_j.DriftTime; blip_i.Time = w1*blip_i.Time + w2*blip_j.Time; blip_i.DepElectrons += blip_j.DepElectrons; @@ -425,12 +425,16 @@ namespace BlipUtils { // YZ-plane, as well as the mean difference between intersection points. newblip.Position.SetXYZ(0,0,0); if( wirex.size() == 1 ) { - newblip.Position= wirex[0]; + newblip.Position.SetXYZ(wirex[0]); } else { newblip.SigmaYZ = 0; double fact = 1./wirex.size(); - for(auto& v : wirex ) newblip.Position += v * fact; - for(auto& v : wirex ) newblip.SigmaYZ += (v-newblip.Position).Mag() * fact; + for(auto& v : wirex ) newblip.Position.SetXYZ( newblip.Position.X() + v.X() * fact, + newblip.Position.Y() + v.Y() * fact, + newblip.Position.Z() + v.Z() * fact); + for(auto& v : wirex ) newblip.SigmaYZ += TMath::Sqrt( TMath::Pow(v.X()-newblip.Position.X(), 2) + + TMath::Pow(v.Y()-newblip.Position.Y(), 2) + + TMath::Pow(v.Z()-newblip.Position.Z(), 2)) * fact; // Ensure that difference between intersection points is // consistent with the maximal wire extent if( newblip.SigmaYZ > std::max(1.,0.5*newblip.dYZ) ) return newblip; From 184ba702a244e2728c4633d1abbcf7374347a720 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:14:22 -0600 Subject: [PATCH 20/36] Update Power calls --- sbndcode/BlipRecoSBND/Utils/BlipUtils.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc index fb44a567e..8039bbf3c 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc @@ -432,9 +432,9 @@ namespace BlipUtils { for(auto& v : wirex ) newblip.Position.SetXYZ( newblip.Position.X() + v.X() * fact, newblip.Position.Y() + v.Y() * fact, newblip.Position.Z() + v.Z() * fact); - for(auto& v : wirex ) newblip.SigmaYZ += TMath::Sqrt( TMath::Pow(v.X()-newblip.Position.X(), 2) + - TMath::Pow(v.Y()-newblip.Position.Y(), 2) + - TMath::Pow(v.Z()-newblip.Position.Z(), 2)) * fact; + for(auto& v : wirex ) newblip.SigmaYZ += TMath::Sqrt( pow(v.X()-newblip.Position.X(), 2) + + pow(v.Y()-newblip.Position.Y(), 2) + + pow(v.Z()-newblip.Position.Z(), 2)) * fact; // Ensure that difference between intersection points is // consistent with the maximal wire extent if( newblip.SigmaYZ > std::max(1.,0.5*newblip.dYZ) ) return newblip; From ae53aa56c1dcce99f35131d7de3a06578ad4a137 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:27:14 -0600 Subject: [PATCH 21/36] Not sure this should function --- sbndcode/BlipRecoSBND/Utils/BlipUtils.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc index 8039bbf3c..e98e0e95c 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc @@ -425,7 +425,7 @@ namespace BlipUtils { // YZ-plane, as well as the mean difference between intersection points. newblip.Position.SetXYZ(0,0,0); if( wirex.size() == 1 ) { - newblip.Position.SetXYZ(wirex[0]); + newblip.Position = wirex[0]; } else { newblip.SigmaYZ = 0; double fact = 1./wirex.size(); From 785cf59ae20dbb32813971a85e6e06e3f364d0b6 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:32:18 -0600 Subject: [PATCH 22/36] One more cmake update --- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index 31a572935..6c10f3c94 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -36,7 +36,7 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg sbnobj::Common_CRT #sbndcode_CosmicIdUtils sbndcode_BlipUtils - sbndobj_BlipDataTypes + sbnobj::SBND_Blip ) install_headers() From a23b8fe876c8a0fe17e8980fc91589d357bc105f Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:37:19 -0600 Subject: [PATCH 23/36] How did I miss so many --- sbndcode/BlipRecoSBND/CMakeLists.txt | 2 +- sbndcode/BlipRecoSBND/Utils/CMakeLists.txt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index 414aecabf..2f096b2a7 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -34,7 +34,7 @@ set( MODULE_LIBRARIES larcorealg::Geometry sbndcode_RecoUtils sbndcode_OpDetSim sbndcode_BlipUtils - sbndobj_BlipDataTypes + sbncode::SBND_Blip sbndcode_BlipRecoAlg ) diff --git a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt index e46d26faf..8d577cf1e 100644 --- a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt @@ -38,11 +38,11 @@ cet_make_library( ROOT::Gdml sbndcode_CRTUtils sbnobj::Common_CRT - sbndobj_BlipDataTypes + sbnobj::SBND_Blip #sbndcode_CosmicIdUtils ) -art_dictionary(DICTIONARY_LIBRARIES sbnobj::SBND_Blip) +art_dictionary(DICTIONARY_LIBRARIES sbndcode_BlipUtils) install_headers() install_source() install_fhicl() From 311ee029b402e399fa4ff64bb516727b6cf162cf Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:38:54 -0600 Subject: [PATCH 24/36] How did I miss so many --- sbndcode/BlipRecoSBND/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index 2f096b2a7..5952c26bd 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -34,7 +34,7 @@ set( MODULE_LIBRARIES larcorealg::Geometry sbndcode_RecoUtils sbndcode_OpDetSim sbndcode_BlipUtils - sbncode::SBND_Blip + sbnobj::SBND_Blip sbndcode_BlipRecoAlg ) From a36a2b58e105452047f1854899e0e57e84a1faf9 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:43:43 -0600 Subject: [PATCH 25/36] Weird these cmake issues appeared now and not earlier --- sbndcode/BlipRecoSBND/Alg/CMakeLists.txt | 1 - sbndcode/BlipRecoSBND/CMakeLists.txt | 2 +- sbndcode/BlipRecoSBND/Utils/CMakeLists.txt | 2 -- 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt index 6c10f3c94..1be1ed923 100644 --- a/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Alg/CMakeLists.txt @@ -34,7 +34,6 @@ art_make_library(LIBRARY_NAME sbndcode_BlipRecoAlg ROOT::Gdml sbndcode_CRTUtils sbnobj::Common_CRT - #sbndcode_CosmicIdUtils sbndcode_BlipUtils sbnobj::SBND_Blip ) diff --git a/sbndcode/BlipRecoSBND/CMakeLists.txt b/sbndcode/BlipRecoSBND/CMakeLists.txt index 5952c26bd..16d8dece1 100644 --- a/sbndcode/BlipRecoSBND/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/CMakeLists.txt @@ -8,7 +8,7 @@ set( MODULE_LIBRARIES larcorealg::Geometry larevt::Filters lardataobj::RawData lardataobj::RecoBase - larreco::Calorimetry + larreco::Calorimetry larreco::RecoAlg lardata::RecoObjects larpandora::LArPandoraInterface diff --git a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt index 8d577cf1e..f54a2d605 100644 --- a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt @@ -4,7 +4,6 @@ cet_make_library( LIBRARY_NAME sbndcode_BlipUtils LIBRARIES - PUBLIC larcorealg::Geometry larcore::Geometry_Geometry_service larsim::Simulation @@ -39,7 +38,6 @@ cet_make_library( sbndcode_CRTUtils sbnobj::Common_CRT sbnobj::SBND_Blip - #sbndcode_CosmicIdUtils ) art_dictionary(DICTIONARY_LIBRARIES sbndcode_BlipUtils) From e7951b5e31efd4e28a6ac42b47ee0cc845612fa6 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:49:55 -0600 Subject: [PATCH 26/36] Adding includes that are probably unneeded --- sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h | 1 + sbndcode/BlipRecoSBND/BlipAna_module.cc | 1 + sbndcode/BlipRecoSBND/BlipRecoProducer_module.cc | 1 + sbndcode/BlipRecoSBND/Utils/BlipUtils.h | 1 + 4 files changed, 4 insertions(+) diff --git a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h index c80e9166d..1851ae4b9 100644 --- a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h +++ b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h @@ -41,6 +41,7 @@ #include "larreco/Calorimetry/CalorimetryAlg.h" #include "art/Framework/Principal/Event.h" #include "larcore/Geometry/WireReadout.h" +#include "larcoreobj/SimpleTypesAndConstants/geo_vectors.h" // Microboone includes //#include "ubevt/Database/TPCEnergyCalib/TPCEnergyCalibService.h" diff --git a/sbndcode/BlipRecoSBND/BlipAna_module.cc b/sbndcode/BlipRecoSBND/BlipAna_module.cc index 6dce5dd4a..a8590b131 100644 --- a/sbndcode/BlipRecoSBND/BlipAna_module.cc +++ b/sbndcode/BlipRecoSBND/BlipAna_module.cc @@ -32,6 +32,7 @@ #include "lardataobj/AnalysisBase/Calorimetry.h" #include "larevt/SpaceChargeServices/SpaceChargeService.h" #include "cetlib/search_path.h" +#include "larcoreobj/SimpleTypesAndConstants/geo_vectors.h" // SBND-specific includes #include "sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.h" diff --git a/sbndcode/BlipRecoSBND/BlipRecoProducer_module.cc b/sbndcode/BlipRecoSBND/BlipRecoProducer_module.cc index 962367af5..7fde766e8 100644 --- a/sbndcode/BlipRecoSBND/BlipRecoProducer_module.cc +++ b/sbndcode/BlipRecoSBND/BlipRecoProducer_module.cc @@ -33,6 +33,7 @@ #include "lardataobj/RawData/RawDigit.h" #include "lardataobj/RawData/raw.h" #include "lardata/Utilities/AssociationUtil.h" +#include "larcoreobj/SimpleTypesAndConstants/geo_vectors.h" // C++ includes #include diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h index 6da1d4963..bff152637 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h @@ -27,6 +27,7 @@ #include "larcore/CoreUtils/ServiceUtil.h" #include "larcore/Geometry/Geometry.h" #include "larcore/Geometry/WireReadout.h" +#include "larcoreobj/SimpleTypesAndConstants/geo_vectors.h" //#include "larcorealg/Geometry/GeometryCore.h" //#include "larcorealg/Geometry/WireReadoutGeom.h" From 1db5fd57bbaea4982da71ea19cd62dbbbad16e5b Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:51:50 -0600 Subject: [PATCH 27/36] Oh I just updated one spot --- sbndcode/BlipRecoSBND/Utils/BlipUtils.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc index e98e0e95c..c2fe570ca 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc @@ -623,7 +623,7 @@ namespace BlipUtils { //============================================================================= // Length of particle trajectory - double PathLength(const simb::MCParticle& part, TVector3& start, TVector3& end) + double PathLength(const simb::MCParticle& part, geo::Point_t& start, geo::Point_t& end) { int n = part.NumberTrajectoryPoints(); if( n <= 1 ) return 0.; From 813ff32fcd3c7828bbed54cf3166e5d8df983f7d Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:55:35 -0600 Subject: [PATCH 28/36] Oh I just updated one spot --- sbndcode/BlipRecoSBND/Utils/BlipUtils.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc index c2fe570ca..d0afdea48 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.cc @@ -643,7 +643,7 @@ namespace BlipUtils { return L; } double PathLength(const simb::MCParticle& part){ - TVector3 a,b; + geo::Point_t a,b; return PathLength(part,a,b); } From d07534825ea6bb74d5c1f08896d5720ba3fa55e2 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Sat, 29 Nov 2025 13:58:17 -0600 Subject: [PATCH 29/36] I hope I don't just replace all these tvector 3 --- sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc index eb9a3b810..d013f778c 100644 --- a/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc +++ b/sbndcode/BlipRecoSBND/Alg/BlipRecoAlg.cc @@ -1072,7 +1072,7 @@ namespace blip { TVector3 p2(b.X(), b.Y(), b.Z() ); // TO-DO: if this track starts or ends at a TPC boundary, // we should extend p1 or p2 to outside the AV to avoid blind spots - TVector3 bp = newBlip.Position; + TVector3 bp(newBlip.Position.X(), newBlip.Position.Y(), newBlip.Position.Z()); float d = BlipUtils::DistToLine(p1,p2,bp); if( d > 0 ) { // update closest trkdist From cbcb05676f8e4283d6d27b2f5fc8112bc239c366 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 4 Dec 2025 15:23:07 -0600 Subject: [PATCH 30/36] updated middle induction plane hit amplitude to match Maria's work. Fixed a mislabel in the fcl --- .../JobConfigurations/standard/reco/config/workflow_reco1.fcl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl b/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl index f7acf84d0..22f0906c9 100755 --- a/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl +++ b/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl @@ -84,9 +84,9 @@ sbnd_reco1_producers.fasthit.DigitModuleLabel: sbnd_reco1_producers.gaushitTruthMatch.HitParticleAssociations.HitModuleLabel: "gaushit" sbnd_reco1_producers.specialblipgaushit.CalDataModuleLabel: "simtpc2d:gauss" sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane0.MinHitHeight: 8 -sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane1.MinHitHeight: 15 +sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane1.MinHitHeight: 20 sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane2.MinHitHeight: 5 -sbnd_reco1_producers.blipgaushitTruthMatch.HitParticleAssociations.HitModuleLabel: "specialblipgaushit" +sbnd_reco1_producers.blipgaushitTruthMatch.HitParticleAssociations.HitModuleLabelVec: "specialblipgaushit" sbnd_reco1_filters: { #filter events based on the number of reconstructed hits (avoids overly messy data events) numberofhitsfilter: @local::sbnd_numberofhitsfilter From d7ca349c875792e9d3e4c97866a15a53d60349b9 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 4 Dec 2025 15:40:45 -0600 Subject: [PATCH 31/36] Added two reco2 fcl that let us move back to single hitfinding streams. This is useful if we were to rerurn older sbndcode reco1 output over a new reco2 version. Thats a really limited usecase but it could come up --- .../standard/reco/reco2_data_singlerecobhit.fcl | 4 ++++ .../standard/reco/reco2_mc_singlerecobhit.fcl | 4 ++++ 2 files changed, 8 insertions(+) create mode 100644 sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl create mode 100644 sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl diff --git a/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl b/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl new file mode 100644 index 000000000..c7a610ad6 --- /dev/null +++ b/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl @@ -0,0 +1,4 @@ +#include "reco2_data.fcl" +physics.producers.blipPandoraCopy.HitFinderModuleLabel: "gaushit" +physics.producers.blipreco.HitProducer: "gaushit" +physics.analyzers.blipana.HitProducer: "gaushit" \ No newline at end of file diff --git a/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl b/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl new file mode 100644 index 000000000..3b2f5fbf4 --- /dev/null +++ b/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl @@ -0,0 +1,4 @@ +#include "standard_reco2_sbnd.fcl" +physics.producers.blipPandoraCopy.HitFinderModuleLabel: "gaushit" +physics.producers.blipreco.HitProducer: "gaushit" +physics.analyzers.blipana.HitProducer: "gaushit" \ No newline at end of file From 794d240608a80ca42f6406bea7b812a14de4b850 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 4 Dec 2025 15:46:55 -0600 Subject: [PATCH 32/36] Being extra careful --- .../JobConfigurations/standard/reco/config/workflow_reco1.fcl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl b/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl index 22f0906c9..58e23ab1d 100755 --- a/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl +++ b/sbndcode/JobConfigurations/standard/reco/config/workflow_reco1.fcl @@ -86,7 +86,8 @@ sbnd_reco1_producers.specialblipgaushit.CalDataModuleLabel: "simtpc2d:gauss" sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane0.MinHitHeight: 8 sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane1.MinHitHeight: 20 sbnd_reco1_producers.specialblipgaushit.HitFinderToolVec.CandidateHitsPlane2.MinHitHeight: 5 -sbnd_reco1_producers.blipgaushitTruthMatch.HitParticleAssociations.HitModuleLabelVec: "specialblipgaushit" +sbnd_reco1_producers.blipgaushitTruthMatch.HitParticleAssociations.HitModuleLabel: "specialblipgaushit" +sbnd_reco1_producers.blipgaushitTruthMatch.HitParticleAssociations.HitModuleLabelVec: ["specialblipgaushit"] sbnd_reco1_filters: { #filter events based on the number of reconstructed hits (avoids overly messy data events) numberofhitsfilter: @local::sbnd_numberofhitsfilter From f886d99114f5b1e851f3ed939a8048f930fe0aec Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Thu, 4 Dec 2025 15:56:58 -0600 Subject: [PATCH 33/36] fixing relabel in the new fcl --- .../standard/reco/reco2_data_singlerecobhit.fcl | 4 ++-- .../standard/reco/reco2_mc_singlerecobhit.fcl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl b/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl index c7a610ad6..a719e5df4 100644 --- a/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl +++ b/sbndcode/JobConfigurations/standard/reco/reco2_data_singlerecobhit.fcl @@ -1,4 +1,4 @@ #include "reco2_data.fcl" physics.producers.blipPandoraCopy.HitFinderModuleLabel: "gaushit" -physics.producers.blipreco.HitProducer: "gaushit" -physics.analyzers.blipana.HitProducer: "gaushit" \ No newline at end of file +physics.producers.blipreco.BlipAlg.HitProducer: "gaushit" +physics.analyzers.blipana.BlipAlg.HitProducer: "gaushit" \ No newline at end of file diff --git a/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl b/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl index 3b2f5fbf4..ed38ff261 100644 --- a/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl +++ b/sbndcode/JobConfigurations/standard/reco/reco2_mc_singlerecobhit.fcl @@ -1,4 +1,4 @@ #include "standard_reco2_sbnd.fcl" physics.producers.blipPandoraCopy.HitFinderModuleLabel: "gaushit" -physics.producers.blipreco.HitProducer: "gaushit" -physics.analyzers.blipana.HitProducer: "gaushit" \ No newline at end of file +physics.producers.blipreco.BlipAlg.HitProducer: "gaushit" +physics.analyzers.blipana.BlipAlg.HitProducer: "gaushit" From 3a30ea5fa747c842f879c029ad4c39c9301e93e8 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Wed, 10 Dec 2025 08:48:40 -0600 Subject: [PATCH 34/36] addressing Henry comments --- sbndcode/BlipRecoSBND/BlipAna_module.cc | 2 +- sbndcode/BlipRecoSBND/Utils/BlipUtils.h | 2 -- sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl | 1 - 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/sbndcode/BlipRecoSBND/BlipAna_module.cc b/sbndcode/BlipRecoSBND/BlipAna_module.cc index a8590b131..6b8edc40d 100644 --- a/sbndcode/BlipRecoSBND/BlipAna_module.cc +++ b/sbndcode/BlipRecoSBND/BlipAna_module.cc @@ -77,7 +77,7 @@ const int kMaxBlips = 5000; const int kMaxG4 = 30000; const int kMaxEDeps = 10000; const int kMaxTrkPts = 2000; -const int kNplanes = blip::kNplanes; +const int kNplanes = blip::kNplanes; class BlipAna; diff --git a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h index bff152637..11c191ee0 100644 --- a/sbndcode/BlipRecoSBND/Utils/BlipUtils.h +++ b/sbndcode/BlipRecoSBND/Utils/BlipUtils.h @@ -28,8 +28,6 @@ #include "larcore/Geometry/Geometry.h" #include "larcore/Geometry/WireReadout.h" #include "larcoreobj/SimpleTypesAndConstants/geo_vectors.h" -//#include "larcorealg/Geometry/GeometryCore.h" -//#include "larcorealg/Geometry/WireReadoutGeom.h" // c++ #include diff --git a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl index cd92e0814..aa5aeafc7 100644 --- a/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl +++ b/sbndcode/JobConfigurations/standard/caf/cafmakerjob_sbnd.fcl @@ -126,7 +126,6 @@ physics: # change tools in sbn to have 2D TPC sim/sp input physics.producers.pandoraShowerRazzle.SimChannelLabel: "simtpc2d:simpleSC" physics.producers.pandoraTrackDazzle.SimChannelLabel: "simtpc2d:simpleSC" -#physics.producers.cnnid.WireLabel: "simtpc2d:gauss" # uncomment below line for to use DNN ROI SP for CNNID scores physics.producers.cnnid.WireLabel: "simtpc2d:dnnsp" From 298f171ed44903f4ca243b1eca62b8df06158ab1 Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Wed, 10 Dec 2025 08:51:23 -0600 Subject: [PATCH 35/36] Tab align issue --- sbndcode/BlipRecoSBND/Utils/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt index f54a2d605..329ab12b4 100644 --- a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt @@ -37,7 +37,7 @@ cet_make_library( ROOT::Gdml sbndcode_CRTUtils sbnobj::Common_CRT - sbnobj::SBND_Blip + sbnobj::SBND_Blip ) art_dictionary(DICTIONARY_LIBRARIES sbndcode_BlipUtils) From 9c94f327b292e088b52847986297b47be90eebbe Mon Sep 17 00:00:00 2001 From: Jacob McLaughlin Date: Wed, 10 Dec 2025 08:52:23 -0600 Subject: [PATCH 36/36] Tab align issue --- sbndcode/BlipRecoSBND/Utils/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt index 329ab12b4..ffd5d00f4 100644 --- a/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt +++ b/sbndcode/BlipRecoSBND/Utils/CMakeLists.txt @@ -37,7 +37,7 @@ cet_make_library( ROOT::Gdml sbndcode_CRTUtils sbnobj::Common_CRT - sbnobj::SBND_Blip + sbnobj::SBND_Blip ) art_dictionary(DICTIONARY_LIBRARIES sbndcode_BlipUtils)