All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Private Attributes | List of all members
opdet::FlashHypothesisAnaAlg Class Reference

#include <FlashHypothesisAnaAlg.h>

Public Types

using Providers_t = FlashHypothesisCreator::Providers_t
 

Public Member Functions

 FlashHypothesisAnaAlg (fhicl::ParameterSet const &p)
 
void SetOutputObjects (TTree *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, geo::Geometry const &)
 
void FillOpDetPositions (geo::Geometry const &)
 
void RunComparison (const unsigned int run, const unsigned int event, std::vector< sim::MCTrack > const &, std::vector< sim::SimPhotons > const &, Providers_t providers, opdet::OpDigiProperties const &opdigip, phot::PhotonVisibilityService const &pvs)
 

Private Attributes

unsigned int fCounterIndex
 
float fdEdx
 
float fXOffset
 
TTree * fTree
 
FlashHypothesisCreator fFHCreator
 
SimPhotonCounterAlg fSPCAlg
 
FlashHypothesisComparison fFHCompare
 
sim::MCTrackCollectionAnaAlg fMCTAlg
 
std::vector< float > fOpDetPositions_Y
 
std::vector< float > fOpDetPositions_Z
 

Detailed Description

Definition at line 35 of file FlashHypothesisAnaAlg.h.

Member Typedef Documentation

Definition at line 39 of file FlashHypothesisAnaAlg.h.

Constructor & Destructor Documentation

opdet::FlashHypothesisAnaAlg::FlashHypothesisAnaAlg ( fhicl::ParameterSet const &  p)
inline

Definition at line 41 of file FlashHypothesisAnaAlg.h.

41  :
42  fCounterIndex(p.get<unsigned int>("SimPhotonCounterIndex",0)),
43  fdEdx(p.get<float>("dEdx",2.1)),
44  fXOffset(p.get<float>("HypothesisXOffset",0.0)),
45  fSPCAlg(p.get<fhicl::ParameterSet>("SimPhotonCounterAlgParams")) {}
pdgs p
Definition: selectors.fcl:22

Member Function Documentation

void opdet::FlashHypothesisAnaAlg::FillOpDetPositions ( geo::Geometry const &  geom)

Definition at line 43 of file FlashHypothesisAnaAlg.cxx.

44 {
45 
46  fOpDetPositions_Y.resize(geom.NOpDets());
47  fOpDetPositions_Z.resize(geom.NOpDets());
48 
49  double xyz[3];
50  for(size_t i_opdet=0; i_opdet<geom.NOpDets(); i_opdet++){
51  geom.Cryostat(0).OpDet(i_opdet).GetCenter(xyz);
52  fOpDetPositions_Y[i_opdet] = (float)xyz[1];
53  fOpDetPositions_Z[i_opdet] = (float)xyz[2];
54  }
55 
56 }
std::vector< float > fOpDetPositions_Y
std::vector< float > fOpDetPositions_Z
void opdet::FlashHypothesisAnaAlg::RunComparison ( const unsigned int  run,
const unsigned int  event,
std::vector< sim::MCTrack > const &  mctrackVec,
std::vector< sim::SimPhotons > const &  simPhotonsVec,
Providers_t  providers,
opdet::OpDigiProperties const &  opdigip,
phot::PhotonVisibilityService const &  pvs 
)

Definition at line 58 of file FlashHypothesisAnaAlg.cxx.

