#include <FlashHypothesisCreator.h>
|
| FlashHypothesisCreator () |
|
FlashHypothesisCollection | GetFlashHypothesisCollection (recob::Track const &track, std::vector< float > const &dEdxVector, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset=0) |
|
FlashHypothesisCollection | GetFlashHypothesisCollection (sim::MCTrack const &mctrack, std::vector< float > const &dEdxVector, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset=0) |
|
FlashHypothesisCollection | GetFlashHypothesisCollection (std::vector< TVector3 > const &trajVector, std::vector< float > const &dEdxVector, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset=0) |
|
FlashHypothesisCollection | GetFlashHypothesisCollection (TVector3 const &pt1, TVector3 const &pt2, float const &dEdx, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset=0) |
|
Definition at line 31 of file FlashHypothesisCreator.h.
opdet::FlashHypothesisCreator::FlashHypothesisCreator |
( |
| ) |
|
|
inline |
Definition at line 130 of file FlashHypothesisCreator.cxx.
139 auto const nOpDets = geom->NOpDets();
140 FlashHypothesisCollection fhc(nOpDets);
147 auto const& PointVisibility = pvs.GetAllVisibilities(&xyz_segment[0]);
150 if (!PointVisibility)
return fhc;
153 std::vector<float> qe_vector(nOpDets,opdigip.QE());
161 fhc.SetPromptHypAndPromptFraction(prompt_hyp,larp->ScintYieldRatio());
void FillFlashHypothesis(const float &yield, const float &dEdx, const TVector3 &pt1, const TVector3 &pt2, const std::vector< float > &qe_vector, phot::MappedCounts_t const &vis_vector, FlashHypothesis &hyp)
FlashHypothesisCalculator _calc
Description of geometry of one entire detector.
float dEdx(detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, const TCSlice &slc, TP3D &tp3d)
std::vector< double > SegmentMidpoint(const TVector3 &pt1, const TVector3 &pt2, float XOffset=0)
Title: FlashHypothesis Creator Class Author: Wes Ketchum (wketc.nosp@m.hum@.nosp@m.lanl..nosp@m.gov)
Description: Class that produces a flash hypothesis for a trajectory. Input: Trajectory (std::vector<TVector3> objects) Output: FlashHypotheses
Definition at line 20 of file FlashHypothesisCreator.cxx.
27 bool interpolate_dEdx=
false;
28 if(
track.NumberTrajectoryPoints() == dEdxVector.size())
29 interpolate_dEdx=
true;
30 else if(
track.NumberTrajectoryPoints() == dEdxVector.size()+1)
31 interpolate_dEdx=
false;
33 throw "ERROR in FlashHypothesisCreator: dEdx vector size not compatible with track size.";
36 FlashHypothesisCollection fhc(geom->NOpDets());
37 for(
size_t pt=1; pt<
track.NumberTrajectoryPoints(); pt++){
40 track.LocationAtPoint<TVector3>(pt),
41 0.5*(dEdxVector[pt]+dEdxVector[pt-1]),
42 providers,pvs,opdigip,XOffset);
45 track.LocationAtPoint<TVector3>(pt),
47 providers,pvs,opdigip,XOffset);
process_name use argoneut_mc_hitfinder track
Description of geometry of one entire detector.
FlashHypothesisCollection CreateFlashHypothesesFromSegment(TVector3 const &pt1, TVector3 const &pt2, float const &dEdx, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset)
Definition at line 53 of file FlashHypothesisCreator.cxx.
60 bool interpolate_dEdx=
false;
61 if(mctrack.size() == dEdxVector.size())
62 interpolate_dEdx=
true;
63 else if(mctrack.size() == dEdxVector.size()+1)
64 interpolate_dEdx=
false;
66 throw "ERROR in FlashHypothesisCreator: dEdx vector size not compatible with mctrack size.";
69 FlashHypothesisCollection fhc(geom->NOpDets());
70 for(
size_t pt=1; pt<mctrack.size(); pt++){
73 mctrack[pt].Position().Vect(),
74 0.5*(dEdxVector[pt]+dEdxVector[pt-1]),
75 providers,pvs,opdigip,XOffset);
78 mctrack[pt].Position().Vect(),
80 providers,pvs,opdigip,XOffset);
Description of geometry of one entire detector.
FlashHypothesisCollection CreateFlashHypothesesFromSegment(TVector3 const &pt1, TVector3 const &pt2, float const &dEdx, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset)
Definition at line 86 of file FlashHypothesisCreator.cxx.
93 bool interpolate_dEdx=
false;
94 if(trajVector.size() == dEdxVector.size())
95 interpolate_dEdx=
true;
96 else if(trajVector.size() == dEdxVector.size()+1)
97 interpolate_dEdx=
false;
99 throw "ERROR in FlashHypothesisCreator: dEdx vector size not compatible with trajVector size.";
102 FlashHypothesisCollection fhc(geom->NOpDets());
103 for(
size_t pt=1; pt<trajVector.size(); pt++){
107 0.5*(dEdxVector[pt]+dEdxVector[pt-1]),
108 providers,pvs,opdigip,XOffset);
113 providers,pvs,opdigip,XOffset);
Description of geometry of one entire detector.
FlashHypothesisCollection CreateFlashHypothesesFromSegment(TVector3 const &pt1, TVector3 const &pt2, float const &dEdx, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset)
Definition at line 119 of file FlashHypothesisCreator.cxx.
float dEdx(detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, const TCSlice &slc, TP3D &tp3d)
FlashHypothesisCollection CreateFlashHypothesesFromSegment(TVector3 const &pt1, TVector3 const &pt2, float const &dEdx, Providers_t providers, phot::PhotonVisibilityService const &pvs, opdet::OpDigiProperties const &opdigip, float XOffset)
The documentation for this class was generated from the following files: