Public Member Functions | Private Member Functions | Private Attributes | List of all members
pdsp::EMCNNCheckCosmics Class Reference
Inheritance diagram for pdsp::EMCNNCheckCosmics:
art::EDAnalyzer art::detail::Analyzer art::detail::LegacyModule art::Observer art::ModuleBase

Public Member Functions

 EMCNNCheckCosmics (fhicl::ParameterSet const &p)
 
 EMCNNCheckCosmics (EMCNNCheckCosmics const &)=delete
 
 EMCNNCheckCosmics (EMCNNCheckCosmics &&)=delete
 
EMCNNCheckCosmicsoperator= (EMCNNCheckCosmics const &)=delete
 
EMCNNCheckCosmicsoperator= (EMCNNCheckCosmics &&)=delete
 
void analyze (art::Event const &e) override
 
void beginJob () override
 
- Public Member Functions inherited from art::EDAnalyzer
 EDAnalyzer (fhicl::ParameterSet const &pset)
 
template<typename Config >
 EDAnalyzer (Table< Config > const &config)
 
std::string workerType () const
 
- Public Member Functions inherited from art::detail::Analyzer
virtual ~Analyzer () noexcept
 
 Analyzer (fhicl::ParameterSet const &pset)
 
template<typename Config >
 Analyzer (Table< Config > const &config)
 
void doBeginJob (SharedResources const &resources)
 
void doEndJob ()
 
void doRespondToOpenInputFile (FileBlock const &fb)
 
void doRespondToCloseInputFile (FileBlock const &fb)
 
void doRespondToOpenOutputFiles (FileBlock const &fb)
 
void doRespondToCloseOutputFiles (FileBlock const &fb)
 
bool doBeginRun (RunPrincipal &rp, ModuleContext const &mc)
 
bool doEndRun (RunPrincipal &rp, ModuleContext const &mc)
 
bool doBeginSubRun (SubRunPrincipal &srp, ModuleContext const &mc)
 
bool doEndSubRun (SubRunPrincipal &srp, ModuleContext const &mc)
 
bool doEvent (EventPrincipal &ep, ModuleContext const &mc, std::atomic< std::size_t > &counts_run, std::atomic< std::size_t > &counts_passed, std::atomic< std::size_t > &counts_failed)
 
- Public Member Functions inherited from art::Observer
 ~Observer () noexcept
 
 Observer (Observer const &)=delete
 
 Observer (Observer &&)=delete
 
Observeroperator= (Observer const &)=delete
 
Observeroperator= (Observer &&)=delete
 
void registerProducts (ProductDescriptions &, ModuleDescription const &)
 
void fillDescriptions (ModuleDescription const &)
 
fhicl::ParameterSetID selectorConfig () const
 
- Public Member Functions inherited from art::ModuleBase
virtual ~ModuleBase () noexcept
 
 ModuleBase ()
 
ModuleDescription const & moduleDescription () const
 
void setModuleDescription (ModuleDescription const &)
 
std::array< std::vector< ProductInfo >, NumBranchTypes > const & getConsumables () const
 
void sortConsumables (std::string const &current_process_name)
 
template<typename T , BranchType BT>
ViewToken< T > consumesView (InputTag const &tag)
 
template<typename T , BranchType BT>
ViewToken< T > mayConsumeView (InputTag const &tag)
 

Private Member Functions

void ResetVars ()
 

Private Attributes

std::string fGeneratorTag
 
std::string fCNNTag
 
TTree * ftree
 
int run
 
int subrun
 
int event
 
int beampdg
 
double average_score_em
 
double average_score_trk
 
double average_score_mic
 
double track_endz
 
int ndaughterhits
 
double average_daughter_score_mic
 
double vtxx
 
double vtxy
 
double vtxz
 
double endx
 
double endy
 
double endz
 
double dirx
 
double diry
 
double dirz
 
std::vector< short > channel
 
std::vector< short > tpc
 
std::vector< short > plane
 
std::vector< short > wire
 
std::vector< double > charge
 
std::vector< double > peakt
 
std::vector< double > score_em
 
std::vector< double > score_trk
 
std::vector< double > score_mic
 
std::vector< short > daughter_channel
 
std::vector< short > daughter_tpc
 
std::vector< short > daughter_plane
 
std::vector< short > daughter_wire
 
std::vector< double > daughter_charge
 
std::vector< double > daughter_peakt
 
std::vector< double > daughter_score_em
 
std::vector< double > daughter_score_trk
 
std::vector< double > daughter_score_mic
 
std::vector< int > pdg
 
std::vector< int > origin
 
std::vector< std::stringprocess
 

Additional Inherited Members

- Public Types inherited from art::EDAnalyzer
using WorkerType = WorkerT< EDAnalyzer >
 
using ModuleType = EDAnalyzer
 
- Protected Member Functions inherited from art::Observer
std::string const & processName () const
 
bool wantAllEvents () const noexcept
 
bool wantEvent (ScheduleID id, Event const &e) const
 
Handle< TriggerResultsgetTriggerResults (Event const &e) const
 
 Observer (fhicl::ParameterSet const &config)
 
 Observer (std::vector< std::string > const &select_paths, std::vector< std::string > const &reject_paths, fhicl::ParameterSet const &config)
 
- Protected Member Functions inherited from art::ModuleBase
ConsumesCollectorconsumesCollector ()
 
template<typename T , BranchType = InEvent>
ProductToken< T > consumes (InputTag const &)
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > consumesView (InputTag const &)
 
template<typename T , BranchType = InEvent>
void consumesMany ()
 
template<typename T , BranchType = InEvent>
ProductToken< T > mayConsume (InputTag const &)
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > mayConsumeView (InputTag const &)
 
template<typename T , BranchType = InEvent>
void mayConsumeMany ()
 

Detailed Description

Definition at line 46 of file EMCNNCheckCosmics_module.cc.

Constructor & Destructor Documentation

pdsp::EMCNNCheckCosmics::EMCNNCheckCosmics ( fhicl::ParameterSet const &  p)
explicit

Definition at line 112 of file EMCNNCheckCosmics_module.cc.

113  : EDAnalyzer{p},
114 //fselectpdg(p.get<int>("selectpdg")),
115  fGeneratorTag(p.get<std::string>("GeneratorTag")),
116  fCNNTag(p.get<std::string>("CNNTag","emtrkmichelid:emtrkmichel"))
117  {
118  }
std::string string
Definition: nybbler.cc:12
EDAnalyzer(fhicl::ParameterSet const &pset)
Definition: EDAnalyzer.h:25
p
Definition: test.py:223
pdsp::EMCNNCheckCosmics::EMCNNCheckCosmics ( EMCNNCheckCosmics const &  )
delete
pdsp::EMCNNCheckCosmics::EMCNNCheckCosmics ( EMCNNCheckCosmics &&  )
delete

Member Function Documentation

void pdsp::EMCNNCheckCosmics::analyze ( art::Event const &  e)
overridevirtual

Implements art::EDAnalyzer.

Definition at line 165 of file EMCNNCheckCosmics_module.cc.

166 {
167  run = e.run();
168  subrun = e.subRun();
169  event = e.id().event();
170 
171  //Services
174  auto const* SCE = lar::providerFrom<spacecharge::SpaceChargeService>();
175  auto const clockData = art::ServiceHandle<detinfo::DetectorClocksService>()->DataFor(e);
176  auto const detProp = art::ServiceHandle<detinfo::DetectorPropertiesService>()->DataFor(e, clockData);
178 
179  std::vector < art::Ptr < recob::Slice > > sliceList;
180  auto sliceListHandle = e.getHandle < std::vector < recob::Slice > >("pandora");
181  if (sliceListHandle) {
182  art::fill_ptr_vector(sliceList, sliceListHandle);
183  }
184  else return;
185 
186  // Get all pfparticles
187  std::vector < art::Ptr < recob::PFParticle > > pfpList;
188  auto pfpListHandle = e.getHandle < std::vector < recob::PFParticle > >("pandora");
189  if (pfpListHandle) {
190  art::fill_ptr_vector(pfpList, pfpListHandle);
191  }
192 
193  // Get all clusters
194  std::vector < art::Ptr < recob::Cluster > > cluList;
195  auto cluListHandle = e.getHandle < std::vector < recob::Cluster > >("pandora");
196  if (cluListHandle) {
197  art::fill_ptr_vector(cluList, cluListHandle);
198  }
199 
200  // Get all tracks
201  std::vector < art::Ptr < recob::Track > > trkList;
202  auto trkListHandle = e.getHandle < std::vector < recob::Track > >("pandoraTrack");
203  if (trkListHandle) {
204  art::fill_ptr_vector(trkList, trkListHandle);
205  }
206 
207  // Get all hits
208  std::vector < art::Ptr < recob::Hit > > hitList;
209  auto hitListHandle = e.getHandle < std::vector < recob::Hit > >("hitpdune");
210  if (hitListHandle) {
211  art::fill_ptr_vector(hitList, hitListHandle);
212  }
213 
214  // Get hits-track association
215  art::FindManyP<recob::Cluster> fmcpfp(pfpListHandle, e, "pandora");
216 
217  // Get vertex-PFParticle association
218  art::FindManyP<recob::Vertex> fmvpfp(pfpListHandle, e, "pandora");
219 
220  // Get hit-cluster association
221  art::FindManyP<recob::Hit> fmhc(cluListHandle, e, "pandora");
222 
223  art::FindManyP <recob::Hit> hitsFromSlice(sliceListHandle, e, "pandora");
224 
225  // Get track-hit association
226  art::FindManyP<recob::Hit, recob::TrackHitMeta> fmthm(trkListHandle, e,"pandoraTrack"); // to associate tracks and hits
227 
228  // Get hit-track association
229  art::FindManyP<recob::Hit> thass(trkListHandle, e, "pandoraTrack"); //to associate hit just trying
230 
232 
233  // Get the PFParticle utility
235  const unsigned int beamSlice{pfpUtil.GetBeamSlice(e,"pandora")};
236 
237  const std::map<unsigned int,std::vector<const recob::PFParticle*>> sliceToPFParticleMap = pfpUtil.GetPFParticleSliceMap(e,"pandora");
238  std::vector<unsigned int> tracksToUse;
239  for (auto const & element : sliceToPFParticleMap)
240  {
241  if (element.first == beamSlice)
242  continue;
243 
244  for (const recob::PFParticle *part : element.second)
245  {
246  // We only want track-like particles
247  const recob::Track *track{pfpUtil.GetPFParticleTrack(*part,e,"pandora","pandoraTrack")};
248  if (track == nullptr)
249  continue;
250 
251  // Check that the track is long enough to be considered a cosmic muon
252  if (track->Length() < 100.)
253  continue;
254 
255  // Ignore tracks that start or end near the front face of the TPC
256  if (track->Start<TVector3>().Z() < 50.0 || track->End<TVector3>().Z() < 50.0)
257  continue;
258 
259  // Angular cut for very steep tracks
260  if (track->VertexDirection<TVector3>().Y() < TMath::Cos(165. * TMath::Pi() / 180.))
261  continue;
262 
263  // Now we should be in the situation where we have a good track
264  tracksToUse.push_back(track->ID());
265  }
266  }
267 
268  // We can now look at these particles
269  int trackid = -1;
270 // int endwire = -1;
271 // int endpeakt = -1;
272 // int endtpc = -1;
273  std::vector<int> wirekeys;
274  for(unsigned int t = 0; t < tracksToUse.size(); ++t){
275 
276  const art::Ptr<recob::Track> thisTrack = trkList.at(tracksToUse.at(t));
277  if (thisTrack){
278  this->ResetVars();
279  //if (!beam_cuts.IsBeamlike(*thisTrack, e, "1")) return;
280  // Track ID
281  trackid = thisTrack->ID();
282  // Track end point z
283  track_endz = thisTrack->End().Z();
284  vtxx = thisTrack->Vertex().X();
285  vtxy = thisTrack->Vertex().Y();
286  vtxz = thisTrack->Vertex().Z();
287  if (!geom->FindTPCAtPosition(geo::Point_t(vtxx, vtxy, vtxz)).isValid) return;
288  auto offset = SCE->GetCalPosOffsets(geo::Point_t(vtxx, vtxy, vtxz), (geom->FindTPCAtPosition(geo::Point_t(vtxx, vtxy, vtxz))).TPC);
289 // std::cout<<"track "<<offset.X()<<" "<<offset.Y()<<" "<<offset.Z()<<std::endl;
290  vtxx -= offset.X();
291  vtxy += offset.Y();
292  vtxz += offset.Z();
293  endx = thisTrack->End().X();
294  endy = thisTrack->End().Y();
295  endz = thisTrack->End().Z();
296  if (!geom->FindTPCAtPosition(geo::Point_t(endx, endy, endz)).isValid) return;
297  offset = SCE->GetCalPosOffsets(geo::Point_t(endx, endy, endz), (geom->FindTPCAtPosition(geo::Point_t(endx, endy, endz))).TPC);
298  endx -= offset.X();
299  endy += offset.Y();
300  endz += offset.Z();
301  TVector3 dir(endx-vtxx, endy-vtxy, endz-vtxz);
302  dir = dir.Unit();
303  dirx = dir.X();
304  diry = dir.Y();
305  dirz = dir.Z();
306  // Find the last wire number and peak time on the track
307  if (fmthm.isValid()){
308  float zlast0=-99999;
309  auto vhit=fmthm.at(trackid);
310  auto vmeta=fmthm.data(trackid);
311  for (size_t ii = 0; ii<vhit.size(); ++ii){ //loop over all meta data hit
312  bool fBadhit = false;
313  if (vmeta[ii]->Index() == static_cast<unsigned int>(std::numeric_limits<int>::max())){
314  fBadhit = true;
315  continue;
316  }
317  if (vmeta[ii]->Index()>=thisTrack->NumberTrajectoryPoints()){
318  throw cet::exception("Calorimetry_module.cc") << "Requested track trajectory index "<<vmeta[ii]->Index()<<" exceeds the total number of trajectory points "<<thisTrack->NumberTrajectoryPoints()<<" for track index "<<trackid<<". Something is wrong with the track reconstruction. Please contact tjyang@fnal.gov!!";
319  }
320  if (!thisTrack->HasValidPoint(vmeta[ii]->Index())){
321  fBadhit = true;
322  continue;
323  }
324  auto loc = thisTrack->LocationAtPoint(vmeta[ii]->Index());
325  if (fBadhit) continue; //HY::If BAD hit, skip this hit and go next
326  if (loc.Z()<-100) continue; //hit not on track
327  if(vhit[ii]->WireID().Plane==2){
328  wirekeys.push_back(vhit[ii].key());
329  float zlast=loc.Z();
330  if(zlast>zlast0){
331  zlast0=zlast;
332 // endwire=vhit[ii]->WireID().Wire;
333 // endpeakt=vhit[ii]->PeakTime();
334 // endtpc=vhit[ii]->WireID().TPC;
335  }
336  }
337  }
338  }
339 
340  // Now we can loop over the hits
341  auto const &hits = thass.at(trackid);
342  for (auto & hit : hits){
343  std::array<float,4> cnn_out = hitResults.getOutput(hit);
344  if (hit->WireID().Plane == 2){
345  channel.push_back(hit->Channel());
346  tpc.push_back(hit->WireID().TPC);
347  plane.push_back(hit->WireID().Plane);
348  wire.push_back(hit->WireID().Wire);
349  charge.push_back(hit->Integral());
350  peakt.push_back(hit->PeakTime());
351  score_em.push_back(cnn_out[hitResults.getIndex("em")]);
352  score_trk.push_back(cnn_out[hitResults.getIndex("track")]);
353  score_mic.push_back(cnn_out[hitResults.getIndex("michel")]);
354  }
355  }
356  }
357 
358  // Get the average of the collection plane scores
359  unsigned int nCollectionHits = 0;
360  for(unsigned int h = 0; h < plane.size(); ++h){
361  if(plane.at(h) == 2){
362  ++nCollectionHits;
363  average_score_em += score_em.at(h);
366  }
367  }
368 
369  if(nCollectionHits > 0){
370  average_score_em /= static_cast<double>(nCollectionHits);
371  average_score_trk /= static_cast<double>(nCollectionHits);
372  average_score_mic /= static_cast<double>(nCollectionHits);
373  }
374 
375  if (!channel.empty())
376  {
377  std::cout << "Filling output tree" << std::endl;
378  ftree->Fill();
379  }
380  }
381 }
std::vector< double > score_trk
Point_t const & LocationAtPoint(size_t i) const
Definition: Track.h:126
bool isValid
Whether this ID points to a valid element.
Definition: geo_types.h:211
bool HasValidPoint(size_t i) const
Definition: Track.h:111
size_t NumberTrajectoryPoints() const
Various functions related to the presence and the number of (valid) points.
Definition: Track.h:102
std::vector< double > score_mic
string dir
unsigned int Index
geo::TPCID FindTPCAtPosition(double const worldLoc[3]) const
Returns the ID of the TPC at specified location.
const double e
IDparameter< geo::WireID > WireID
Member type of validated geo::WireID parameter.
def key(type, name=None)
Definition: graph.py:13
unsigned short GetBeamSlice(art::Event const &evt, const std::string particleLabel) const
Try to get the slice tagged as beam. Returns 9999 if no beam slice was found.
const recob::Track * GetPFParticleTrack(const recob::PFParticle &particle, art::Event const &evt, const std::string particleLabel, const std::string trackLabel) const
Get the track associated to this particle. Returns a null pointer if not found.
Point_t const & Vertex() const
Definition: Track.h:124
const std::map< unsigned int, std::vector< const recob::PFParticle * > > GetPFParticleSliceMap(art::Event const &evt, const std::string particleLabel) const
Get a map of slice index to the primary PFParticles within it.
static int max(int a, int b)
Detector simulation of raw signals on wires.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
Definition: geo_vectors.h:184
int ID() const
Definition: Track.h:198
Hierarchical representation of particle flow.
Definition: PFParticle.h:44
Point_t const & End() const
Definition: Track.h:125
void fill_ptr_vector(std::vector< Ptr< T >> &ptrs, H const &h)
Definition: Ptr.h:297
Track from a non-cascading particle.A recob::Track consists of a recob::TrackTrajectory, plus additional members relevant for a "fitted" track:
Definition: Track.h:49
std::vector< double > score_em
cet::coded_exception< error, detail::translate > exception
Definition: exception.h:33
QTextStream & endl(QTextStream &s)
void pdsp::EMCNNCheckCosmics::beginJob ( )
overridevirtual

Reimplemented from art::EDAnalyzer.

Definition at line 383 of file EMCNNCheckCosmics_module.cc.

383  {
384 
385  art::ServiceHandle<art::TFileService> fileServiceHandle;
386  ftree = fileServiceHandle->make<TTree>("ftree", "hit info");
387  ftree->Branch("run", &run, "run/I");
388  ftree->Branch("event", &event, "event/I");
389  ftree->Branch("beampdg", &beampdg, "beampdg/I");
390  ftree->Branch("average_score_em" , &average_score_em , "average_score_em/D");
391  ftree->Branch("average_score_trk", &average_score_trk, "average_score_trk/D");
392  ftree->Branch("average_score_mic", &average_score_mic, "average_score_mic/D");
393  ftree->Branch("track_endz", &track_endz, "track_endz/D");
394  ftree->Branch("ndaughterhits", &ndaughterhits, "ndaughterhits/I");
395  ftree->Branch("average_daughter_score_mic", &average_daughter_score_mic, "average_daughter_score_mic/D");
396  ftree->Branch("vtxx", &vtxx, "vtxx/D");
397  ftree->Branch("vtxy", &vtxy, "vtxy/D");
398  ftree->Branch("vtxz", &vtxz, "vtxz/D");
399  ftree->Branch("endx", &endx, "endx/D");
400  ftree->Branch("endy", &endy, "endy/D");
401  ftree->Branch("endz", &endz, "endz/D");
402  ftree->Branch("dirx", &dirx, "dirx/D");
403  ftree->Branch("diry", &diry, "diry/D");
404  ftree->Branch("dirz", &dirz, "dirz/D");
405  ftree->Branch("channel", &channel);
406  ftree->Branch("tpc", &tpc);
407  ftree->Branch("plane", &plane);
408  ftree->Branch("wire", &wire);
409  ftree->Branch("charge", &charge);
410  ftree->Branch("peakt", &peakt);
411  ftree->Branch("score_em", &score_em);
412  ftree->Branch("score_trk", &score_trk);
413  ftree->Branch("score_mic", &score_mic);
414 
415  ftree->Branch("daughter_channel", &daughter_channel);
416  ftree->Branch("daughter_tpc", &daughter_tpc);
417  ftree->Branch("daughter_plane", &daughter_plane);
418  ftree->Branch("daughter_wire", &daughter_wire);
419  ftree->Branch("daughter_charge", &daughter_charge);
420  ftree->Branch("daughter_peakt", &daughter_peakt);
421  ftree->Branch("daughter_score_em", &daughter_score_em);
422  ftree->Branch("daughter_score_trk", &daughter_score_trk);
423  ftree->Branch("daughter_score_mic", &daughter_score_mic);
424 
425  ftree->Branch("pdg", &pdg);
426  ftree->Branch("origin", &origin);
427  ftree->Branch("process", &process);
428 
429 }
std::vector< double > daughter_score_trk
std::vector< double > daughter_score_mic
std::vector< double > score_trk
std::vector< short > daughter_wire
std::vector< double > score_mic
std::vector< double > daughter_score_em
std::vector< double > daughter_peakt
std::vector< short > daughter_plane
std::vector< short > daughter_tpc
std::vector< short > daughter_channel
std::vector< std::string > process
std::vector< double > daughter_charge
std::vector< double > score_em
Event finding and building.
EMCNNCheckCosmics& pdsp::EMCNNCheckCosmics::operator= ( EMCNNCheckCosmics const &  )
delete
EMCNNCheckCosmics& pdsp::EMCNNCheckCosmics::operator= ( EMCNNCheckCosmics &&  )
delete
void pdsp::EMCNNCheckCosmics::ResetVars ( void  )
private

Definition at line 120 of file EMCNNCheckCosmics_module.cc.

121 {
122  beampdg = 0;
123  average_score_em = 0.;
124  average_score_trk = 0.;
125  average_score_mic = 0.;
126  track_endz = -1;
127  ndaughterhits = 0;
129  vtxx = -9999;
130  vtxy = -9999;
131  vtxz = -9999;
132  endx = -9999;
133  endy = -9999;
134  endz = -9999;
135  dirx = -9999;
136  diry = -9999;
137  dirz = -9999;
138  channel.clear();
139  tpc.clear();
140  plane.clear();
141  wire.clear();
142  charge.clear();
143  peakt.clear();
144  score_em.clear();
145  score_trk.clear();
146  score_mic.clear();
147 
148  daughter_channel.clear();
149  daughter_tpc.clear();
150  daughter_plane.clear();
151  daughter_wire.clear();
152 
153  daughter_charge.clear();
154  daughter_peakt.clear();
155  daughter_score_em.clear();
156  daughter_score_trk.clear();
157  daughter_score_mic.clear();
158 
159  pdg.clear();
160  origin.clear();
161  process.clear();
162 
163 }
std::vector< double > daughter_score_trk
std::vector< double > daughter_score_mic
std::vector< double > score_trk
std::vector< short > daughter_wire
std::vector< double > score_mic
std::vector< double > daughter_score_em
std::vector< double > daughter_peakt
std::vector< short > daughter_plane
std::vector< short > daughter_tpc
std::vector< short > daughter_channel
std::vector< std::string > process
std::vector< double > daughter_charge
std::vector< double > score_em