65 {
66  auto const* geom = providers.get<geo::GeometryCore>();
67 
68  FlashHypothesisCollection fhc(geom->NOpDets());
69  for(auto const& mctrack : mctrackVec){
70  if(mctrack.size()==0) continue;
71  std::vector<float> dEdxVector(mctrack.size()-1,fdEdx);
72  fhc = fhc + fFHCreator.GetFlashHypothesisCollection(mctrack,
73  dEdxVector,
74  providers,
75  pvs,
76  opdigip,
77  fXOffset);
78  }
79 
80  fSPCAlg.InitializeCounters(*geom,opdigip);
81  fSPCAlg.AddSimPhotonsVector(simPhotonsVec);
82 
83  fFHCompare.RunComparison(run,event,
86 
87  fMCTAlg.FillTree(run,event,mctrackVec);
88 
89  fTree->Fill();
90 }
void InitializeCounters(geo::GeometryCore const &, opdet::OpDigiProperties const &)
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)
std::vector< float > fOpDetPositions_Y
void FillTree(unsigned int, unsigned int, const std::vector< sim::MCTrack > &)
FlashHypothesisCreator fFHCreator
SimPhotonCounter const & GetSimPhotonCounter(size_t)
std::vector< float > fOpDetPositions_Z
void AddSimPhotonsVector(std::vector< sim::SimPhotons > const &)
Description of geometry of one entire detector.
FlashHypothesisComparison fFHCompare
sim::MCTrackCollectionAnaAlg fMCTAlg
void RunComparison(const unsigned int, const unsigned int, const FlashHypothesisCollection &, const SimPhotonCounter &, const std::vector< float > &, const std::vector< float > &)
void opdet::FlashHypothesisAnaAlg::SetOutputObjects ( TTree *  tree,
TH1F *  h_h_p,
TH1F *  h_s_p,
TH1F *  h_c_p,
TH1F *  h_h_l,
TH1F *  h_s_l,
TH1F *  h_c_l,
TH1F *  h_h_t,
TH1F *  h_s_t,
TH1F *  h_c_t,
geo::Geometry const &  geom 
)

Title: FlashHypothesisAnaAlg Class Author: Wes Ketchum (wketc.nosp@m.hum@.nosp@m.lanl..nosp@m.gov)

Description: Alg that compares the flash hypotheses with truth photons and stores the results in a TTree.

Definition at line 26 of file FlashHypothesisAnaAlg.cxx.

31 {
32  fTree = tree;
34  h_h_p,h_s_p,h_c_p,
35  h_h_l,h_s_l,h_c_l,
36  h_h_t,h_s_t,h_c_t,
37  geom.NOpDets(),
38  false);
39 
40  fMCTAlg.SetOutputTree(tree,false);
41 }
void SetOutputTree(TTree *, bool fill=true)
FlashHypothesisComparison fFHCompare
void SetOutputObjects(TTree *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, TH1F *, const unsigned int, bool fill=true)
sim::MCTrackCollectionAnaAlg fMCTAlg

Member Data Documentation

unsigned int opdet::FlashHypothesisAnaAlg::fCounterIndex
private

Definition at line 67 of file FlashHypothesisAnaAlg.h.

float opdet::FlashHypothesisAnaAlg::fdEdx
private

Definition at line 68 of file FlashHypothesisAnaAlg.h.

FlashHypothesisComparison opdet::FlashHypothesisAnaAlg::fFHCompare
private

Definition at line 75 of file FlashHypothesisAnaAlg.h.

FlashHypothesisCreator opdet::FlashHypothesisAnaAlg::fFHCreator
private

Definition at line 73 of file FlashHypothesisAnaAlg.h.

sim::MCTrackCollectionAnaAlg opdet::FlashHypothesisAnaAlg::fMCTAlg
private

Definition at line 76 of file FlashHypothesisAnaAlg.h.

std::vector<float> opdet::FlashHypothesisAnaAlg::fOpDetPositions_Y
private

Definition at line 78 of file FlashHypothesisAnaAlg.h.

std::vector<float> opdet::FlashHypothesisAnaAlg::fOpDetPositions_Z
private

Definition at line 79 of file FlashHypothesisAnaAlg.h.

SimPhotonCounterAlg opdet::FlashHypothesisAnaAlg::fSPCAlg
private

Definition at line 74 of file FlashHypothesisAnaAlg.h.

TTree* opdet::FlashHypothesisAnaAlg::fTree
private

Definition at line 71 of file FlashHypothesisAnaAlg.h.

float opdet::FlashHypothesisAnaAlg::fXOffset
private

Definition at line 69 of file FlashHypothesisAnaAlg.h.


The documentation for this class was generated from the following files: