LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
trkf::SpacePointAna Class Reference
Inheritance diagram for trkf::SpacePointAna:
art::EDAnalyzer art::detail::Analyzer art::detail::LegacyModule art::Observer art::ModuleBase

Public Types

using ModuleType = EDAnalyzer
 

Public Member Functions

 SpacePointAna (fhicl::ParameterSet const &pset)
 
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)
 
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)
 
std::unique_ptr< Worker > makeWorker (WorkerParams const &wp)
 
template<typename T , BranchType BT>
ViewToken< T > consumesView (InputTag const &tag)
 
template<typename T , BranchType BT>
ViewToken< T > mayConsumeView (InputTag const &tag)
 

Protected Member Functions

std::string const & processName () const
 
bool wantAllEvents () const noexcept
 
bool wantEvent (ScheduleID id, Event const &e) const
 
Handle< TriggerResults > getTriggerResults (Event const &e) const
 
ConsumesCollector & consumesCollector ()
 
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 ()
 

Private Member Functions

void analyze (const art::Event &evt) override
 
void bookHistograms (bool mc)
 

Private Attributes

const SpacePointAlg fSptalgTime
 
const SpacePointAlg fSptalgSep
 
const SpacePointAlg fSptalgDefault
 
std::string fHitModuleLabel
 
bool fUseClusterHits
 
std::string fClusterModuleLabel
 
bool fUseMC
 
double fMinX
 
double fMaxX
 
double fMinY
 
double fMaxY
 
double fMinZ
 
double fMaxZ
 
bool fBooked
 
TH1F * fHDTUE
 
TH1F * fHDTVE
 
TH1F * fHDTWE
 
TH1F * fHDTUPull
 
TH1F * fHDTVPull
 
TH1F * fHDTWPull
 
TH1F * fHDTUV
 
TH1F * fHDTVW
 
TH1F * fHDTWU
 
TH2F * fHDTUVU
 
TH2F * fHDTUVV
 
TH2F * fHDTVWV
 
TH2F * fHDTVWW
 
TH2F * fHDTWUW
 
TH2F * fHDTWUU
 
TH1F * fHS
 
TH1F * fHchisq
 
TH1F * fHx
 
TH1F * fHy
 
TH1F * fHz
 
TH1F * fHAmpU
 
TH1F * fHAmpV
 
TH1F * fHAmpW
 
TH1F * fHAreaU
 
TH1F * fHAreaV
 
TH1F * fHAreaW
 
TH1F * fHSumU
 
TH1F * fHSumV
 
TH1F * fHSumW
 
TH1F * fHMCdx
 
TH1F * fHMCdy
 
TH1F * fHMCdz
 
TH1F * fHMCxpull
 
TH1F * fHMCypull
 
TH1F * fHMCzpull
 
int fNumEvent
 

Detailed Description

Definition at line 50 of file SpacePointAna_module.cc.

Member Typedef Documentation

Definition at line 22 of file EDAnalyzer.h.

Constructor & Destructor Documentation

trkf::SpacePointAna::SpacePointAna ( fhicl::ParameterSet const &  pset)
explicit

Definition at line 121 of file SpacePointAna_module.cc.

References fClusterModuleLabel, fHitModuleLabel, fUseClusterHits, and fUseMC.

127  : EDAnalyzer(pset)
128  , fSptalgTime(pset.get<fhicl::ParameterSet>("SpacePointAlgTime"))
129  , fSptalgSep(pset.get<fhicl::ParameterSet>("SpacePointAlgSep"))
130  , fSptalgDefault(pset.get<fhicl::ParameterSet>("SpacePointAlgDefault"))
131  , fHitModuleLabel(pset.get<std::string>("HitModuleLabel"))
132  , fUseClusterHits(pset.get<bool>("UseClusterHits"))
133  , fClusterModuleLabel(pset.get<std::string>("ClusterModuleLabel"))
134  , fUseMC(pset.get<bool>("UseMC"))
135  , fMinX(pset.get<double>("MinX", -1.e10))
136  , fMaxX(pset.get<double>("MaxX", 1.e10))
137  , fMinY(pset.get<double>("MinY", -1.e10))
138  , fMaxY(pset.get<double>("MaxY", 1.e10))
139  , fMinZ(pset.get<double>("MinZ", -1.e10))
140  , fMaxZ(pset.get<double>("MaxZ", 1.e10))
141  , fBooked(false)
142  , fHDTUE(0)
143  , fHDTVE(0)
144  , fHDTWE(0)
145  , fHDTUPull(0)
146  , fHDTVPull(0)
147  , fHDTWPull(0)
148  , fHDTUV(0)
149  , fHDTVW(0)
150  , fHDTWU(0)
151  , fHDTUVU(0)
152  , fHDTUVV(0)
153  , fHDTVWV(0)
154  , fHDTVWW(0)
155  , fHDTWUW(0)
156  , fHDTWUU(0)
157  , fHS(0)
158  , fHchisq(0)
159  , fHx(0)
160  , fHy(0)
161  , fHz(0)
162  , fHAmpU(0)
163  , fHAmpV(0)
164  , fHAmpW(0)
165  , fHAreaU(0)
166  , fHAreaV(0)
167  , fHAreaW(0)
168  , fHSumU(0)
169  , fHSumV(0)
170  , fHSumW(0)
171  , fHMCdx(0)
172  , fHMCdy(0)
173  , fHMCdz(0)
174  , fHMCxpull(0)
175  , fHMCypull(0)
176  , fHMCzpull(0)
177  , fNumEvent(0)
178  {
179  mf::LogInfo("SpacePointAna") << "SpacePointAna configured with the following parameters:\n"
180  << " HitModuleLabel = " << fHitModuleLabel << "\n"
181  << " UseClusterHits = " << fUseClusterHits << "\n"
182  << " ClusterModuleLabel = " << fClusterModuleLabel << "\n"
183  << " UseMC = " << fUseMC;
184  }
MaybeLogger_< ELseverityLevel::ELsev_info, false > LogInfo
EDAnalyzer(fhicl::ParameterSet const &pset)
Definition: EDAnalyzer.cc:6
const SpacePointAlg fSptalgSep
const SpacePointAlg fSptalgTime
const SpacePointAlg fSptalgDefault

Member Function Documentation

void trkf::SpacePointAna::analyze ( const art::Event evt)
overrideprivate

Definition at line 264 of file SpacePointAna_module.cc.

References bookHistograms(), trkf::SpacePointAlg::correctedTime(), geo::CryostatID::Cryostat, fClusterModuleLabel, fHAmpU, fHAmpV, fHAmpW, fHAreaU, fHAreaV, fHAreaW, fHchisq, fHDTUE, fHDTUPull, fHDTUV, fHDTUVU, fHDTUVV, fHDTVE, fHDTVPull, fHDTVW, fHDTVWV, fHDTVWW, fHDTWE, fHDTWPull, fHDTWU, fHDTWUU, fHDTWUW, fHitModuleLabel, fHMCdx, fHMCdy, fHMCdz, fHMCxpull, fHMCypull, fHMCzpull, fHS, fHSumU, fHSumV, fHSumW, fHx, fHy, fHz, fMaxX, fMaxY, fMaxZ, fMinX, fMinY, fMinZ, fNumEvent, fSptalgDefault, fSptalgSep, fSptalgTime, fUseClusterHits, fUseMC, trkf::SpacePointAlg::getAssociatedHits(), art::ProductRetriever::getByLabel(), hits(), cheat::BackTrackerService::HitToXYZ(), recob::Hit::Integral(), art::Event::isRealData(), art::Handle< T >::isValid(), geo::kU, geo::kV, geo::kZ, trkf::SpacePointAlg::makeMCTruthSpacePoints(), trkf::SpacePointAlg::makeSpacePoints(), trkf::SpacePointAlg::merge(), MF_LOG_DEBUG, recob::Hit::PeakAmplitude(), recob::Hit::PeakTime(), geo::PlaneID::Plane, art::PtrVector< T >::push_back(), art::PtrVector< T >::reserve(), trkf::SpacePointAlg::separation(), recob::Hit::SigmaPeakTime(), art::PtrVector< T >::size(), cheat::BackTrackerService::SpacePointHitsToWeightedXYZ(), recob::Hit::SummedADC(), t1, t2, lar::to_element, geo::TPCID::TPC, lar::dump::vector(), recob::Hit::View(), geo::WireID::Wire, recob::Hit::WireID(), geo::WireID::WireID(), and x.

