Skip to content

Commit b790c6d

Browse files
committed
Merge branch 'release/v10_02_01'
2 parents 79193ea + 25a85b4 commit b790c6d

8 files changed

Lines changed: 95 additions & 6 deletions

File tree

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
cmake_minimum_required(VERSION 3.19 FATAL_ERROR)
1515

1616
find_package(cetmodules 3.20.00 REQUIRED)
17-
project(sbnobj VERSION 10.02.00 LANGUAGES CXX)
17+
project(sbnobj VERSION 10.02.01 LANGUAGES CXX)
1818

1919
message(STATUS
2020
"\n-- ============================================================================="

sbnobj/Common/Calibration/TrackCaloSkimmerObj.h

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -262,9 +262,12 @@ namespace sbn {
262262
std::vector<WireInfo> wires2; //!< List of wire information on plane 2
263263

264264
float t0PFP; //!< Particle-Flow-Particle (Pandora) T0. Derived from cathode crossing
265-
float t0CRTTrack; //!< t0 from CRT Track
266-
float t0CRTHit; //!< t0 from CRT Hit
267-
int whicht0; //!< Which T0 producer was used to tag. 0 is Pandora, 1 is CRTTrack 2 is CRTHit
265+
float t0CRTTrack; //!< t0 from CRT Track (SBND)
266+
float t0CRTHit; //!< t0 from CRT Hit (ICARUS)
267+
float t0CRTSpacePoint; //!< t0 from CRT SpacePoint (SBND)
268+
int whicht0; //!< Which T0 producer was used to tag. 0 is Pandora, 1 is CRTTrack 2 is CRTHit, 3 is CRTSpacePoint
269+
float crtMatchingScore; //<! An assessment of the quality of the match made for whicht0 == 1,2,3
270+
float xShiftCRT; //<! If whicht0 == 1,2,3 the amount by which the track was shifted in x
268271
int id; //!< ID of track
269272
int cryostat; //!< Cryostat number of track
270273
bool clear_cosmic_muon; //!< Whether Pandora thinks the track is "clearly" a cosmic
@@ -317,6 +320,9 @@ namespace sbn {
317320
t0PFP(std::numeric_limits<float>::lowest()),
318321
t0CRTTrack(std::numeric_limits<float>::lowest()),
319322
t0CRTHit(std::numeric_limits<float>::lowest()),
323+
t0CRTSpacePoint(std::numeric_limits<float>::lowest()),
324+
crtMatchingScore(std::numeric_limits<float>::lowest()),
325+
xShiftCRT(0),
320326
id(-1),
321327
cryostat(-1),
322328
clear_cosmic_muon(false),

sbnobj/Common/Calibration/classes_def.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
<version ClassVersion="11" checksum="903476586"/>
1515
<version ClassVersion="10" checksum="118230262"/>
1616
</class>
17-
<class name="sbn::TrackInfo" ClassVersion="16">
17+
<class name="sbn::TrackInfo" ClassVersion="17">
18+
<version ClassVersion="17" checksum="2056578499"/>
1819
<version ClassVersion="16" checksum="2134249071"/>
1920
<version ClassVersion="15" checksum="1667792945"/>
2021
<version ClassVersion="14" checksum="3729960902"/>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#include "sbnobj/Common/Reco/CorrectedOpFlashTiming.h"
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
/**
2+
* @file sbnobj/Common/Reco/CorrectedOpFlashTiming.h
3+
* @author Alejandro Sánchez-Castillo (acastill@fnal.gov)
4+
* @date Aug 27, 2025
5+
*
6+
*/
7+
8+
#include <limits>
9+
10+
11+
#ifndef SBNOBJ_COMMON_RECO_CORRECTEDOPFLASHTIMING_H
12+
#define SBNOBJ_COMMON_RECO_CORRECTEDOPFLASHTIMING_H
13+
14+
namespace sbn {
15+
/**
16+
* @brief OpFlash time information corrected for proper BNB timing reconstruction.
17+
*/
18+
class CorrectedOpFlashTiming {
19+
public:
20+
21+
// NaN value to initialize data members
22+
static constexpr float fDefault = std::numeric_limits<float>::signaling_NaN();
23+
24+
/// @name Corrected OpFlash Times
25+
/// @{
26+
float OpFlashT0 { fDefault }; ///< | OpFlash Time wrt RWM time | (ns)
27+
float UpstreamTime_lightonly { fDefault }; ///< | Nu upstream wall time reconstructed using light only | (ns)
28+
float UpstreamTime_tpczcorr { fDefault }; ///< | Nu upstream wall time reconstructed using light and Z from tpc vertex | (ns)
29+
float UpstreamTime_propcorr_tpczcorr { fDefault }; ///< | Nu upstream wall time reconstructed using light propagation correction from tpc information and z correction from tpc vertex | (ns)
30+
31+
/// @}
32+
33+
/// @name Data members related to the slice-flash match
34+
/// @{
35+
float FMScore { fDefault }; ///< | OpFlash Time wrt RWM time | (ns)
36+
37+
/// @}
38+
39+
/// @name Data members related to the slice match
40+
/// @{
41+
float SliceNuScore { fDefault }; ///< | OpFlash Time wrt RWM time | (ns)
42+
43+
/// @}
44+
45+
};
46+
}
47+
48+
#endif

sbnobj/Common/Reco/TPCPMTBarycenterMatch.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ namespace sbn {
4747
float deltaY { fDefault }; ///< | Matched flash Y center - charge Y center | (cm)
4848
float deltaZ { fDefault }; ///< | Matched flash Z center - charge Z center | (cm)
4949
float radius { fDefault }; ///< Hypotenuse of DeltaY and DeltaZ (cm)
50+
float angle { fDefault }; ///< | Angle between charge PCA and light PCA | (us)
51+
float chi2 { fDefault }; ///< | Chi2 to be minimised when matching flash to slice | (dimensionless)
52+
float score { fDefault }; ///< | Score to be maximised when matching flash to slice | (dimensionless)
5053
float deltaT { fDefault }; ///< | Matched flash time - anab::T0 | when available (us)
5154
float overlapY { fDefault }; ///< Spatial overlap of flash and charge centroids in Y [>0] OR distance apart if no overlap [<0] (cm)
5255
float overlapZ { fDefault }; ///< Spatial overlap of flash and charge centroids in Z [>0] OR distance apart if no overlap [<0] (cm)

sbnobj/Common/Reco/classes.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#include "canvas/Persistency/Common/Wrapper.h"
12
#include "canvas/Persistency/Common/Assns.h"
23
#include "lardataobj/AnalysisBase/Calorimetry.h"
34
#include "lardataobj/AnalysisBase/T0.h"
@@ -10,12 +11,14 @@
1011
#include "lardataobj/RecoBase/Vertex.h"
1112
#include "lardataobj/RecoBase/OpFlash.h"
1213

14+
1315
#include "sbnobj/Common/CRT/CRTHit.hh"
1416
#include "sbnobj/Common/Reco/FlashTriggerPrimitive.hh"
1517
#include "sbnobj/Common/Reco/MergedTrackInfo.hh"
1618
#include "sbnobj/Common/Reco/RangeP.h"
1719
#include "sbnobj/Common/Reco/ShowerSelectionVars.h"
1820
#include "sbnobj/Common/Reco/SimpleFlashMatchVars.h"
21+
#include "sbnobj/Common/Reco/CorrectedOpFlashTiming.h"
1922

2023
#include "sbnobj/Common/Reco/MVAPID.h"
2124
#include "sbnobj/Common/Reco/MergedTrackInfo.hh"

sbnobj/Common/Reco/classes_def.xml

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,9 @@
266266
<class name="art::Wrapper<art::Assns<sbn::MVAPID, recob::PFParticle>>" />
267267
<class name="art::Wrapper<art::Assns<sbn::MVAPID, recob::PFParticle, recob::Track>>" />
268268

269-
<class name="sbn::TPCPMTBarycenterMatch" ClassVersion="10">
269+
<class name="sbn::TPCPMTBarycenterMatch" ClassVersion="12">
270+
<version ClassVersion="12" checksum="2061481769"/>
271+
<version ClassVersion="11" checksum="2756550975"/>
270272
<version ClassVersion="10" checksum="3504890228"/>
271273
</class>
272274
<class name="std::vector<sbn::TPCPMTBarycenterMatch>" />
@@ -289,4 +291,29 @@
289291
<class name="art::Wrapper<art::Assns<recob::OpFlash, sbn::TPCPMTBarycenterMatch, void>>" />
290292

291293
<class name="std::vector<geo::PlaneID>"/>
294+
295+
<class name="sbn::CorrectedOpFlashTiming" ClassVersion="15">
296+
<version ClassVersion="15" checksum="2401924061"/>
297+
<version ClassVersion="14" checksum="2635318722"/>
298+
<version ClassVersion="13" checksum="328467396"/>
299+
<version ClassVersion="12" checksum="2094795516"/>
300+
<version ClassVersion="11" checksum="2804806845"/>
301+
<version ClassVersion="10" checksum="810700615"/>
302+
</class>
303+
<class name="std::vector<sbn::CorrectedOpFlashTiming>"/>
304+
<class name="art::Wrapper<vector<sbn::CorrectedOpFlashTiming> >"/>
305+
306+
<!-- Assns (CorrectedOpFlashTiming, Slice) -->
307+
<class name="art::Assns<sbn::CorrectedOpFlashTiming, recob::Slice, void>" />
308+
<class name="art::Assns<recob::Slice, sbn::CorrectedOpFlashTiming, void>" />
309+
<class name="art::Wrapper<art::Assns<sbn::CorrectedOpFlashTiming, recob::Slice, void>>" />
310+
<class name="art::Wrapper<art::Assns<recob::Slice, sbn::CorrectedOpFlashTiming, void>>" />
311+
312+
<!-- Assns (CorrectedOpFlashTiming, OpFlash) -->
313+
<class name="art::Assns<sbn::CorrectedOpFlashTiming, recob::OpFlash, void>" />
314+
<class name="art::Assns<recob::OpFlash, sbn::CorrectedOpFlashTiming, void>" />
315+
<class name="art::Wrapper<art::Assns<sbn::CorrectedOpFlashTiming, recob::OpFlash, void>>" />
316+
<class name="art::Wrapper<art::Assns<recob::OpFlash, sbn::CorrectedOpFlashTiming, void>>" />
317+
318+
292319
</lcgdict>

0 commit comments

Comments
 (0)