LArSoft  v10_04_05
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 {false}
 
TH1F * fHDTUE {nullptr}
 
TH1F * fHDTVE {nullptr}
 
TH1F * fHDTWE {nullptr}
 
TH1F * fHDTUPull {nullptr}
 
TH1F * fHDTVPull {nullptr}
 
TH1F * fHDTWPull {nullptr}
 
TH1F * fHDTUV {nullptr}
 
TH1F * fHDTVW {nullptr}
 
TH1F * fHDTWU {nullptr}
 
TH2F * fHDTUVU {nullptr}
 
TH2F * fHDTUVV {nullptr}
 
TH2F * fHDTVWV {nullptr}
 
TH2F * fHDTVWW {nullptr}
 
TH2F * fHDTWUW {nullptr}
 
TH2F * fHDTWUU {nullptr}
 
TH1F * fHS {nullptr}
 
TH1F * fHchisq {nullptr}
 
TH1F * fHx {nullptr}
 
TH1F * fHy {nullptr}
 
TH1F * fHz {nullptr}
 
TH1F * fHAmpU {nullptr}
 
TH1F * fHAmpV {nullptr}
 
TH1F * fHAmpW {nullptr}
 
TH1F * fHAreaU {nullptr}
 
TH1F * fHAreaV {nullptr}
 
TH1F * fHAreaW {nullptr}
 
TH1F * fHSumU {nullptr}
 
TH1F * fHSumV {nullptr}
 
TH1F * fHSumW {nullptr}
 
TH1F * fHMCdx {nullptr}
 
TH1F * fHMCdy {nullptr}
 
TH1F * fHMCdz {nullptr}
 
TH1F * fHMCxpull {nullptr}
 
TH1F * fHMCypull {nullptr}
 
TH1F * fHMCzpull {nullptr}
 
int fNumEvent {0}
 

Detailed Description

Definition at line 51 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 122 of file SpacePointAna_module.cc.

References fClusterModuleLabel, fHitModuleLabel, fUseClusterHits, and fUseMC.

123  : EDAnalyzer(pset)
124  , fSptalgTime(pset.get<fhicl::ParameterSet>("SpacePointAlgTime"))
125  , fSptalgSep(pset.get<fhicl::ParameterSet>("SpacePointAlgSep"))
126  , fSptalgDefault(pset.get<fhicl::ParameterSet>("SpacePointAlgDefault"))
127  , fHitModuleLabel(pset.get<std::string>("HitModuleLabel"))
128  , fUseClusterHits(pset.get<bool>("UseClusterHits"))
129  , fClusterModuleLabel(pset.get<std::string>("ClusterModuleLabel"))
130  , fUseMC(pset.get<bool>("UseMC"))
131  , fMinX(pset.get<double>("MinX", -1.e10))
132  , fMaxX(pset.get<double>("MaxX", 1.e10))
133  , fMinY(pset.get<double>("MinY", -1.e10))
134  , fMaxY(pset.get<double>("MaxY", 1.e10))
135  , fMinZ(pset.get<double>("MinZ", -1.e10))
136  , fMaxZ(pset.get<double>("MaxZ", 1.e10))
137  {
138  mf::LogInfo("SpacePointAna") << "SpacePointAna configured with the following parameters:\n"
139  << " HitModuleLabel = " << fHitModuleLabel << "\n"
140  << " UseClusterHits = " << fUseClusterHits << "\n"
141  << " ClusterModuleLabel = " << fClusterModuleLabel << "\n"
142  << " UseMC = " << fUseMC;
143  }
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 224 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(), recob::Hit::ROISummedADC(), trkf::SpacePointAlg::separation(), recob::Hit::SigmaPeakTime(), art::PtrVector< T >::size(), cheat::BackTrackerService::SpacePointHitsToWeightedXYZ(), 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.

225  {
226  ++fNumEvent;
227 
228  // Make sure histograms are booked.
229 
230  bool mc = !evt.isRealData();
231  bookHistograms(mc);
232 
233  // Get Services.
234 
236 
237  // Get Hits.
238 
240 
241  if (fUseClusterHits) {
242 
243  // Get clusters.
244 
246  evt.getByLabel(fClusterModuleLabel, clusterh);
247 
248  // Get hits from all clusters.
250 
251  if (clusterh.isValid()) {
252  int nclus = clusterh->size();
253 
254  for (int i = 0; i < nclus; ++i) {
255  art::Ptr<recob::Cluster> pclus(clusterh, i);
256  std::vector<art::Ptr<recob::Hit>> clushits = fm.at(i);
257  int nhits = clushits.size();
258  hits.reserve(hits.size() + nhits);
259 
260  for (std::vector<art::Ptr<recob::Hit>>::const_iterator ihit = clushits.begin();
261  ihit != clushits.end();
262  ++ihit) {
263  hits.push_back(*ihit);
264  }
265  }
266  }
267  }
268  else {
269 
270  // Get unclustered hits.
271 
273  evt.getByLabel(fHitModuleLabel, hith);
274  if (hith.isValid()) {
275  int nhits = hith->size();
276  hits.reserve(nhits);
277 
278  for (int i = 0; i < nhits; ++i)
279  hits.push_back(art::Ptr<recob::Hit>(hith, i));
280  }
281  }
282 
283  // Fill histograms that don't depend on space points.
284 
285  auto const clockData = art::ServiceHandle<detinfo::DetectorClocksService const>()->DataFor(evt);
286  auto const detProp =
288 
289  if (mc && fUseMC) {
290 
292 
293  // Loop over hits and fill hit-electron time difference histogram.
294 
295  for (auto const& hitPtr : hits) {
296  const recob::Hit& hit = *hitPtr;
297 
298  double tpeak = hit.PeakTime();
299  double terr = hit.SigmaPeakTime();
300 
301  bool tav_ok = true;
302  double tav = 0.;
303  try {
304  std::vector<double> hitxyz = bt_serv->HitToXYZ(clockData, hit);
305  tav = detProp.ConvertXToTicks(
306  hitxyz[0], hit.WireID().Plane, hit.WireID().TPC, hit.WireID().Cryostat);
307  }
308  catch (cet::exception& x) {
309  tav_ok = false;
310  }
311  if (tav_ok) {
312  if (hit.View() == geo::kU) {
313  fHDTUE->Fill(tpeak - tav);
314  fHDTUPull->Fill((tpeak - tav) / terr);
315  }
316  else if (hit.View() == geo::kV) {
317  fHDTVE->Fill(tpeak - tav);
318  fHDTVPull->Fill((tpeak - tav) / terr);
319  }
320  else if (hit.View() == geo::kZ) {
321  fHDTWE->Fill(tpeak - tav);
322  fHDTWPull->Fill((tpeak - tav) / terr);
323  }
324  else
325  throw cet::exception("SpacePointAna") << "Bad view = " << hit.View() << "\n";
326  }
327  }
328  }
329 
330  std::vector<recob::SpacePoint> spts1; // For time histograms.
331  std::vector<recob::SpacePoint> spts2; // For separation histogram.
332  std::vector<recob::SpacePoint> spts3; // Default cuts.
333 
334  // If nonzero time cut is specified, make space points using that
335  // time cut (for time histograms).
336 
337  if (!fSptalgTime.merge()) {
338  if (mc && fUseMC)
339  fSptalgTime.makeMCTruthSpacePoints(clockData, detProp, hits, spts1);
340  else
341  fSptalgTime.makeSpacePoints(clockData, detProp, hits, spts1);
342 
343  // Report number of space points.
344 
345  MF_LOG_DEBUG("SpacePointAna")
346  << "Found " << spts1.size() << " space points using special time cut.";
347  }
348 
349  // If nonzero separation cut is specified, make space points using that
350  // separation cut (for separation histogram).
351 
352  if (!fSptalgSep.merge()) {
353  if (mc && fUseMC)
354  fSptalgSep.makeMCTruthSpacePoints(clockData, detProp, hits, spts2);
355  else
356  fSptalgSep.makeSpacePoints(clockData, detProp, hits, spts2);
357 
358  // Report number of space points.
359 
360  MF_LOG_DEBUG("SpacePointAna")
361  << "Found " << spts2.size() << " space points using special seperation cut.";
362  }
363 
364  // Make space points using default cuts.
365 
366  if (mc && fUseMC)
367  fSptalgDefault.makeMCTruthSpacePoints(clockData, detProp, hits, spts3);
368  else
369  fSptalgDefault.makeSpacePoints(clockData, detProp, hits, spts3);
370 
371  // Report number of space points.
372 
373  MF_LOG_DEBUG("SpacePointAna") << "Found " << spts3.size()
374  << " space points using default cuts.";
375 
376  if (!fSptalgTime.merge()) {
377 
378  // Loop over space points and fill time histograms.
379 
380  for (auto const& spt : spts1) {
381  if (spt.XYZ()[0] < fMinX || spt.XYZ()[0] > fMaxX || spt.XYZ()[1] < fMinY ||
382  spt.XYZ()[1] > fMaxY || spt.XYZ()[2] < fMinZ || spt.XYZ()[2] > fMaxZ)
383  continue;
384 
385  // Get hits associated with this SpacePoint.
386 
388 
389  // Make a double loop over hits and fill hit time difference histograms.
390 
391  for (auto const& hit1 : spthits | transform(to_element)) {
392  geo::WireID hit1WireID = hit1.WireID();
393  unsigned int tpc1 = hit1WireID.TPC;
394  unsigned int plane1 = hit1WireID.Plane;
395  unsigned int wire1 = hit1WireID.Wire;
396 
397  geo::View_t view1 = hit1.View();
398  double t1 = fSptalgTime.correctedTime(detProp, hit1);
399 
400  for (auto const& hit2 : spthits | transform(to_element)) {
401  geo::WireID hit2WireID = hit2.WireID();
402  unsigned int tpc2 = hit2WireID.TPC;
403  unsigned int plane2 = hit2WireID.Plane;
404  unsigned int wire2 = hit2WireID.Wire;
405 
406  // Require same tpc, different view.
407 
408  if (tpc1 == tpc2 && plane1 != plane2) {
409 
410  geo::View_t view2 = hit2.View();
411  double t2 = fSptalgTime.correctedTime(detProp, hit2);
412 
413  if (view1 == geo::kU) {
414  if (view2 == geo::kV) {
415  fHDTUV->Fill(t1 - t2);
416  fHDTUVU->Fill(double(wire1), t1 - t2);
417  fHDTUVV->Fill(double(wire2), t1 - t2);
418  }
419  if (view2 == geo::kZ) {
420  fHDTWU->Fill(t2 - t1);
421  fHDTWUW->Fill(double(wire2), t2 - t1);
422  fHDTWUU->Fill(double(wire1), t2 - t1);
423  }
424  }
425  if (view1 == geo::kV) {
426  if (view2 == geo::kZ) {
427  fHDTVW->Fill(t1 - t2);
428  fHDTVWV->Fill(double(wire1), t1 - t2);
429  fHDTVWW->Fill(double(wire2), t1 - t2);
430  }
431  if (view2 == geo::kU) {
432  fHDTUV->Fill(t2 - t1);
433  fHDTUVU->Fill(double(wire2), t2 - t1);
434  fHDTUVV->Fill(double(wire1), t2 - t1);
435  }
436  }
437  if (view1 == geo::kZ) {
438  if (view2 == geo::kU) {
439  fHDTWU->Fill(t1 - t2);
440  fHDTWUW->Fill(double(wire1), t1 - t2);
441  fHDTWUU->Fill(double(wire2), t1 - t2);
442  }
443  if (view2 == geo::kV) {
444  fHDTVW->Fill(t2 - t1);
445  fHDTVWV->Fill(double(wire2), t2 - t1);
446  fHDTVWW->Fill(double(wire1), t2 - t1);
447  }
448  }
449  }
450  }
451  }
452  }
453 
454  // Loop over space points and fill seperation histograms.
455 
456  for (auto const& spt : spts2) {
457  if (spt.XYZ()[0] < fMinX || spt.XYZ()[0] > fMaxX || spt.XYZ()[1] < fMinY ||
458  spt.XYZ()[1] > fMaxY || spt.XYZ()[2] < fMinZ || spt.XYZ()[2] > fMaxZ)
459  continue;
460 
461  // Get hits associated with this SpacePoint.
462 
464 
465  // Fill separation histogram.
466 
467  double sep = fSptalgSep.separation(spthits);
468  fHS->Fill(sep);
469  }
470  }
471 
472  // Loop over default space points and fill histograms.
473 
474  for (auto const& spt : spts3) {
475  if (spt.XYZ()[0] < fMinX || spt.XYZ()[0] > fMaxX || spt.XYZ()[1] < fMinY ||
476  spt.XYZ()[1] > fMaxY || spt.XYZ()[2] < fMinZ || spt.XYZ()[2] > fMaxZ)
477  continue;
478 
479  fHchisq->Fill(spt.Chisq());
480  fHx->Fill(spt.XYZ()[0]);
481  fHy->Fill(spt.XYZ()[1]);
482  fHz->Fill(spt.XYZ()[2]);
483 
484  // Get hits associated with this SpacePoint.
485 
486  std::vector<art::Ptr<recob::Hit>> spthits;
488  for (auto const& ptr : av_spthits) {
489  spthits.push_back(ptr);
490  }
491 
492  // Fill single hit histograms.
493 
494  for (auto const& hitPtr : spthits) {
495  const recob::Hit& hit = *hitPtr;
496 
497  geo::View_t view = hit.View();
498 
499  if (view == geo::kU) {
500  fHAmpU->Fill(hit.PeakAmplitude());
501  fHAreaU->Fill(hit.Integral());
502  fHSumU->Fill(hit.ROISummedADC());
503  }
504  if (view == geo::kV) {
505  fHAmpV->Fill(hit.PeakAmplitude());
506  fHAreaV->Fill(hit.Integral());
507  fHSumV->Fill(hit.ROISummedADC());
508  }
509  if (view == geo::kZ) {
510  fHAmpW->Fill(hit.PeakAmplitude());
511  fHAreaW->Fill(hit.Integral());
512  fHSumW->Fill(hit.ROISummedADC());
513  }
514  }
515 
516  if (mc && fUseMC) {
517 
519 
520  try {
521  std::vector<double> mcxyz = bt_serv->SpacePointHitsToWeightedXYZ(clockData, spthits);
522  fHMCdx->Fill(spt.XYZ()[0] - mcxyz[0]);
523  fHMCdy->Fill(spt.XYZ()[1] - mcxyz[1]);
524  fHMCdz->Fill(spt.XYZ()[2] - mcxyz[2]);
525  if (spt.ErrXYZ()[0] > 0.)
526  fHMCxpull->Fill((spt.XYZ()[0] - mcxyz[0]) / std::sqrt(spt.ErrXYZ()[0]));
527  if (spt.ErrXYZ()[2] > 0.)
528  fHMCypull->Fill((spt.XYZ()[1] - mcxyz[1]) / std::sqrt(spt.ErrXYZ()[2]));
529  if (spt.ErrXYZ()[5] > 0.)
530  fHMCzpull->Fill((spt.XYZ()[2] - mcxyz[2]) / std::sqrt(spt.ErrXYZ()[5]));
531  }
532  catch (cet::exception&) {
533  }
534  }
535  }
536  }
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:132
CryostatID_t Cryostat
Index of cryostat.
Definition: geo_types.h:195
Planes which measure Z direction.
Definition: geo_types.h:134
float Integral() const
Integral under the calibrated signal waveform of the hit, in tick x ADC units.
Definition: Hit.h:254
geo::View_t View() const
View for the plane of the hit.
Definition: Hit.h:286
WireID_t Wire
Index of the wire within its plane.
Definition: geo_types.h:430
geo::WireID const & WireID() const
Initial tdc tick for hit.
Definition: Hit.h:290
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:238
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:131
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:373
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 ROISummedADC() const
The sum of calibrated ADC counts of the ROI (0. by default)
Definition: Hit.h:246
float PeakTime() const
Time of the signal peak, in tick units.
Definition: Hit.h:226
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)
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:230
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:315
cet::coded_exception< error, detail::translate > exception
Definition: exception.h:33
void trkf::SpacePointAna::bookHistograms ( bool  mc)
private

Definition at line 145 of file SpacePointAna_module.cc.

References 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, Get, geo::kU, geo::kV, geo::kZ, trkf::SpacePointAlg::merge(), and geo::GeometryCore::TPC().

Referenced by analyze().

146  {
147  if (!fBooked) {
148  fBooked = true;
149 
151  auto const& tpc = geom->TPC({0, 0});
153  art::TFileDirectory dir = tfs->mkdir("sptana", "SpacePointAna histograms");
154 
155  unsigned int nwiresU = 0, nwiresV = 0, nwiresW = 0;
156 
157  // Figure out the number of wires in U, V, and W planes.
158 
159  // Loop over cryostats, tpcs, and planes.
160 
161  auto const& wireReadoutGeom = art::ServiceHandle<geo::WireReadout>()->Get();
162  for (auto const& pgeom : wireReadoutGeom.Iterate<geo::PlaneGeo>()) {
163  unsigned int const nwires = pgeom.Nwires();
164  switch (pgeom.View()) {
165  case geo::kU: nwiresU = nwires; break;
166  case geo::kV: nwiresV = nwires; break;
167  case geo::kZ: nwiresW = nwires; break;
168  default: {
169  }
170  }
171  }
172 
173  if (mc && fUseMC) {
174  fHDTUE = dir.make<TH1F>("MCDTUE", "U-Drift Electrons Time Difference", 100, -5., 5.);
175  fHDTVE = dir.make<TH1F>("MCDTVE", "V-Drift Electrons Time Difference", 100, -5., 5.);
176  fHDTWE = dir.make<TH1F>("MCDTWE", "W-Drift Electrons Time Difference", 100, -5., 5.);
177  fHDTUPull = dir.make<TH1F>("MCDTUPull", "U-Drift Electrons Time Pull", 100, -50., 50.);
178  fHDTVPull = dir.make<TH1F>("MCDTVPull", "V-Drift Electrons Time Pull", 100, -50., 50.);
179  fHDTWPull = dir.make<TH1F>("MCDTWPull", "W-Drift Electrons Time Pull", 100, -50., 50.);
180  }
181  if (!fSptalgTime.merge()) {
182  fHDTUV = dir.make<TH1F>("DTUV", "U-V time difference", 100, -20., 20.);
183  fHDTVW = dir.make<TH1F>("DTVW", "V-W time difference", 100, -20., 20.);
184  fHDTWU = dir.make<TH1F>("DTWU", "W-U time difference", 100, -20., 20.);
185  fHDTUVU = dir.make<TH2F>(
186  "DTUVU", "U-V time difference vs. U", 100, 0., double(nwiresU), 100, -20., 20.);
187  fHDTUVV = dir.make<TH2F>(
188  "DTUVV", "U-V time difference vs. V", 100, 0., double(nwiresV), 100, -20., 20.);
189  fHDTVWV = dir.make<TH2F>(
190  "DTVWV", "V-W time difference vs. V", 100, 0., double(nwiresV), 100, -20., 20.);
191  fHDTVWW = dir.make<TH2F>(
192  "DTVWW", "V-W time difference vs. W", 100, 0., double(nwiresW), 100, -20., 20.);
193  fHDTWUW = dir.make<TH2F>(
194  "DTWUW", "W-U time difference vs. W", 100, 0., double(nwiresW), 100, -20., 20.);
195  fHDTWUU = dir.make<TH2F>(
196  "DTWUU", "W-U time difference vs. U", 100, 0., double(nwiresU), 100, -20., 20.);
197  fHS = dir.make<TH1F>("DS", "Spatial Separation", 100, -2., 2.);
198  }
199  fHchisq = dir.make<TH1F>("chisq", "Chisquare", 100, 0., 20.);
200 
201  fHx = dir.make<TH1F>("xpos", "X Position", 100, 0., 2. * tpc.HalfWidth());
202  fHy = dir.make<TH1F>("ypos", "Y Position", 100, -tpc.HalfHeight(), tpc.HalfHeight());
203  fHz = dir.make<TH1F>("zpos", "Z Position", 100, 0., tpc.Length());
204  fHAmpU = dir.make<TH1F>("ampU", "U Hit Amplitude", 50, 0., 50.);
205  fHAmpV = dir.make<TH1F>("ampV", "V Hit Amplitude", 50, 0., 50.);
206  fHAmpW = dir.make<TH1F>("ampW", "W Hit Amplitude", 50, 0., 50.);
207  fHAreaU = dir.make<TH1F>("areaU", "U Hit Area", 100, 0., 500.);
208  fHAreaV = dir.make<TH1F>("areaV", "V Hit Area", 100, 0., 500.);
209  fHAreaW = dir.make<TH1F>("areaW", "W Hit Area", 100, 0., 500.);
210  fHSumU = dir.make<TH1F>("sumU", "U Hit Sum ADC", 100, 0., 500.);
211  fHSumV = dir.make<TH1F>("sumV", "V Hit Sum ADC", 100, 0., 500.);
212  fHSumW = dir.make<TH1F>("sumW", "W Hit Sum ADC", 100, 0., 500.);
213  if (mc && fUseMC) {
214  fHMCdx = dir.make<TH1F>("MCdx", "X MC Residual", 100, -1., 1.);
215  fHMCdy = dir.make<TH1F>("MCdy", "Y MC Residual", 100, -1., 1.);
216  fHMCdz = dir.make<TH1F>("MCdz", "Z MC Residual", 100, -1., 1.);
217  fHMCxpull = dir.make<TH1F>("MCxpull", "X MC Pull", 100, -50., 50.);
218  fHMCypull = dir.make<TH1F>("MCypull", "Y MC Pull", 100, -50., 50.);
219  fHMCzpull = dir.make<TH1F>("MCzpull", "Z MC Pull", 100, -50., 50.);
220  }
221  }
222  }
Planes which measure V.
Definition: geo_types.h:132
Planes which measure Z direction.
Definition: geo_types.h:134
cout<< "Opened file "<< fin<< " ixs= "<< ixs<< endl;if(ixs==0) hhh=(TH1F *) fff-> Get("h1")
Definition: AddMC.C:8
Planes which measure U.
Definition: geo_types.h:131
Geometry information for a single wire plane.The plane is represented in the geometry by a solid whic...
Definition: PlaneGeo.h:67
bool merge() const noexcept
Definition: SpacePointAlg.h:87
const SpacePointAlg fSptalgTime
TDirectory * dir
Definition: macro.C:5
TPCGeo const & TPC(TPCID const &tpcid=details::tpc_zero) const
Returns the specified TPC.
Definition: GeometryCore.h:448
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 {false}
private

Definition at line 78 of file SpacePointAna_module.cc.

Referenced by bookHistograms().

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

Definition at line 67 of file SpacePointAna_module.cc.

Referenced by analyze(), and SpacePointAna().

TH1F* trkf::SpacePointAna::fHAmpU {nullptr}
private

Definition at line 99 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAmpV {nullptr}
private

Definition at line 100 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAmpW {nullptr}
private

Definition at line 101 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAreaU {nullptr}
private

Definition at line 102 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAreaV {nullptr}
private

Definition at line 103 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHAreaW {nullptr}
private

Definition at line 104 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHchisq {nullptr}
private

Definition at line 95 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTUE {nullptr}
private

Definition at line 79 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTUPull {nullptr}
private

Definition at line 82 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTUV {nullptr}
private

Definition at line 85 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTUVU {nullptr}
private

Definition at line 88 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTUVV {nullptr}
private

Definition at line 89 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTVE {nullptr}
private

Definition at line 80 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTVPull {nullptr}
private

Definition at line 83 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTVW {nullptr}
private

Definition at line 86 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTVWV {nullptr}
private

Definition at line 90 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTVWW {nullptr}
private

Definition at line 91 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTWE {nullptr}
private

Definition at line 81 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTWPull {nullptr}
private

Definition at line 84 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHDTWU {nullptr}
private

Definition at line 87 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTWUU {nullptr}
private

Definition at line 93 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH2F* trkf::SpacePointAna::fHDTWUW {nullptr}
private

Definition at line 92 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

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

Definition at line 65 of file SpacePointAna_module.cc.

Referenced by analyze(), and SpacePointAna().

TH1F* trkf::SpacePointAna::fHMCdx {nullptr}
private

Definition at line 108 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCdy {nullptr}
private

Definition at line 109 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCdz {nullptr}
private

Definition at line 110 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCxpull {nullptr}
private

Definition at line 111 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCypull {nullptr}
private

Definition at line 112 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHMCzpull {nullptr}
private

Definition at line 113 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHS {nullptr}
private

Definition at line 94 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHSumU {nullptr}
private

Definition at line 105 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHSumV {nullptr}
private

Definition at line 106 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHSumW {nullptr}
private

Definition at line 107 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHx {nullptr}
private

Definition at line 96 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHy {nullptr}
private

Definition at line 97 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

TH1F* trkf::SpacePointAna::fHz {nullptr}
private

Definition at line 98 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

double trkf::SpacePointAna::fMaxX
private

Definition at line 70 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMaxY
private

Definition at line 72 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMaxZ
private

Definition at line 74 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMinX
private

Definition at line 69 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMinY
private

Definition at line 71 of file SpacePointAna_module.cc.

Referenced by analyze().

double trkf::SpacePointAna::fMinZ
private

Definition at line 73 of file SpacePointAna_module.cc.

Referenced by analyze().

int trkf::SpacePointAna::fNumEvent {0}
private

Definition at line 117 of file SpacePointAna_module.cc.

Referenced by analyze().

const SpacePointAlg trkf::SpacePointAna::fSptalgDefault
private

Definition at line 64 of file SpacePointAna_module.cc.

Referenced by analyze().

const SpacePointAlg trkf::SpacePointAna::fSptalgSep
private

Definition at line 63 of file SpacePointAna_module.cc.

Referenced by analyze().

const SpacePointAlg trkf::SpacePointAna::fSptalgTime
private

Definition at line 62 of file SpacePointAna_module.cc.

Referenced by analyze(), and bookHistograms().

bool trkf::SpacePointAna::fUseClusterHits
private

Definition at line 66 of file SpacePointAna_module.cc.

Referenced by analyze(), and SpacePointAna().

bool trkf::SpacePointAna::fUseMC
private

Definition at line 68 of file SpacePointAna_module.cc.

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


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