265  {
266  ++fNumEvent;
267 
268  // Make sure histograms are booked.
269 
270  bool mc = !evt.isRealData();
271  bookHistograms(mc);
272 
273  // Get Services.
274 
276 
277  // Get Hits.
278 
280 
281  if (fUseClusterHits) {
282 
283  // Get clusters.
284 
286  evt.getByLabel(fClusterModuleLabel, clusterh);
287 
288  // Get hits from all clusters.
290 
291  if (clusterh.isValid()) {
292  int nclus = clusterh->size();
293 
294  for (int i = 0; i < nclus; ++i) {
295  art::Ptr<recob::Cluster> pclus(clusterh, i);
296  std::vector<art::Ptr<recob::Hit>> clushits = fm.at(i);
297  int nhits = clushits.size();
298  hits.reserve(hits.size() + nhits);
299 
300  for (std::vector<art::Ptr<recob::Hit>>::const_iterator ihit = clushits.begin();
301  ihit != clushits.end();
302  ++ihit) {
303  hits.push_back(*ihit);
304  }
305  }
306  }
307  }
308  else {
309 
310  // Get unclustered hits.
311 
313  evt.getByLabel(fHitModuleLabel, hith);
314  if (hith.isValid()) {
315  int nhits = hith->size();
316  hits.reserve(nhits);
317 
318  for (int i = 0; i < nhits; ++i)
319  hits.push_back(art::Ptr<recob::Hit>(hith, i));
320  }
321  }
322 
323  // Fill histograms that don't depend on space points.
324 
325  auto const clockData = art::ServiceHandle<detinfo::DetectorClocksService const>()->DataFor(evt);
326  auto const detProp =
328 
329  if (mc && fUseMC) {
330 
332 
333  // Loop over hits and fill hit-electron time difference histogram.
334 
335  for (auto const& hitPtr : hits) {
336  const recob::Hit& hit = *hitPtr;
337 
338  double tpeak = hit.PeakTime();
339  double terr = hit.SigmaPeakTime();
340 
341  bool tav_ok = true;
342  double tav = 0.;
343  try {
344  std::vector<double> hitxyz = bt_serv->HitToXYZ(clockData, hit);
345  tav = detProp.ConvertXToTicks(
346  hitxyz[0], hit.WireID().Plane, hit.WireID().TPC, hit.WireID().Cryostat);
347  }
348  catch (cet::exception& x) {
349  tav_ok = false;
350  }
351  if (tav_ok) {
352  if (hit.View() == geo::kU) {
353  fHDTUE->Fill(tpeak - tav);
354  fHDTUPull->Fill((tpeak - tav) / terr);
355  }
356  else if (hit.View() == geo::kV) {
357  fHDTVE->Fill(tpeak - tav);
358  fHDTVPull->Fill((tpeak - tav) / terr);
359  }
360  else if (hit.View() == geo::kZ) {
361  fHDTWE->Fill(tpeak - tav);
362  fHDTWPull->Fill((tpeak - tav) / terr);
363  }
364  else
365  throw cet::exception("SpacePointAna") << "Bad view = " << hit.View() << "\n";
366  }
367  }
368  }
369 
370  std::vector<recob::SpacePoint> spts1; // For time histograms.
371  std::vector<recob::SpacePoint> spts2; // For separation histogram.
372  std::vector<recob::SpacePoint> spts3; // Default cuts.
373 
374  // If nonzero time cut is specified, make space points using that
375  // time cut (for time histograms).
376 
377  if (!fSptalgTime.merge()) {
378  if (mc && fUseMC)
379  fSptalgTime.makeMCTruthSpacePoints(clockData, detProp, hits, spts1);
380  else
381  fSptalgTime.makeSpacePoints(clockData, detProp, hits, spts1);
382 
383  // Report number of space points.
384 
385  MF_LOG_DEBUG("SpacePointAna")
386  << "Found " << spts1.size() << " space points using special time cut.";
387  }
388 
389  // If nonzero separation cut is specified, make space points using that
390  // separation cut (for separation histogram).
391 
392  if (!fSptalgSep.merge()) {
393  if (mc && fUseMC)
394  fSptalgSep.makeMCTruthSpacePoints(clockData, detProp, hits, spts2);
395  else
396  fSptalgSep.makeSpacePoints(clockData, detProp, hits, spts2);
397 
398  // Report number of space points.
399 
400  MF_LOG_DEBUG("SpacePointAna")
401  << "Found " << spts2.size() << " space points using special seperation cut.";
402  }
403 
404  // Make space points using default cuts.
405 
406  if (mc && fUseMC)
407  fSptalgDefault.makeMCTruthSpacePoints(clockData, detProp, hits, spts3);
408  else
409  fSptalgDefault.makeSpacePoints(clockData, detProp, hits, spts3);
410 
411  // Report number of space points.
412 
413  MF_LOG_DEBUG("SpacePointAna") << "Found " << spts3.size()
414  << " space points using default cuts.";
415 
416  if (!fSptalgTime.merge()) {
417 
418  // Loop over space points and fill time histograms.
419 
420  for (auto const& spt : spts1) {
421  if (spt.XYZ()[0] < fMinX || spt.XYZ()[0] > fMaxX || spt.XYZ()[1] < fMinY ||
422  spt.XYZ()[1] > fMaxY || spt.XYZ()[2] < fMinZ || spt.XYZ()[2] > fMaxZ)
423  continue;
424 
425  // Get hits associated with this SpacePoint.
426 
428 
429  // Make a double loop over hits and fill hit time difference histograms.
430 
431  for (auto const& hit1 : spthits | transform(to_element)) {
432  geo::WireID hit1WireID = hit1.WireID();
433  unsigned int tpc1 = hit1WireID.TPC;
434  unsigned int plane1 = hit1WireID.Plane;
435  unsigned int wire1 = hit1WireID.Wire;
436 
437  geo::View_t view1 = hit1.View();
438  double t1 = fSptalgTime.correctedTime(detProp, hit1);
439 
440  for (auto const& hit2 : spthits | transform(to_element)) {
441  geo::WireID hit2WireID = hit2.WireID();
442  unsigned int tpc2 = hit2WireID.TPC;
443  unsigned int plane2 = hit2WireID.Plane;
444  unsigned int wire2 = hit2WireID.Wire;
445 
446  // Require same tpc, different view.
447 
448  if (tpc1 == tpc2 && plane1 != plane2) {
449 
450  geo::View_t view2 = hit2.View();
451  double t2 = fSptalgTime.correctedTime(detProp, hit2);
452 
453  if (view1 == geo::kU) {
454  if (view2 == geo::kV) {
455  fHDTUV->Fill(t1 - t2);
456  fHDTUVU->Fill(double(wire1), t1 - t2);
457  fHDTUVV->Fill(double(wire2), t1 - t2);
458  }
459  if (view2 == geo::kZ) {
460  fHDTWU->Fill(t2 - t1);
461  fHDTWUW->Fill(double(wire2), t2 - t1);
462  fHDTWUU->Fill(double(wire1), t2 - t1);
463  }
464  }
465  if (view1 == geo::kV) {
466  if (view2 == geo::kZ) {
467  fHDTVW->Fill(t1 - t2);
468  fHDTVWV->Fill(double(wire1), t1 - t2);
469  fHDTVWW->Fill(double(wire2), t1 - t2);
470  }
471  if (view2 == geo::kU) {
472  fHDTUV->Fill(t2 - t1);
473  fHDTUVU->Fill(double(wire2), t2 - t1);
474  fHDTUVV->Fill(double(wire1), t2 - t1);
475  }
476  }
477  if (view1 == geo::kZ) {
478  if (view2 == geo::kU) {
479  fHDTWU->Fill(t1 - t2);
480  fHDTWUW->Fill(double(wire1), t1 - t2);
481  fHDTWUU->Fill(double(wire2), t1 - t2);
482  }
483  if (view2 == geo::kV) {
484  fHDTVW->Fill(t2 - t1);
485  fHDTVWV->Fill(double(wire2), t2 - t1);
486  fHDTVWW->Fill(double(wire1), t2 - t1);
487  }
488  }
489  }
490  }
491  }
492  }
493 
494  // Loop over space points and fill seperation histograms.
495 
496  for (auto const& spt : spts2) {
497  if (spt.XYZ()[0] < fMinX || spt.XYZ()[0] > fMaxX || spt.XYZ()[1] < fMinY ||
498  spt.XYZ()[1] > fMaxY || spt.XYZ()[2] < fMinZ || spt.XYZ()[2] > fMaxZ)
499  continue;
500 
501  // Get hits associated with this SpacePoint.
502 
504 
505  // Fill separation histogram.
506 
507  double sep = fSptalgSep.separation(spthits);
508  fHS->Fill(sep);
509  }
510  }
511 
512  // Loop over default space points and fill histograms.
513 
514  for (auto const& spt : spts3) {
515  if (spt.XYZ()[0] < fMinX || spt.XYZ()[0] > fMaxX || spt.XYZ()[1] < fMinY ||
516  spt.XYZ()[1] > fMaxY || spt.XYZ()[2] < fMinZ || spt.XYZ()[2] > fMaxZ)
517  continue;
518 
519  fHchisq->Fill(spt.Chisq());
520  fHx->Fill(spt.XYZ()[0]);
521  fHy->Fill(spt.XYZ()[1]);
522  fHz->Fill(spt.XYZ()[2]);
523 
524  // Get hits associated with this SpacePoint.
525 
526  std::vector<art::Ptr<recob::Hit>> spthits;
528  for (auto const& ptr : av_spthits) {
529  spthits.push_back(ptr);
530  }
531 
532  // Fill single hit histograms.
533 
534  for (auto const& hitPtr : spthits) {
535  const recob::Hit& hit = *hitPtr;
536 
537  geo::View_t view = hit.View();
538 
539  if (view == geo::kU) {
540  fHAmpU->Fill(hit.PeakAmplitude());
541  fHAreaU->Fill(hit.Integral());
542  fHSumU->Fill(hit.SummedADC());
543  }
544  if (view == geo::kV) {
545  fHAmpV->Fill(hit.PeakAmplitude());
546  fHAreaV->Fill(hit.Integral());
547  fHSumV->Fill(hit.SummedADC());
548  }
549  if (view == geo::kZ) {
550  fHAmpW->Fill(hit.PeakAmplitude());
551  fHAreaW->Fill(hit.Integral());
552  fHSumW->Fill(hit.SummedADC());
553  }
554  }
555 
556  if (mc && fUseMC) {
557 
559 
560  try {
561  std::vector<double> mcxyz = bt_serv->SpacePointHitsToWeightedXYZ(clockData, spthits);
562  fHMCdx->Fill(spt.XYZ()[0] - mcxyz[0]);
563  fHMCdy->Fill(spt.XYZ()[1] - mcxyz[1]);
564  fHMCdz->Fill(spt.XYZ()[2] - mcxyz[2]);
565  if (spt.ErrXYZ()[0] > 0.)
566  fHMCxpull->Fill((spt.XYZ()[0] - mcxyz[0]) / std::sqrt(spt.ErrXYZ()[0]));
567  if (spt.ErrXYZ()[2] > 0.)
568  fHMCypull->Fill((spt.XYZ()[1] - mcxyz[1]) / std::sqrt(spt.ErrXYZ()[2]));
569  if (spt.ErrXYZ()[5] > 0.)
570  fHMCzpull->Fill((spt.XYZ()[2] - mcxyz[2]) / std::sqrt(spt.ErrXYZ()[5]));
571  }
572  catch (cet::exception&) {
573  }
574  }
575  }
576  }
Float_t x
Definition: compare.C:6
void reserve(size_type n)
Definition: PtrVector.h:337
constexpr to_element_t to_element
Definition: ToElement.h:25
TTree * t1
Definition: plottest35.C:26
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
Planes which measure V.
Definition: geo_types.h:136
CryostatID_t Cryostat
Index of cryostat.
Definition: geo_types.h:211
Planes which measure Z direction.
Definition: geo_types.h:138
float Integral() const
Integral under the calibrated signal waveform of the hit, in tick x ADC units.
Definition: Hit.h:244
geo::View_t View() const
View for the plane of the hit.
Definition: Hit.h:276
WireID_t Wire
Index of the wire within its plane.
Definition: geo_types.h:563
geo::WireID const & WireID() const
Initial tdc tick for hit.
Definition: Hit.h:280
bool isRealData() const
Definition: Event.cc:53
std::vector< double > HitToXYZ(detinfo::DetectorClocksData const &clockData, const recob::Hit &hit) const
const art::PtrVector< recob::Hit > & getAssociatedHits(const recob::SpacePoint &spt) const
const SpacePointAlg fSptalgSep
float PeakAmplitude() const
The estimated amplitude of the hit at its peak, in ADC units.
Definition: Hit.h:232
void makeMCTruthSpacePoints(detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, const art::PtrVector< recob::Hit > &hits, std::vector< recob::SpacePoint > &spts) const
double separation(const art::PtrVector< recob::Hit > &hits) const
bool isValid() const noexcept
Definition: Handle.h:203
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
Definition: DumpUtils.h:289
Planes which measure U.
Definition: geo_types.h:135
void hits()
Definition: readHits.C:15
void push_back(Ptr< U > const &p)
Definition: PtrVector.h:435
void makeSpacePoints(detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, const art::PtrVector< recob::Hit > &hits, std::vector< recob::SpacePoint > &spts) const
bool merge() const noexcept
Definition: SpacePointAlg.h:87
PlaneID_t Plane
Index of the plane within its TPC.
Definition: geo_types.h:481
double correctedTime(detinfo::DetectorPropertiesData const &detProp, const recob::Hit &hit) const
size_type size() const
Definition: PtrVector.h:302
Detector simulation of raw signals on wires.
TTree * t2
Definition: plottest35.C:36
float PeakTime() const
Time of the signal peak, in tick units.
Definition: Hit.h:220
bool getByLabel(std::string const &label, std::string const &instance, Handle< PROD > &result) const
const SpacePointAlg fSptalgTime
std::vector< double > SpacePointHitsToWeightedXYZ(detinfo::DetectorClocksData const &clockData, std::vector< art::Ptr< recob::Hit >> const &hits) const
#define MF_LOG_DEBUG(id)
float SummedADC() const
The sum of calibrated ADC counts of the hit (0. by default)
Definition: Hit.h:240
const SpacePointAlg fSptalgDefault
constexpr WireID()=default
Default constructor: an invalid TPC ID.
float SigmaPeakTime() const
Uncertainty for the signal peak, in tick units.
Definition: Hit.h:224
2D representation of charge deposited in the TDC/wire plane
Definition: Hit.h:46
TPCID_t TPC
Index of the TPC within its cryostat.
Definition: geo_types.h:399
cet::coded_exception< error, detail::translate > exception
Definition: exception.h:33
void trkf::SpacePointAna::bookHistograms ( bool  mc)
private

