LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
PFParticleValidation class. More...
Classes | |
class | MatchingDetails |
MatchingDetails class. More... | |
class | SimpleMatchedPfo |
SimpleMatchedPfo class. More... | |
class | SimpleMCPrimary |
SimpleMCPrimary class. More... | |
Public Types | |
using | ModuleType = EDAnalyzer |
Public Member Functions | |
PFParticleValidation (fhicl::ParameterSet const &pset) | |
Constructor. More... | |
virtual | ~PFParticleValidation () |
Destructor. More... | |
void | beginJob () |
void | endJob () |
void | analyze (const art::Event &evt) |
void | reconfigure (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 ¤t_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 Types | |
typedef std::vector< SimpleMCPrimary > | SimpleMCPrimaryList |
typedef std::vector< SimpleMatchedPfo > | SimpleMatchedPfoList |
typedef std::map< int, MatchingDetails > | MatchingDetailsMap |
typedef std::map< SimpleMCPrimary, SimpleMatchedPfoList > | MCPrimaryMatchingMap |
typedef std::map< art::Ptr< recob::PFParticle >, HitVector > | PFParticleToMatchedHits |
typedef std::map< art::Ptr< simb::MCParticle >, PFParticleToMatchedHits > | MCParticleMatchingMap |
typedef std::set< int > | IntSet |
Private Member Functions | |
void | GetMCParticleMatchingMap (const PFParticlesToHits &recoParticlesToHits, const MCParticlesToHits &trueParticlesToHits, const HitsToMCParticles &hitsToTrueParticles, MCParticleMatchingMap &mcParticleMatchingMap) const |
Performing matching between true and reconstructed particles. More... | |
void | GetSimpleMCPrimaryList (const art::Event &evt, const MCParticlesToHits &mcParticlesToHits, const HitsToMCParticles &hitsToMCParticles, const MCParticleMatchingMap &mcParticleMatchingMap, SimpleMCPrimaryList &simpleMCPrimaryList) const |
Extract details of each mc primary (ordered by number of true hits) More... | |
void | GetMCPrimaryMatchingMap (const SimpleMCPrimaryList &simpleMCPrimaryList, const MCParticleMatchingMap &mcParticleMatchingMap, const PFParticlesToHits &pfParticlesToHits, MCPrimaryMatchingMap &mcPrimaryMatchingMap) const |
Obtain a sorted list of matched pfos for each mc primary. More... | |
bool | IsNeutrinoInduced (const art::Ptr< simb::MCParticle > pMCParticle, const MCParticlesToMCTruth &artMCParticlesToMCTruth) const |
Whether a mc particle is neutrino induced. More... | |
void | GetMCTruth (const art::Event &evt, MCTruthVector &mcTruthVector) const |
Obtain a vector of mc truth. More... | |
void | GetRecoNeutrinos (const art::Event &evt, PFParticleVector &recoNeutrinoVector) const |
Obtain a vector of reco neutrinos. More... | |
void | PrintAllOutput (const MCTruthVector &mcTruthVector, const PFParticleVector &recoNeutrinoVector, const MCPrimaryMatchingMap &mcPrimaryMatchingMap) const |
Print all the raw matching output to screen. More... | |
void | PerformMatching (const MCPrimaryMatchingMap &mcPrimaryMatchingMap, MatchingDetailsMap &matchingDetailsMap) const |
Apply a well-defined matching procedure to the comprehensive matches in the provided mc primary matching map. More... | |
bool | GetStrongestPfoMatch (const MCPrimaryMatchingMap &mcPrimaryMatchingMap, IntSet &usedMCIds, IntSet &usedPfoIds, MatchingDetailsMap &matchingDetailsMap) const |
Get the strongest pfo match (most matched hits) between an available mc primary and an available pfo. More... | |
void | GetRemainingPfoMatches (const MCPrimaryMatchingMap &mcPrimaryMatchingMap, const IntSet &usedPfoIds, MatchingDetailsMap &matchingDetailsMap) const |
Get the best matches for any pfos left-over after the strong matching procedure. More... | |
void | PrintMatchingOutput (const MCPrimaryMatchingMap &mcPrimaryMatchingMap, const MatchingDetailsMap &matchingDetailsMap) const |
Print the results of the matching procedure. More... | |
bool | IsGoodMCPrimary (const SimpleMCPrimary &simpleMCPrimary) const |
Whether a provided mc primary passes selection, based on number of "good" hits. More... | |
bool | HasMatch (const SimpleMCPrimary &simpleMCPrimary, const SimpleMatchedPfoList &simpleMatchedPfoList, const MatchingDetailsMap &matchingDetailsMap) const |
Whether a provided mc primary has a match, of any quality (use simple matched pfo list and information in matching details map) More... | |
bool | IsGoodMatch (const SimpleMCPrimary &simpleMCPrimary, const SimpleMatchedPfo &simpleMatchedPfo) const |
Whether a provided mc primary and pfo are deemed to be a good match. More... | |
unsigned int | CountHitsByType (const geo::View_t view, const HitVector &hitVector) const |
Count the number of hits, in a provided vector, of a specified view. More... | |
Static Private Member Functions | |
static bool | SortSimpleMCPrimaries (const SimpleMCPrimary &lhs, const SimpleMCPrimary &rhs) |
Sort simple mc primaries by number of mc hits. More... | |
static bool | SortSimpleMatchedPfos (const SimpleMatchedPfo &lhs, const SimpleMatchedPfo &rhs) |
Sort simple matched pfos by number of matched hits. More... | |
Private Attributes | |
std::string | m_hitfinderLabel |
The name/label of the hit producer module. More... | |
std::string | m_particleLabel |
The name/label of the particle producer module. More... | |
std::string | m_geantModuleLabel |
The name/label of the geant module. More... | |
std::string | m_backtrackerLabel |
The name/label of the back-tracker module. More... | |
bool | m_printAllToScreen |
Whether to print all/raw matching details to screen. More... | |
bool | m_printMatchingToScreen |
Whether to print matching output to screen. More... | |
bool | m_neutrinoInducedOnly |
Whether to consider only mc particles that were neutrino induced. More... | |
int | m_matchingMinPrimaryHits |
The minimum number of good mc primary hits used in matching scheme. More... | |
int | m_matchingMinHitsForGoodView |
The minimum number of good mc primary hits in given view to declare view to be good. More... | |
int | m_matchingMinPrimaryGoodViews |
The minimum number of good views for a mc primary. More... | |
bool | m_useSmallPrimaries |
Whether to consider matches to mc primaries with fewer than m_matchingMinPrimaryHits. More... | |
int | m_matchingMinSharedHits |
The minimum number of shared hits used in matching scheme. More... | |
float | m_matchingMinCompleteness |
The minimum particle completeness to declare a match. More... | |
float | m_matchingMinPurity |
The minimum particle purity to declare a match. More... | |
PFParticleValidation class.
Definition at line 23 of file PFParticleValidation_module.cc.
|
private |
Definition at line 211 of file PFParticleValidation_module.cc.
|
private |
Definition at line 116 of file PFParticleValidation_module.cc.
|
private |
Definition at line 121 of file PFParticleValidation_module.cc.
|
private |
Definition at line 118 of file PFParticleValidation_module.cc.
|
inherited |
Definition at line 22 of file EDAnalyzer.h.
|
private |
Definition at line 120 of file PFParticleValidation_module.cc.
|
private |
Definition at line 99 of file PFParticleValidation_module.cc.
|
private |
Definition at line 73 of file PFParticleValidation_module.cc.
lar_pandora::PFParticleValidation::PFParticleValidation | ( | fhicl::ParameterSet const & | pset | ) |
Constructor.
pset |
Definition at line 354 of file PFParticleValidation_module.cc.
References reconfigure().
|
virtual |
void lar_pandora::PFParticleValidation::analyze | ( | const art::Event & | evt | ) |
Definition at line 394 of file PFParticleValidation_module.cc.
References lar_pandora::LArPandoraHelper::BuildMCParticleHitMaps(), lar_pandora::LArPandoraHelper::BuildPFParticleHitMaps(), lar_pandora::LArPandoraHelper::CollectHits(), GetMCParticleMatchingMap(), GetMCPrimaryMatchingMap(), GetMCTruth(), GetRecoNeutrinos(), GetSimpleMCPrimaryList(), lar_pandora::LArPandoraHelper::kAddDaughters, m_backtrackerLabel, m_geantModuleLabel, m_hitfinderLabel, m_particleLabel, m_printAllToScreen, m_printMatchingToScreen, PerformMatching(), PrintAllOutput(), and PrintMatchingOutput().
|
virtual |
Reimplemented from art::EDAnalyzer.
Definition at line 386 of file PFParticleValidation_module.cc.
|
protectedinherited |
Definition at line 61 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumes().
|
protectedinherited |
|
protectedinherited |
Definition at line 75 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumesMany().
|
protectedinherited |
|
inherited |
Definition at line 68 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumesView().
|
private |
Count the number of hits, in a provided vector, of a specified view.
view | the view |
hitVector | the hit vector |
Definition at line 923 of file PFParticleValidation_module.cc.
Referenced by GetMCPrimaryMatchingMap(), and GetSimpleMCPrimaryList().
|
inherited |
Definition at line 25 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 68 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 84 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 33 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 76 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 92 of file Analyzer.cc.
References art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 100 of file Analyzer.cc.
References e, and art::ModuleContext::scheduleID().
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 47 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 61 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 40 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
inherited |
Definition at line 54 of file Analyzer.cc.
Referenced by art::detail::Analyzer::Analyzer().
|
virtual |
Reimplemented from art::EDAnalyzer.
Definition at line 390 of file PFParticleValidation_module.cc.
|
inherited |
Definition at line 43 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().
|
private |
Performing matching between true and reconstructed particles.
recoParticlesToHits | the mapping from reconstructed particles to hits |
trueParticlesToHits | the mapping from true particles to hits |
hitsToTrueParticles | the mapping from hits to true particles |
mcParticleMatchingMap | the output matches between all reconstructed and true particles |
Definition at line 459 of file PFParticleValidation_module.cc.
Referenced by analyze().
|
private |
Obtain a sorted list of matched pfos for each mc primary.
simpleMCPrimaryList | the simple mc primary list |
mcToFullPfoMatchingMap | the mc to full pfo matching map |
pfoToHitListMap | the pfo to hit list map |
mcPrimaryMatchingMap | to receive the populated mc primary matching map |
Definition at line 557 of file PFParticleValidation_module.cc.
References CountHitsByType(), art::Ptr< T >::get(), lar_pandora::LArPandoraHelper::IsNeutrino(), geo::kU, geo::kV, geo::kW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsU, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsV, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsTotal, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsU, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsV, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_pAddress, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_parentId, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_pdgCode, recob::PFParticle::Parent(), recob::PFParticle::PdgCode(), recob::PFParticle::Self(), and SortSimpleMatchedPfos().
Referenced by analyze().
|
private |
Obtain a vector of mc truth.
evt | the event |
mcNeutrinoVector | to receive the populated vector of mc truth |
Definition at line 643 of file PFParticleValidation_module.cc.
References lar_pandora::LArPandoraHelper::CollectMCParticles(), m_geantModuleLabel, and simb::MCTruth::NeutrinoSet().
Referenced by analyze().
|
private |
Obtain a vector of reco neutrinos.
evt | the event |
recoNeutrinoVector | to receive the populated vector of reco neutrinos |
Definition at line 662 of file PFParticleValidation_module.cc.
References lar_pandora::LArPandoraHelper::CollectPFParticles(), m_particleLabel, and lar_pandora::LArPandoraHelper::SelectNeutrinoPFParticles().
Referenced by analyze().
|
private |
Get the best matches for any pfos left-over after the strong matching procedure.
mcPrimaryMatchingMap | the input/raw mc primary matching map |
usedPfoIds | the list of pfo ids with an existing match |
matchingDetailsMap | the matching details map, to be populated |
Definition at line 778 of file PFParticleValidation_module.cc.
References IsGoodMCPrimary(), lar_pandora::PFParticleValidation::MatchingDetails::m_completeness, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_id, lar_pandora::PFParticleValidation::MatchingDetails::m_matchedPrimaryId, lar_pandora::PFParticleValidation::MatchingDetails::m_nMatchedHits, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, and m_useSmallPrimaries.
Referenced by PerformMatching().
|
private |
Extract details of each mc primary (ordered by number of true hits)
evt | the event |
mcParticlesToHits | the mc primary to hits map |
hitsToMCParticles | the hits to mc particles map |
mcParticleMatchingMap | the mc to particle to pf particle matching map (to record number of matched pf particles) |
simpleMCPrimaryList | to receive the populated simple mc primary list |
Definition at line 490 of file PFParticleValidation_module.cc.
References lar_pandora::LArPandoraHelper::CollectMCParticles(), CountHitsByType(), simb::MCParticle::E(), art::Ptr< T >::get(), IsNeutrinoInduced(), geo::kU, geo::kV, geo::kW, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_energy, m_geantModuleLabel, m_neutrinoInducedOnly, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMatchedPfos, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsU, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsV, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsW, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_pAddress, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_pdgCode, simb::MCParticle::PdgCode(), and SortSimpleMCPrimaries().
Referenced by analyze().
|
private |
Get the strongest pfo match (most matched hits) between an available mc primary and an available pfo.
mcPrimaryMatchingMap | the input/raw mc primary matching map |
usedMCIds | the list of mc primary ids with an existing match |
usedPfoIds | the list of pfo ids with an existing match |
matchingDetailsMap | the matching details map, to be populated |
Definition at line 735 of file PFParticleValidation_module.cc.
References IsGoodMatch(), IsGoodMCPrimary(), lar_pandora::PFParticleValidation::MatchingDetails::m_completeness, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_id, lar_pandora::PFParticleValidation::MatchingDetails::m_matchedPrimaryId, lar_pandora::PFParticleValidation::MatchingDetails::m_nMatchedHits, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, and m_useSmallPrimaries.
Referenced by PerformMatching().
|
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().
|
private |
Whether a provided mc primary has a match, of any quality (use simple matched pfo list and information in matching details map)
simpleMCPrimary | the simple mc primary |
simpleMatchedPfoList | the list of simple matched pfos |
matchingDetailsMap | the matching details map |
Definition at line 890 of file PFParticleValidation_module.cc.
References lar_pandora::PFParticleValidation::SimpleMCPrimary::m_id.
Referenced by PrintMatchingOutput().
|
private |
Whether a provided mc primary and pfo are deemed to be a good match.
simpleMCPrimary | the simple mc primary |
simpleMatchedPfo | the simple matched pfo |
Definition at line 905 of file PFParticleValidation_module.cc.
References m_matchingMinCompleteness, m_matchingMinPurity, m_matchingMinSharedHits, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, and lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsTotal.
Referenced by GetStrongestPfoMatch(), and PrintMatchingOutput().
|
private |
Whether a provided mc primary passes selection, based on number of "good" hits.
simpleMCPrimary | the simple mc primary |
Definition at line 874 of file PFParticleValidation_module.cc.
References m_matchingMinHitsForGoodView, m_matchingMinPrimaryGoodViews, m_matchingMinPrimaryHits, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsU, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsV, and lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsW.
Referenced by GetRemainingPfoMatches(), GetStrongestPfoMatch(), and PrintMatchingOutput().
|
private |
Whether a mc particle is neutrino induced.
pMCParticle | address of the mc particle |
artMCParticlesToMCTruth | the mapping from mc particles to mc truth |
Definition at line 543 of file PFParticleValidation_module.cc.
References simb::kBeamNeutrino, and simb::MCTruth::Origin().
Referenced by GetSimpleMCPrimaryList().
|
inherited |
Definition at line 37 of file ModuleBase.cc.
References art::ModuleBase::doMakeWorker(), and art::NumBranchTypes.
|
protectedinherited |
Definition at line 82 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsume().
|
protectedinherited |
Definition at line 96 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeMany().
|
protectedinherited |
|
inherited |
Definition at line 89 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeView().
|
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().
|
private |
Apply a well-defined matching procedure to the comprehensive matches in the provided mc primary matching map.
mcPrimaryMatchingMap | the input/raw mc primary matching map |
matchingDetailsMap | the matching details map, to be populated |
Definition at line 722 of file PFParticleValidation_module.cc.
References GetRemainingPfoMatches(), and GetStrongestPfoMatch().
Referenced by analyze().
|
private |
Print all the raw matching output to screen.
mcTruthVector | the mc truth vector |
recoNeutrinoVector | the reco neutrino vector |
mcPrimaryMatchingMap | the input/raw mc primary matching map |
Definition at line 672 of file PFParticleValidation_module.cc.
References lar_pandora::PFParticleValidation::SimpleMCPrimary::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsU, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsV, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsW, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsU, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsV, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsTotal, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsU, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsV, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_parentId, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_pdgCode, and lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_pdgCode.
Referenced by analyze().
|
private |
Print the results of the matching procedure.
mcPrimaryMatchingMap | the input/raw mc primary matching map |
matchingDetailsMap | the matching details map |
Definition at line 806 of file PFParticleValidation_module.cc.
References HasMatch(), if(), IsGoodMatch(), IsGoodMCPrimary(), lar_pandora::PFParticleValidation::SimpleMCPrimary::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_id, m_matchingMinCompleteness, m_matchingMinHitsForGoodView, m_matchingMinPrimaryGoodViews, m_matchingMinPrimaryHits, m_matchingMinPurity, m_matchingMinSharedHits, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsU, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsV, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsW, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsU, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsV, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsTotal, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsU, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsV, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsW, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_parentId, lar_pandora::PFParticleValidation::SimpleMCPrimary::m_pdgCode, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_pdgCode, and m_useSmallPrimaries.
Referenced by analyze().
|
protectedinherited |
Definition at line 57 of file Observer.cc.
References art::Observer::process_name_.
Referenced by art::FileDumperOutput::printPrincipal().
void lar_pandora::PFParticleValidation::reconfigure | ( | fhicl::ParameterSet const & | pset | ) |
Definition at line 366 of file PFParticleValidation_module.cc.
References fhicl::ParameterSet::get(), m_backtrackerLabel, m_geantModuleLabel, m_hitfinderLabel, m_matchingMinCompleteness, m_matchingMinHitsForGoodView, m_matchingMinPrimaryGoodViews, m_matchingMinPrimaryHits, m_matchingMinPurity, m_matchingMinSharedHits, m_neutrinoInducedOnly, m_particleLabel, m_printAllToScreen, m_printMatchingToScreen, and m_useSmallPrimaries.
Referenced by PFParticleValidation().
|
inherited |
|
inherited |
Definition at line 49 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().
|
staticprivate |
Sort simple matched pfos by number of matched hits.
lhs | the left-hand side |
rhs | the right-hand side |
Definition at line 947 of file PFParticleValidation_module.cc.
References lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_id, lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nMatchedHitsTotal, and lar_pandora::PFParticleValidation::SimpleMatchedPfo::m_nPfoHitsTotal.
Referenced by GetMCPrimaryMatchingMap().
|
staticprivate |
Sort simple mc primaries by number of mc hits.
lhs | the left-hand side |
rhs | the right-hand side |
Definition at line 937 of file PFParticleValidation_module.cc.
References lar_pandora::PFParticleValidation::SimpleMCPrimary::m_energy, and lar_pandora::PFParticleValidation::SimpleMCPrimary::m_nMCHitsTotal.
Referenced by GetSimpleMCPrimaryList().
|
inlineprotectednoexceptinherited |
Definition at line 31 of file Observer.h.
References e, art::Observer::getTriggerResults(), art::Observer::wantAllEvents_, and art::Observer::wantEvent().
|
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().
|
private |
The name/label of the back-tracker module.
Definition at line 312 of file PFParticleValidation_module.cc.
Referenced by analyze(), and reconfigure().
|
private |
The name/label of the geant module.
Definition at line 311 of file PFParticleValidation_module.cc.
Referenced by analyze(), GetMCTruth(), GetSimpleMCPrimaryList(), and reconfigure().
|
private |
The name/label of the hit producer module.
Definition at line 309 of file PFParticleValidation_module.cc.
Referenced by analyze(), and reconfigure().
|
private |
The minimum particle completeness to declare a match.
Definition at line 329 of file PFParticleValidation_module.cc.
Referenced by IsGoodMatch(), PrintMatchingOutput(), and reconfigure().
|
private |
The minimum number of good mc primary hits in given view to declare view to be good.
Definition at line 323 of file PFParticleValidation_module.cc.
Referenced by IsGoodMCPrimary(), PrintMatchingOutput(), and reconfigure().
|
private |
The minimum number of good views for a mc primary.
Definition at line 324 of file PFParticleValidation_module.cc.
Referenced by IsGoodMCPrimary(), PrintMatchingOutput(), and reconfigure().
|
private |
The minimum number of good mc primary hits used in matching scheme.
Definition at line 321 of file PFParticleValidation_module.cc.
Referenced by IsGoodMCPrimary(), PrintMatchingOutput(), and reconfigure().
|
private |
The minimum particle purity to declare a match.
Definition at line 330 of file PFParticleValidation_module.cc.
Referenced by IsGoodMatch(), PrintMatchingOutput(), and reconfigure().
|
private |
The minimum number of shared hits used in matching scheme.
Definition at line 328 of file PFParticleValidation_module.cc.
Referenced by IsGoodMatch(), PrintMatchingOutput(), and reconfigure().
|
private |
Whether to consider only mc particles that were neutrino induced.
Definition at line 318 of file PFParticleValidation_module.cc.
Referenced by GetSimpleMCPrimaryList(), and reconfigure().
|
private |
The name/label of the particle producer module.
Definition at line 310 of file PFParticleValidation_module.cc.
Referenced by analyze(), GetRecoNeutrinos(), and reconfigure().
|
private |
Whether to print all/raw matching details to screen.
Definition at line 314 of file PFParticleValidation_module.cc.
Referenced by analyze(), and reconfigure().
|
private |
Whether to print matching output to screen.
Definition at line 315 of file PFParticleValidation_module.cc.
Referenced by analyze(), and reconfigure().
|
private |
Whether to consider matches to mc primaries with fewer than m_matchingMinPrimaryHits.
Definition at line 327 of file PFParticleValidation_module.cc.
Referenced by GetRemainingPfoMatches(), GetStrongestPfoMatch(), PrintMatchingOutput(), and reconfigure().