Member Data Documentation

double pdsp::EMCNNCheckCosmics::average_daughter_score_mic
private

Definition at line 81 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::average_score_em
private

Definition at line 76 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::average_score_mic
private

Definition at line 78 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::average_score_trk
private

Definition at line 77 of file EMCNNCheckCosmics_module.cc.

int pdsp::EMCNNCheckCosmics::beampdg
private

Definition at line 75 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::channel
private

Definition at line 85 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::charge
private

Definition at line 89 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::daughter_channel
private

Definition at line 95 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::daughter_charge
private

Definition at line 99 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::daughter_peakt
private

Definition at line 100 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::daughter_plane
private

Definition at line 97 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::daughter_score_em
private

Definition at line 101 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::daughter_score_mic
private

Definition at line 103 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::daughter_score_trk
private

Definition at line 102 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::daughter_tpc
private

Definition at line 96 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::daughter_wire
private

Definition at line 98 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::dirx
private

Definition at line 84 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::diry
private

Definition at line 84 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::dirz
private

Definition at line 84 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::endx
private

Definition at line 83 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::endy
private

Definition at line 83 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::endz
private

Definition at line 83 of file EMCNNCheckCosmics_module.cc.

int pdsp::EMCNNCheckCosmics::event
private

Definition at line 74 of file EMCNNCheckCosmics_module.cc.