Definition at line 186 of file SpacePointAna_module.cc.

References geo::GeometryCore::DetHalfHeight(), geo::GeometryCore::DetHalfWidth(), geo::GeometryCore::DetLength(), dir, fBooked, fHAmpU, fHAmpV, fHAmpW, fHAreaU, fHAreaV, fHAreaW, fHchisq, fHDTUE, fHDTUPull, fHDTUV, fHDTUVU, fHDTUVV, fHDTVE, fHDTVPull, fHDTVW, fHDTVWV, fHDTVWW, fHDTWE, fHDTWPull, fHDTWU, fHDTWUU, fHDTWUW, fHMCdx, fHMCdy, fHMCdz, fHMCxpull, fHMCypull, fHMCzpull, fHS, fHSumU, fHSumV, fHSumW, fHx, fHy, fHz, fSptalgTime, fUseMC, geo::GeometryCore::Iterate(), geo::kU, geo::kV, geo::kZ, and trkf::SpacePointAlg::merge().

Referenced by analyze().

187  {
188  if (!fBooked) {
189  fBooked = true;
190 
193  art::TFileDirectory dir = tfs->mkdir("sptana", "SpacePointAna histograms");
194 
195  unsigned int nwiresU = 0, nwiresV = 0, nwiresW = 0;
196 
197  // Figure out the number of wires in U, V, and W planes.
198 
199  // Loop over cryostats, tpcs, and planes.
200 
201  for (auto const& pgeom : geom->Iterate<geo::PlaneGeo>()) {
202  unsigned int const nwires = pgeom.Nwires();
203  switch (pgeom.View()) {
204  case geo::kU: nwiresU = nwires; break;
205  case geo::kV: nwiresV = nwires; break;
206  case geo::kZ: nwiresW = nwires; break;
207  default: {
208  }
209  }
210  }
211 
212  if (mc && fUseMC) {
213  fHDTUE = dir.make<TH1F>("MCDTUE", "U-Drift Electrons Time Difference", 100, -5., 5.);
214  fHDTVE = dir.make<TH1F>("MCDTVE", "V-Drift Electrons Time Difference", 100, -5., 5.);
215  fHDTWE = dir.make<TH1F>("MCDTWE", "W-Drift Electrons Time Difference", 100, -5., 5.);
216  fHDTUPull = dir.make<TH1F>("MCDTUPull", "U-Drift Electrons Time Pull", 100, -50., 50.);
217  fHDTVPull = dir.make<TH1F>("MCDTVPull", "V-Drift Electrons Time Pull", 100, -50., 50.);
218  fHDTWPull = dir.make<TH1F>("MCDTWPull", "W-Drift Electrons Time Pull", 100, -50., 50.);
219  }
220  if (!fSptalgTime.merge()) {
221  fHDTUV = dir.make<TH1F>("DTUV", "U-V time difference", 100, -20., 20.);
222  fHDTVW = dir.make<TH1F>("DTVW", "V-W time difference", 100, -20., 20.);
223  fHDTWU = dir.make<TH1F>("DTWU", "W-U time difference", 100, -20., 20.);
224  fHDTUVU = dir.make<TH2F>(
225  "DTUVU", "U-V time difference vs. U", 100, 0., double(nwiresU), 100, -20., 20.);
226  fHDTUVV = dir.make<TH2F>(
227  "DTUVV", "U-V time difference vs. V", 100, 0., double(nwiresV), 100, -20., 20.);
228  fHDTVWV = dir.make<TH2F>(
229  "DTVWV", "V-W time difference vs. V", 100, 0., double(nwiresV), 100, -20., 20.);
230  fHDTVWW = dir.make<TH2F>(
231  "DTVWW", "V-W time difference vs. W", 100, 0., double(nwiresW), 100, -20., 20.);
232  fHDTWUW = dir.make<TH2F>(
233  "DTWUW", "W-U time difference vs. W", 100, 0., double(nwiresW), 100, -20., 20.);
234  fHDTWUU = dir.make<TH2F>(
235  "DTWUU", "W-U time difference vs. U", 100, 0., double(nwiresU), 100, -20., 20.);
236  fHS = dir.make<TH1F>("DS", "Spatial Separation", 100, -2., 2.);
237  }
238  fHchisq = dir.make<TH1F>("chisq", "Chisquare", 100, 0., 20.);
239 
240  fHx = dir.make<TH1F>("xpos", "X Position", 100, 0., 2. * geom->DetHalfWidth());
241  fHy =
242  dir.make<TH1F>("ypos", "Y Position", 100, -geom->DetHalfHeight(), geom->DetHalfHeight());
243  fHz = dir.make<TH1F>("zpos", "Z Position", 100, 0., geom->DetLength());
244  fHAmpU = dir.make<TH1F>("ampU", "U Hit Amplitude", 50, 0., 50.);
245  fHAmpV = dir.make<TH1F>("ampV", "V Hit Amplitude", 50, 0., 50.);
246  fHAmpW = dir.make<TH1F>("ampW", "W Hit Amplitude", 50, 0., 50.);
247  fHAreaU = dir.make<TH1F>("areaU", "U Hit Area", 100, 0., 500.);
248  fHAreaV = dir.make<TH1F>("areaV", "V Hit Area", 100, 0., 500.);
249  fHAreaW = dir.make<TH1F>("areaW", "W Hit Area", 100, 0., 500.);
250  fHSumU = dir.make<TH1F>("sumU", "U Hit Sum ADC", 100, 0., 500.);
251  fHSumV = dir.make<TH1F>("sumV", "V Hit Sum ADC", 100, 0., 500.);
252  fHSumW = dir.make<TH1F>("sumW", "W Hit Sum ADC", 100, 0., 500.);
253  if (mc && fUseMC) {
254  fHMCdx = dir.make<TH1F>("MCdx", "X MC Residual", 100, -1., 1.);
255  fHMCdy = dir.make<TH1F>("MCdy", "Y MC Residual", 100, -1., 1.);
256  fHMCdz = dir.make<TH1F>("MCdz", "Z MC Residual", 100, -1., 1.);
257  fHMCxpull = dir.make<TH1F>("MCxpull", "X MC Pull", 100, -50., 50.);
258  fHMCypull = dir.make<TH1F>("MCypull", "Y MC Pull", 100, -50., 50.);
259  fHMCzpull = dir.make<TH1F>("MCzpull", "Z MC Pull", 100, -50., 50.);
260  }
261  }
262  }
details::range_type< T > Iterate() const
Initializes the specified ID with the ID of the first cryostat.
Definition: GeometryCore.h:541
Planes which measure V.
Definition: geo_types.h:136
Planes which measure Z direction.
Definition: geo_types.h:138
Planes which measure U.
Definition: geo_types.h:135
Geometry information for a single wire plane.The plane is represented in the geometry by a solid whic...
Definition: PlaneGeo.h:78
bool merge() const noexcept
Definition: SpacePointAlg.h:87
const SpacePointAlg fSptalgTime
TDirectory * dir
Definition: macro.C:5
template<typename T , BranchType BT>
ProductToken< T > art::ModuleBase::consumes ( InputTag const &  tag)
protectedinherited

