LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Classes | |
struct | TreeParams_t |
For convenience: struct to define a set of parameters per shower to be stored in TTree. More... | |
Public Types | |
using | ModuleType = EDAnalyzer |
Public Member Functions | |
ShowerQuality (fhicl::ParameterSet const &p) | |
ShowerQuality (ShowerQuality const &)=delete | |
ShowerQuality (ShowerQuality &&)=delete | |
ShowerQuality & | operator= (ShowerQuality const &)=delete |
ShowerQuality & | operator= (ShowerQuality &&)=delete |
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 Member Functions | |
void | analyze (art::Event const &e) override |
void | beginJob () override |
void | SetShowerProducer (const std::string name) |
void | SetMCShowerProducer (const std::string name) |
void | SetSimChannelProducer (const std::string name) |
void | SetMaxEnergyCut (const double energy) |
Set maximum energy for MCShowers to be considered. More... | |
void | SetMinEnergyCut (const double energy) |
Set minimum energy for MCShowers to be considered. More... | |
void | InitializeAnaTree () |
Function to prepare TTree. More... | |
Private Attributes | |
::btutil::MCMatchAlg | fBTAlg |
Shower back tracking algorithm. More... | |
double | _mc_energy_min |
Minimum MC shower energy cut. More... | |
double | _mc_energy_max |
Maximum MC shower energy cut. More... | |
std::string | fShowerProducer |
Shower Producer's Name. More... | |
std::string | fMCShowerProducer |
MCShower Producer's Name. More... | |
std::string | fSimChannelProducer |
SimChannel Producer's Name. More... | |
TH1D * | hMatchCorrectness |
Matching correctness. More... | |
TH1D * | hVtxDX |
X difference (reco-MC) in cm. More... | |
TH1D * | hVtxDY |
Y difference (reco-MC) in cm. More... | |
TH1D * | hVtxDZ |
Z difference (reco-MC) in cm. More... | |
TH1D * | hVtxDR |
3D vtx distance between reco to MC in cm More... | |
TH1D * | hDCosX |
Direction unit vector X component difference. More... | |
TH1D * | hDCosY |
Direction unit vector Y component difference. More... | |
TH1D * | hDCosZ |
Direction unit vector Z component difference. More... | |
TH1D * | h3DAngleDiff |
Opening angle between reco & MC 3D direction. More... | |
TH2D * | hEnergyCorr |
Energy correlation reco (x) vs. MC (y) More... | |
TH1D * | hEnergyAssym |
Energy assym. parameter: (reco E - MC E) / (reco E + MC E) * 2. More... | |
TH1D * | hEnergyDiff |
Energy difference: reco E - MC E. More... | |
TH1D * | hMatchedClusterEff |
Matched 3D shower's cluster efficiency (combined across planes) More... | |
TH1D * | hMatchedClusterPur |
Matched 3D shower's cluster purity (combined across planes) More... | |
std::map< int, TH1D * > | mDEDX |
dEdx per particle per PDG code More... | |
TH1D * | hBestPlane |
Best plane id. More... | |
struct ShowerQuality::TreeParams_t | fTreeParams |
TTree * | fTree |
Analysis TTree. More... | |
Definition at line 34 of file ShowerQuality_module.cc.
|
inherited |
Definition at line 22 of file EDAnalyzer.h.
|
explicit |
Definition at line 146 of file ShowerQuality_module.cc.
References fTree, fhicl::ParameterSet::get(), h3DAngleDiff, hBestPlane, hDCosX, hDCosY, hDCosZ, hEnergyAssym, hEnergyCorr, hEnergyDiff, hMatchCorrectness, hMatchedClusterEff, hMatchedClusterPur, hVtxDR, hVtxDX, hVtxDY, hVtxDZ, mDEDX, SetMaxEnergyCut(), SetMCShowerProducer(), SetMinEnergyCut(), SetShowerProducer(), and SetSimChannelProducer().
|
delete |
|
delete |
|
overrideprivatevirtual |
Implements art::EDAnalyzer.
Definition at line 314 of file ShowerQuality_module.cc.
References _mc_energy_max, _mc_energy_min, ShowerQuality::TreeParams_t::best_plane_id, btutil::MCMatchAlg::BTAlg(), btutil::MCMatchAlg::BuildMap(), ShowerQuality::TreeParams_t::cluster_eff, ShowerQuality::TreeParams_t::cluster_pur, btutil::MCMatchAlg::ClusterEP(), energy, fBTAlg, fMCShowerProducer, fShowerProducer, fSimChannelProducer, fTree, fTreeParams, art::ProductRetriever::getValidHandle(), h3DAngleDiff, hBestPlane, hDCosX, hDCosY, hDCosZ, hEnergyAssym, hEnergyCorr, hEnergyDiff, hMatchCorrectness, hMatchedClusterEff, hMatchedClusterPur, hVtxDR, hVtxDX, hVtxDY, hVtxDZ, ShowerQuality::TreeParams_t::match_correctness, ShowerQuality::TreeParams_t::mc_containment, ShowerQuality::TreeParams_t::mc_dcosx, ShowerQuality::TreeParams_t::mc_dcosy, ShowerQuality::TreeParams_t::mc_dcosz, ShowerQuality::TreeParams_t::mc_energy, ShowerQuality::TreeParams_t::mc_pdgid, ShowerQuality::TreeParams_t::mc_reco_anglediff, ShowerQuality::TreeParams_t::mc_reco_dist, ShowerQuality::TreeParams_t::mc_x, ShowerQuality::TreeParams_t::mc_y, ShowerQuality::TreeParams_t::mc_z, btutil::MCBTAlg::MCQ(), mDEDX, art::Handle< T >::provenance(), ShowerQuality::TreeParams_t::reco_dcosx, ShowerQuality::TreeParams_t::reco_dcosy, ShowerQuality::TreeParams_t::reco_dcosz, ShowerQuality::TreeParams_t::reco_dedx, ShowerQuality::TreeParams_t::reco_energy, ShowerQuality::TreeParams_t::reco_x, ShowerQuality::TreeParams_t::reco_y, ShowerQuality::TreeParams_t::reco_z, btutil::MCMatchAlg::ShowerCorrectness(), and lar::dump::vector().
|
overrideprivatevirtual |
Reimplemented from art::EDAnalyzer.
Definition at line 184 of file ShowerQuality_module.cc.
References fMCShowerProducer, fShowerProducer, fSimChannelProducer, fTree, h3DAngleDiff, hBestPlane, hDCosX, hDCosY, hDCosZ, hEnergyAssym, hEnergyCorr, hEnergyDiff, hMatchCorrectness, hMatchedClusterEff, hMatchedClusterPur, hVtxDR, hVtxDX, hVtxDY, hVtxDZ, and InitializeAnaTree().
|
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().
|
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().
|
inherited |
Definition at line 43 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().
|
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 |
Function to prepare TTree.
Definition at line 564 of file ShowerQuality_module.cc.
References ShowerQuality::TreeParams_t::best_plane_id, ShowerQuality::TreeParams_t::cluster_eff, ShowerQuality::TreeParams_t::cluster_pur, DEFINE_ART_MODULE, fTree, fTreeParams, ShowerQuality::TreeParams_t::match_correctness, ShowerQuality::TreeParams_t::mc_containment, ShowerQuality::TreeParams_t::mc_dcosx, ShowerQuality::TreeParams_t::mc_dcosy, ShowerQuality::TreeParams_t::mc_dcosz, ShowerQuality::TreeParams_t::mc_energy, ShowerQuality::TreeParams_t::mc_pdgid, ShowerQuality::TreeParams_t::mc_reco_anglediff, ShowerQuality::TreeParams_t::mc_reco_dist, ShowerQuality::TreeParams_t::mc_x, ShowerQuality::TreeParams_t::mc_y, ShowerQuality::TreeParams_t::mc_z, ShowerQuality::TreeParams_t::reco_dcosx, ShowerQuality::TreeParams_t::reco_dcosy, ShowerQuality::TreeParams_t::reco_dcosz, ShowerQuality::TreeParams_t::reco_dedx, ShowerQuality::TreeParams_t::reco_dedx_U, ShowerQuality::TreeParams_t::reco_dedx_V, ShowerQuality::TreeParams_t::reco_dedx_Y, ShowerQuality::TreeParams_t::reco_energy, ShowerQuality::TreeParams_t::reco_x, ShowerQuality::TreeParams_t::reco_y, and ShowerQuality::TreeParams_t::reco_z.
Referenced by beginJob().
|
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().
|
delete |
|
delete |
|
protectedinherited |
Definition at line 57 of file Observer.cc.
References art::Observer::process_name_.
Referenced by art::FileDumperOutput::printPrincipal().
|
inlineprivate |
Set maximum energy for MCShowers to be considered.
Definition at line 60 of file ShowerQuality_module.cc.
References _mc_energy_max, and energy.
Referenced by ShowerQuality().
|
inlineprivate |
Definition at line 56 of file ShowerQuality_module.cc.
References fMCShowerProducer.
Referenced by ShowerQuality().
|
inlineprivate |
Set minimum energy for MCShowers to be considered.
Definition at line 63 of file ShowerQuality_module.cc.
References _mc_energy_min, and energy.
Referenced by ShowerQuality().
|
inherited |
|
inlineprivate |
Setter function for a shower producer name.
Definition at line 55 of file ShowerQuality_module.cc.
References fShowerProducer.
Referenced by ShowerQuality().
|
inlineprivate |
Definition at line 57 of file ShowerQuality_module.cc.
References fSimChannelProducer.
Referenced by ShowerQuality().
|
inherited |
Definition at line 49 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().
|
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 |
Maximum MC shower energy cut.
Definition at line 72 of file ShowerQuality_module.cc.
Referenced by analyze(), and SetMaxEnergyCut().
|
private |
Minimum MC shower energy cut.
Definition at line 69 of file ShowerQuality_module.cc.
Referenced by analyze(), and SetMinEnergyCut().
|
private |
Shower back tracking algorithm.
Definition at line 66 of file ShowerQuality_module.cc.
Referenced by analyze().
|
private |
MCShower Producer's Name.
Definition at line 78 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and SetMCShowerProducer().
|
private |
Shower Producer's Name.
Definition at line 75 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and SetShowerProducer().
|
private |
SimChannel Producer's Name.
Definition at line 81 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and SetSimChannelProducer().
|
private |
Analysis TTree.
Definition at line 138 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), InitializeAnaTree(), and ShowerQuality().
|
private |
Referenced by analyze(), and InitializeAnaTree().
|
private |
Opening angle between reco & MC 3D direction.
Definition at line 94 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Best plane id.
Definition at line 108 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Direction unit vector X component difference.
Definition at line 91 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Direction unit vector Y component difference.
Definition at line 92 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Direction unit vector Z component difference.
Definition at line 93 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Energy assym. parameter: (reco E - MC E) / (reco E + MC E) * 2.
Definition at line 98 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Energy correlation reco (x) vs. MC (y)
Definition at line 96 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Energy difference: reco E - MC E.
Definition at line 99 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Matching correctness.
Definition at line 84 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Matched 3D shower's cluster efficiency (combined across planes)
Definition at line 101 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Matched 3D shower's cluster purity (combined across planes)
Definition at line 102 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
3D vtx distance between reco to MC in cm
Definition at line 89 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
X difference (reco-MC) in cm.
Definition at line 86 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Y difference (reco-MC) in cm.
Definition at line 87 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
Z difference (reco-MC) in cm.
Definition at line 88 of file ShowerQuality_module.cc.
Referenced by analyze(), beginJob(), and ShowerQuality().
|
private |
dEdx per particle per PDG code
Definition at line 105 of file ShowerQuality_module.cc.
Referenced by analyze(), and ShowerQuality().