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 37 of file FlashHypothesisAnaAlg.h.

Member Typedef Documentation

Definition at line 41 of file FlashHypothesisAnaAlg.h.

Constructor & Destructor Documentation

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

Definition at line 43 of file FlashHypothesisAnaAlg.h.

43  :
44  fCounterIndex(p.get<unsigned int>("SimPhotonCounterIndex",0)),
45  fdEdx(p.get<float>("dEdx",2.1)),
46  fXOffset(p.get<float>("HypothesisXOffset",0.0)),
47  fSPCAlg(p.get<fhicl::ParameterSet>("SimPhotonCounterAlgParams")) {}
p
Definition: test.py:223

Member Function Documentation

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

Definition at line 42 of file FlashHypothesisAnaAlg.cxx.

43 {
44 
45  fOpDetPositions_Y.resize(geom.NOpDets());
46  fOpDetPositions_Z.resize(geom.NOpDets());
47 
48  double xyz[3];
49  for(size_t i_opdet=0; i_opdet<geom.NOpDets(); i_opdet++){
50  geom.Cryostat(0).OpDet(i_opdet).GetCenter(xyz);
51  fOpDetPositions_Y[i_opdet] = (float)xyz[1];
52  fOpDetPositions_Z[i_opdet] = (float)xyz[2];
53  }
54 
55 }
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 57 of file FlashHypothesisAnaAlg.cxx.

64 {
65  auto const* geom = providers.get<geo::GeometryCore>();
66 
67  FlashHypothesisCollection fhc(geom->NOpDets());
68  for(auto const& mctrack : mctrackVec){
69  if(mctrack.size()==0) continue;
70  std::vector<float> dEdxVector(mctrack.size()-1,fdEdx);
71  fhc = fhc + fFHCreator.GetFlashHypothesisCollection(mctrack,
72  dEdxVector,
73  providers,
74  pvs,
75  opdigip,
76  fXOffset);
77  }
78 
79  fSPCAlg.InitializeCounters(*geom,opdigip);
80  fSPCAlg.AddSimPhotonsVector(simPhotonsVec);
81 
85 
86  fMCTAlg.FillTree(run,event,mctrackVec);
87 
88  fTree->Fill();
89 }
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 > &)
Event finding and building.
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 25 of file FlashHypothesisAnaAlg.cxx.

30 {
31  fTree = tree;
33  h_h_p,h_s_p,h_c_p,
34  h_h_l,h_s_l,h_c_l,
35  h_h_t,h_s_t,h_c_t,
36  geom.NOpDets(),
37  false);
38 
39  fMCTAlg.SetOutputTree(tree,false);
40 }
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 69 of file FlashHypothesisAnaAlg.h.

float opdet::FlashHypothesisAnaAlg::fdEdx
private

Definition at line 70 of file FlashHypothesisAnaAlg.h.

FlashHypothesisComparison opdet::FlashHypothesisAnaAlg::fFHCompare
private

Definition at line 77 of file FlashHypothesisAnaAlg.h.

FlashHypothesisCreator opdet::FlashHypothesisAnaAlg::fFHCreator
private

Definition at line 75 of file FlashHypothesisAnaAlg.h.

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

Definition at line 78 of file FlashHypothesisAnaAlg.h.

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

Definition at line 80 of file FlashHypothesisAnaAlg.h.

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

Definition at line 81 of file FlashHypothesisAnaAlg.h.

SimPhotonCounterAlg opdet::FlashHypothesisAnaAlg::fSPCAlg
private

Definition at line 76 of file FlashHypothesisAnaAlg.h.

TTree* opdet::FlashHypothesisAnaAlg::fTree
private

Definition at line 73 of file FlashHypothesisAnaAlg.h.

float opdet::FlashHypothesisAnaAlg::fXOffset
private

Definition at line 71 of file FlashHypothesisAnaAlg.h.


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