All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Classes | Functions | Variables
hit Namespace Reference

Detector simulation of raw signals on wires. More...

Namespaces

 details
 

Classes

class  ICARUShitFitCache
 Customized function cache for ICARUS hit shape. More...
 
class  ICARUSlongHitFitCache
 Customized function cache for ICARUS long hit shape. More...
 
class  ICARUSHitFinder
 
class  DumpHits
 Prints the content of all the hits on screen. More...
 
class  DisambigCheater
 
class  DPRawHitFinder
 
class  FFTHitFinder
 
class  GausHitFinder
 
class  GausHitFinderAna
 Base class for creation of raw signals on wires. More...
 
struct  HitInfo
 
struct  WireROIInfo
 
class  HitAnaAlgException
 
class  HitAnaAlg
 
class  HitAnaModule
 
class  HitCheater
 
class  HitFilterAlg
 
class  HitFinder
 
class  HitFinderAna
 Base class for creation of raw signals on wires. More...
 
class  MCHitAnaExample
 
class  MCHitFinder
 
class  RawHitFinder
 
class  RegionAboveThresholdFinder
 
class  RFFHitFinder
 
class  RFFHitFinderAlg
 
struct  SignalSetComp
 
class  RFFHitFitter
 
class  TTHitFinder
 
class  CCHitFinderAlg
 Hit finder algorithm designed to work with Cluster Crawler. More...
 
class  GausFitCache
 A set of TF1 linear sum of base functions (Gaussians) More...
 
class  CompiledGausFitCache
 A set of TF1 linear sum of Gaussians. More...
 
class  CompiledTruncatedGausFitCache
 A set of TF1 linear sum of truncated Gaussians. More...
 
class  MagDriftAna
 Base class for creation of raw signals on wires. More...
 
class  HitAnaAlgTest
 

Functions

 fLongPulseWidthVec (pset.get< std::vector< int >>("LongPulseWidth", std::vector< int >()={16, 16, 16}))
 
 fMaxMultiHit (pset.get< int >("MaxMultiHit"))
 
 fAreaMethod (pset.get< int >("AreaMethod"))
 
 fAreaNormsVec (FillOutHitParameterVector(pset.get< std::vector< double >>("AreaNorms")))
 
 fChi2NDF (pset.get< double >("Chi2NDF"))
 
 fPulseHeightCuts (pset.get< std::vector< float >>("PulseHeightCuts", std::vector< float >()={3.0, 3.0, 3.0}))
 
 fPulseWidthCuts (pset.get< std::vector< float >>("PulseWidthCuts", std::vector< float >()={2.0, 1.5, 1.0}))
 
 fPulseRatioCuts (pset.get< std::vector< float >>("PulseRatioCuts", std::vector< float >()={0.35, 0.40, 0.20}))
 

Variables

hit::HitAnaAlgException hitanaalgexception
 

Detailed Description

Detector simulation of raw signals on wires.

Title: HitAnaModule Author: wketc.nosp@m.hum@.nosp@m.lanl..nosp@m.gov Inputs: recob::Wire (calibrated), recob::Hit, Assns<recob::Wire, recob::Hit> Outputs: validation histograms

Description: This module is intended to be yet another hit analyzer module. Its intention is (1) to compare hit-finding modules against each other, and eventually (2) to compare those to truth

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

Description: Class that finds a region above threshold in which to do hit-finding.

Input: Vector of floats (like a recob::Wire vector) Output: Vector of begin times, and vector of end times.

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

Description: Class that does the base RFF algorithm. RFF works by simplifiying a Gaussian fit by dividing a pulse by its derivative. for a Guassian, the result is a line, with the slope and intercept related to the sigma and mean of the Gaussian.

Input: Signal (vector of floats) Output: Guassian means and sigmas

Title: TTHitFinder class Author: wketc.nosp@m.hum@.nosp@m.lanl..nosp@m.gov Inputs: recob::Wire (calibrated) Outputs: recob::Hit