std::string pdsp::EMCNNCheckCosmics::fCNNTag
private

Definition at line 69 of file EMCNNCheckCosmics_module.cc.

std::string pdsp::EMCNNCheckCosmics::fGeneratorTag
private

Definition at line 68 of file EMCNNCheckCosmics_module.cc.

TTree* pdsp::EMCNNCheckCosmics::ftree
private

Definition at line 71 of file EMCNNCheckCosmics_module.cc.

int pdsp::EMCNNCheckCosmics::ndaughterhits
private

Definition at line 80 of file EMCNNCheckCosmics_module.cc.

std::vector<int> pdsp::EMCNNCheckCosmics::origin
private

Definition at line 106 of file EMCNNCheckCosmics_module.cc.

std::vector<int> pdsp::EMCNNCheckCosmics::pdg
private

Definition at line 105 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::peakt
private

Definition at line 90 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::plane
private

Definition at line 87 of file EMCNNCheckCosmics_module.cc.

std::vector<std::string> pdsp::EMCNNCheckCosmics::process
private

Definition at line 107 of file EMCNNCheckCosmics_module.cc.

int pdsp::EMCNNCheckCosmics::run
private

Definition at line 72 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::score_em
private

Definition at line 91 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::score_mic
private

Definition at line 93 of file EMCNNCheckCosmics_module.cc.

std::vector<double> pdsp::EMCNNCheckCosmics::score_trk
private

Definition at line 92 of file EMCNNCheckCosmics_module.cc.

int pdsp::EMCNNCheckCosmics::subrun
private

Definition at line 73 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::tpc
private

Definition at line 86 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::track_endz
private

Definition at line 79 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::vtxx
private

Definition at line 82 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::vtxy
private

Definition at line 82 of file EMCNNCheckCosmics_module.cc.

double pdsp::EMCNNCheckCosmics::vtxz
private

Definition at line 82 of file EMCNNCheckCosmics_module.cc.

std::vector<short> pdsp::EMCNNCheckCosmics::wire
private

Definition at line 88 of file EMCNNCheckCosmics_module.cc.


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