From 852a8349e075d8d62ee7b6aba65d766c228dbc25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20S=C3=A1nchez=20Castillo?= Date: Tue, 20 Jan 2026 04:11:00 -0600 Subject: [PATCH] Remove skip channel list and move to calibration database --- .../TPCPMTBarycenterMatching_module.cc | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/sbndcode/TPCPMTBarycenterMatching/TPCPMTBarycenterMatching_module.cc b/sbndcode/TPCPMTBarycenterMatching/TPCPMTBarycenterMatching_module.cc index e9ee7beb9..f3fdf4b50 100644 --- a/sbndcode/TPCPMTBarycenterMatching/TPCPMTBarycenterMatching_module.cc +++ b/sbndcode/TPCPMTBarycenterMatching/TPCPMTBarycenterMatching_module.cc @@ -59,6 +59,10 @@ #include "lardataobj/RecoBase/PFParticleMetadata.h" #include "sbnobj/Common/Reco/TPCPMTBarycenterMatch.h" +// Calibration database includes +#include "sbndcode/Calibration/PDSDatabaseInterface/PMTCalibrationDatabase.h" +#include "sbndcode/Calibration/PDSDatabaseInterface/IPMTCalibrationDatabaseService.h" + //ROOT includes #include #include @@ -231,7 +235,6 @@ class TPCPMTBarycenterMatchProducer : public art::EDProducer { bool fCollectionOnly; ///< Only use TPC spacepoints from the collection plane double fDistanceCandidateFlashes; ///< Maximum distance between candidate flashes to be considered for matching (cm) std::vector fCalAreaConst; /// Calibration area constants for wire plane - std::vector fSkipChannelList; double fOpDetCoVUVEff; // Efficiencies for PMT detection (Coated PMT VUV) double fOpDetCoVISEff; // Efficiencies for PMT detection (Coated PMT VIS) double fOpDetUncoVISEff; // Efficiencies for PMT detection (Uncoated PMT VIS) @@ -294,6 +297,9 @@ class TPCPMTBarycenterMatchProducer : public art::EDProducer { fhicl::ParameterSet _vis_params; std::shared_ptr _optical_path_tool; + sbndDB::PMTCalibrationDatabase const* fPMTCalibrationDatabaseService; + + }; @@ -391,6 +397,9 @@ TPCPMTBarycenterMatchProducer::TPCPMTBarycenterMatchProducer(fhicl::ParameterSet _vis_params = p.get("VIVHits"); _optical_path_tool = std::shared_ptr(art::make_tool(p.get("OpticalPathTool"))); _semi_model = std::make_unique(_vuv_params, _vis_params, _optical_path_tool, true, false); + + //Load PMT Calibration Database + fPMTCalibrationDatabaseService = lar::providerFrom(); } void TPCPMTBarycenterMatchProducer::produce(art::Event& e) @@ -892,7 +901,7 @@ double TPCPMTBarycenterMatchProducer::GetFlashLight(double flash_pe, std::vector double tot_visibility=0; for(size_t ch=0; chgetReconstructChannel(ch)) continue; // Skip channels not reconstructed if(fOpDetType[ch]==0) tot_visibility += fOpDetCoVUVEff*dir_visibility[ch] + fOpDetCoVISEff*ref_visibility[ch]; else if(fOpDetType[ch]==1) tot_visibility += fOpDetUncoVISEff*ref_visibility[ch]; else continue; // skip other types