Description: This module, TimeTickHitFinder (or TTHitFinder for short) is designed to produce a minimal hit object, that is simple a time tick above threshold. There is intention to allow for overlap of hits, with a downstream app that will need to clean it up.

CCHitFinder class

Bruce Baller, balle.nosp@m.r@fn.nosp@m.al.go.nosp@m.v

Find hits for ClusterCrawler and put them in a temporary struct. These hits may be modified by ClusterCrawler before saving them in the event

Function Documentation

hit::fAreaMethod ( pset.get< int >  "AreaMethod")
hit::fAreaNormsVec ( FillOutHitParameterVector(pset.get< std::vector< double >>("AreaNorms"))  )
hit::fChi2NDF ( pset.get< double >  "Chi2NDF")
hit::fLongPulseWidthVec ( pset.get< std::vector< int >>  "LongPulseWidth", std::vector< int >()={16, 16, 16})
hit::fMaxMultiHit ( pset.get< int >  "MaxMultiHit")
hit::fPulseHeightCuts ( pset.get< std::vector< float >>  "PulseHeightCuts", std::vector< float >()={3.0, 3.0, 3.0})
hit::fPulseRatioCuts ( pset.get< std::vector< float >>  "PulseRatioCuts", std::vector< float >()={0.35, 0.40, 0.20})

Definition at line 126 of file GausHitFinder_module.cc.

127  {0.35, 0.40, 0.20}))
128  {
129  if (fFillHists && art::Globals::instance()->nthreads() > 1u) {
130  throw art::Exception(art::errors::Configuration)
131  << "Cannot fill histograms when multiple threads configured, please set fFillHists to "
132  "false or change number of threads to 1\n";
133  }
134  async<art::InEvent>();
135  if (fFilterHits) {
136  fHitFilterAlg = std::make_unique<HitFilterAlg>(pset.get<fhicl::ParameterSet>("HitFilterAlg"));
137  }
138 
139  // recover the tool to do the candidate hit finding
140  // Recover the vector of fhicl parameters for the ROI tools
141  const fhicl::ParameterSet& hitFinderTools = pset.get<fhicl::ParameterSet>("HitFinderToolVec");
142 
143  fHitFinderToolVec.resize(hitFinderTools.get_pset_names().size());
144 
145  for (const std::string& hitFinderTool : hitFinderTools.get_pset_names()) {
146  const fhicl::ParameterSet& hitFinderToolParamSet =
147  hitFinderTools.get<fhicl::ParameterSet>(hitFinderTool);
148  size_t planeIdx = hitFinderToolParamSet.get<size_t>("Plane");
149 
150  fHitFinderToolVec.at(planeIdx) =
151  art::make_tool<reco_tool::ICandidateHitFinder>(hitFinderToolParamSet);
152  }
153 
154  // Recover the peak fitting tool
155  fPeakFitterTool =
156  art::make_tool<reco_tool::IPeakFitter>(pset.get<fhicl::ParameterSet>("PeakFitter"));
157 
158  // let HitCollectionCreator declare that we are going to produce
159  // hits and associations with wires and raw digits
160  // We want the option to output two hit collections, one filtered
161  // and one with all hits. The key to doing this will be a non-null
162  // instance name for the second collection
163  // (with no particular product label)
165  producesCollector(), fAllHitsInstanceName, true, false); //fMakeRawDigitAssns);
166 
167  // and now the filtered hits...
168  if (fAllHitsInstanceName != "")
170  producesCollector(), "", true, false); //fMakeRawDigitAssns);
171 
172  return;
173  } // GausHitFinder::GausHitFinder()
const std::string instance
static void declare_products(art::ProducesCollector &collector, std::string instance_name="", bool doWireAssns=true, bool doRawDigitAssns=true)
Declares the hit products we are going to fill.
Definition: HitCreator.cxx:248
hit::fPulseWidthCuts ( pset.get< std::vector< float >>  "PulseWidthCuts", std::vector< float >()={2.0, 1.5, 1.0})

Variable Documentation

hit::HitAnaAlgException hit::hitanaalgexception