Definition at line 61 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumes().

62  {
63  return collector_.consumes<T, BT>(tag);
64  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ProductToken< T > consumes(InputTag const &)
ConsumesCollector & art::ModuleBase::consumesCollector ( )
protectedinherited

Definition at line 57 of file ModuleBase.cc.

References art::ModuleBase::collector_.

58  {
59  return collector_;
60  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename T , BranchType BT>
void art::ModuleBase::consumesMany ( )
protectedinherited

Definition at line 75 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumesMany().

76  {
77  collector_.consumesMany<T, BT>();
78  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::ModuleBase::consumesView ( InputTag const &  )
protectedinherited
template<typename T , BranchType BT>
ViewToken<T> art::ModuleBase::consumesView ( InputTag const &  tag)
inherited

Definition at line 68 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::consumesView().

69  {
70  return collector_.consumesView<T, BT>(tag);
71  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ViewToken< Element > consumesView(InputTag const &)
void art::detail::Analyzer::doBeginJob ( SharedResources const &  resources)
inherited

Definition at line 25 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

26  {
27  setupQueues(resources);
28  ProcessingFrame const frame{ScheduleID{}};
29  beginJobWithFrame(frame);
30  }
virtual void beginJobWithFrame(ProcessingFrame const &)=0
virtual void setupQueues(SharedResources const &)=0
bool art::detail::Analyzer::doBeginRun ( RunPrincipal rp,
ModuleContext const &  mc 
)
inherited

Definition at line 68 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

69  {
70  ProcessingFrame const frame{mc.scheduleID()};
71  beginRunWithFrame(std::as_const(rp).makeRun(mc), frame);
72  return true;
73  }
virtual void beginRunWithFrame(Run const &, ProcessingFrame const &)=0
bool art::detail::Analyzer::doBeginSubRun ( SubRunPrincipal srp,
ModuleContext const &  mc 
)
inherited

Definition at line 84 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

85  {
86  ProcessingFrame const frame{mc.scheduleID()};
87  beginSubRunWithFrame(std::as_const(srp).makeSubRun(mc), frame);
88  return true;
89  }
virtual void beginSubRunWithFrame(SubRun const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doEndJob ( )
inherited

Definition at line 33 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

34  {
35  ProcessingFrame const frame{ScheduleID{}};
36  endJobWithFrame(frame);
37  }
virtual void endJobWithFrame(ProcessingFrame const &)=0
bool art::detail::Analyzer::doEndRun ( RunPrincipal rp,
ModuleContext const &  mc 
)
inherited

Definition at line 76 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

77  {
78  ProcessingFrame const frame{mc.scheduleID()};
79  endRunWithFrame(std::as_const(rp).makeRun(mc), frame);
80  return true;
81  }
virtual void endRunWithFrame(Run const &, ProcessingFrame const &)=0
bool art::detail::Analyzer::doEndSubRun ( SubRunPrincipal srp,
ModuleContext const &  mc 
)
inherited

Definition at line 92 of file Analyzer.cc.

References art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

93  {
94  ProcessingFrame const frame{mc.scheduleID()};
95  endSubRunWithFrame(std::as_const(srp).makeSubRun(mc), frame);
96  return true;
97  }
virtual void endSubRunWithFrame(SubRun const &, ProcessingFrame const &)=0
bool art::detail::Analyzer::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 
)
inherited

Definition at line 100 of file Analyzer.cc.

References e, and art::ModuleContext::scheduleID().

Referenced by art::detail::Analyzer::Analyzer().

105  {
106  auto const e = std::as_const(ep).makeEvent(mc);
107  if (wantEvent(mc.scheduleID(), e)) {
108  ++counts_run;
109  ProcessingFrame const frame{mc.scheduleID()};
110  analyzeWithFrame(e, frame);
111  ++counts_passed;
112  }
113  return true;
114  }
bool wantEvent(ScheduleID id, Event const &e) const
Definition: Observer.cc:63
Float_t e
Definition: plot.C:35
virtual void analyzeWithFrame(Event const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doRespondToCloseInputFile ( FileBlock const &  fb)
inherited

Definition at line 47 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

48  {
49  ProcessingFrame const frame{ScheduleID{}};
51  }
TFile fb("Li6.root")
virtual void respondToCloseInputFileWithFrame(FileBlock const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doRespondToCloseOutputFiles ( FileBlock const &  fb)
inherited

Definition at line 61 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

62  {
63  ProcessingFrame const frame{ScheduleID{}};
65  }
virtual void respondToCloseOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
void art::detail::Analyzer::doRespondToOpenInputFile ( FileBlock const &  fb)
inherited

Definition at line 40 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

41  {
42  ProcessingFrame const frame{ScheduleID{}};
44  }
TFile fb("Li6.root")
virtual void respondToOpenInputFileWithFrame(FileBlock const &, ProcessingFrame const &)=0
void art::detail::Analyzer::doRespondToOpenOutputFiles ( FileBlock const &  fb)
inherited

Definition at line 54 of file Analyzer.cc.

Referenced by art::detail::Analyzer::Analyzer().

55  {
56  ProcessingFrame const frame{ScheduleID{}};
58  }
virtual void respondToOpenOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &)=0
TFile fb("Li6.root")
std::array< std::vector< ProductInfo >, NumBranchTypes > const & art::ModuleBase::getConsumables ( ) const
inherited

Definition at line 43 of file ModuleBase.cc.

References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().

44  {
45  return collector_.getConsumables();
46  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
std::array< std::vector< ProductInfo >, NumBranchTypes > const & getConsumables() const
Handle< TriggerResults > art::Observer::getTriggerResults ( Event const &  e) const
protectedinherited

Definition at line 75 of file Observer.cc.

References art::ProductRetriever::get(), and art::Observer::selectors_.

Referenced by art::OutputModule::doWriteEvent(), and art::Observer::wantAllEvents().

76  {
77  if (selectors_) {
78  return selectors_->getOneTriggerResults(e);
79  }
80 
81  // The following applies for cases where no SelectEvents entries
82  // exist.
83  Handle<TriggerResults> h;
84  if (e.get(empty_process_name, h)) {
85  return h;
86  }
87  return Handle<TriggerResults>{};
88  }
Float_t e
Definition: plot.C:35
std::optional< detail::ProcessAndEventSelectors > selectors_
Definition: Observer.h:79
std::unique_ptr< Worker > art::ModuleBase::makeWorker ( WorkerParams const &  wp)
inherited

Definition at line 37 of file ModuleBase.cc.

References art::ModuleBase::doMakeWorker(), and art::NumBranchTypes.

38  {
39  return doMakeWorker(wp);
40  }
virtual std::unique_ptr< Worker > doMakeWorker(WorkerParams const &wp)=0
template<typename T , BranchType BT>
ProductToken< T > art::ModuleBase::mayConsume ( InputTag const &  tag)
protectedinherited

Definition at line 82 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsume().

83  {
84  return collector_.mayConsume<T, BT>(tag);
85  }
ProductToken< T > mayConsume(InputTag const &)
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename T , BranchType BT>
void art::ModuleBase::mayConsumeMany ( )
protectedinherited

Definition at line 96 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeMany().

97  {
98  collector_.mayConsumeMany<T, BT>();
99  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::ModuleBase::mayConsumeView ( InputTag const &  )
protectedinherited
template<typename T , BranchType BT>
ViewToken<T> art::ModuleBase::mayConsumeView ( InputTag const &  tag)
inherited

Definition at line 89 of file ModuleBase.h.

References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeView().

90  {
91  return collector_.mayConsumeView<T, BT>(tag);
92  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
ViewToken< Element > mayConsumeView(InputTag const &)
ModuleDescription const & art::ModuleBase::moduleDescription ( ) const
inherited

Definition at line 13 of file ModuleBase.cc.

References art::errors::LogicError.

Referenced by art::OutputModule::doRespondToOpenInputFile(), art::OutputModule::doWriteEvent(), art::Modifier::fillProductDescriptions(), art::OutputModule::makePlugins_(), art::OutputWorker::OutputWorker(), reco::shower::LArPandoraModularShowerCreation::produce(), art::Modifier::registerProducts(), and art::OutputModule::registerProducts().

14  {
15  if (md_.has_value()) {
16  return *md_;
17  }
18 
20  "There was an error while calling moduleDescription().\n"}
21  << "The moduleDescription() base-class member function cannot be called\n"
22  "during module construction. To determine which module is "
23  "responsible\n"
24  "for calling it, find the '<module type>:<module "
25  "label>@Construction'\n"
26  "tag in the message prefix above. Please contact artists@fnal.gov\n"
27  "for guidance.\n";
28  }
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
std::optional< ModuleDescription > md_
Definition: ModuleBase.h:55
string const & art::Observer::processName ( ) const
protectedinherited

Definition at line 57 of file Observer.cc.

References art::Observer::process_name_.

Referenced by art::FileDumperOutput::printPrincipal().

58  {
59  return process_name_;
60  }
std::string process_name_
Definition: Observer.h:76
void art::ModuleBase::setModuleDescription ( ModuleDescription const &  md)
inherited

Definition at line 31 of file ModuleBase.cc.

References art::ModuleBase::md_.

32  {
33  md_ = md;
34  }
std::optional< ModuleDescription > md_
Definition: ModuleBase.h:55
void art::ModuleBase::sortConsumables ( std::string const &  current_process_name)
inherited

Definition at line 49 of file ModuleBase.cc.

References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().

50  {
51  // Now that we know we have seen all the consumes declarations,
52  // sort the results for fast lookup later.
53  collector_.sortConsumables(current_process_name);
54  }
ConsumesCollector collector_
Definition: ModuleBase.h:56
void sortConsumables(std::string const &current_process_name)
bool art::Observer::wantAllEvents ( ) const
inlineprotectednoexceptinherited

Definition at line 31 of file Observer.h.

References e, art::Observer::getTriggerResults(), art::Observer::wantAllEvents_, and art::Observer::wantEvent().

32  {
33  return wantAllEvents_;
34  }
bool wantAllEvents_
Definition: Observer.h:75
bool art::Observer::wantEvent ( ScheduleID  id,
Event const &  e 
) const
protectedinherited

Definition at line 63 of file Observer.cc.

References art::Observer::rejectors_, art::Observer::selectors_, and art::Observer::wantAllEvents_.

Referenced by art::OutputModule::doEvent(), art::OutputModule::doWriteEvent(), and art::Observer::wantAllEvents().

64  {
65  if (wantAllEvents_) {
66  return true;
67  }
68  bool const select_event = selectors_ ? selectors_->matchEvent(id, e) : true;
69  bool const reject_event =
70  rejectors_ ? rejectors_->matchEvent(id, e) : false;
71  return select_event and not reject_event;
72  }
bool wantAllEvents_
Definition: Observer.h:75
std::optional< detail::ProcessAndEventSelectors > rejectors_
Definition: Observer.h:80
Float_t e
Definition: plot.C:35
std::optional< detail::ProcessAndEventSelectors > selectors_
Definition: Observer.h:79

Member Data Documentation

bool trkf::SpacePointAna::fBooked
private

Definition at line 77 of file SpacePointAna_module.cc.

Referenced by bookHistograms().

std::string trkf::SpacePointAna::fClusterModuleLabel
private

Definition at line 66 of file SpacePointAna_module.cc.

Referenced by analyze(), and SpacePointAna().

TH1F* trkf::SpacePointAna::fHAmpU
private

Definition at line 98 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAmpV
private

Definition at line 99 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAmpW
private

Definition at line 100 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAreaU
private

Definition at line 101 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAreaV
private

Definition at line 102 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAreaW
private

Definition at line 103 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHchisq
private

Definition at line 94 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTUE
private

Definition at line 78 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTUPull
private

Definition at line 81 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTUV
private

Definition at line 84 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTUVU
private

Definition at line 87 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTUVV
private

Definition at line 88 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTVE
private

Definition at line 79 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTVPull
private

Definition at line 82 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTVW
private

Definition at line 85 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTVWV
private

Definition at line 89 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTVWW
private

Definition at line 90 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTWE
private

Definition at line 80 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTWPull
private

Definition at line 83 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTWU
private

Definition at line 86 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTWUU
private

Definition at line 92 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTWUW
private

Definition at line 91 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

std::string trkf::SpacePointAna::fHitModuleLabel
private

Definition at line 64 of file SpacePointAna_module.cc.

Referenced by analyze(), and SpacePointAna().

TH1F* trkf::SpacePointAna::fHMCdx
private

Definition at line 107 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCdy
private

Definition at line 108 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCdz
private

Definition at line 109 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCxpull
private

Definition at line 110 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCypull
private

Definition at line 111 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCzpull
private

Definition at line 112 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHS
private

Definition at line 93 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHSumU
private

Definition at line 104 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHSumV
private

Definition at line 105 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHSumW
private

Definition at line 106 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHx
private

Definition at line 95 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHy
private

Definition at line 96 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHz
private

Definition at line 97 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

double trkf::SpacePointAna::fMaxX
private

Definition at line 69 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMaxY
private

Definition at line 71 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMaxZ
private

Definition at line 73 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMinX
private

Definition at line 68 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMinY
private

Definition at line 70 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMinZ
private

Definition at line 72 of file SpacePointAna_module.cc.

Referenced by analyze().

int trkf::SpacePointAna::fNumEvent
private

Definition at line 116 of file SpacePointAna_module.cc.

Referenced by analyze().

const SpacePointAlg trkf::SpacePointAna::fSptalgDefault
private

Definition at line 63 of file SpacePointAna_module.cc.

Referenced by analyze().

const SpacePointAlg trkf::SpacePointAna::fSptalgSep
private

Definition at line 62 of file SpacePointAna_module.cc.

Referenced by analyze().

const SpacePointAlg trkf::SpacePointAna::fSptalgTime
private

Definition at line 61 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

bool trkf::SpacePointAna::fUseClusterHits
private

Definition at line 65 of file SpacePointAna_module.cc.

Referenced by analyze(), and SpacePointAna().

bool trkf::SpacePointAna::fUseMC
private

Definition at line 67 of file SpacePointAna_module.cc.

Referenced by analyze(), bookHistograms(), and SpacePointAna().


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