Produces plots. Aaah! More...
Classes | |
struct | AlgorithmConfiguration |
Data structure with all the configuration. More... | |
struct | FHiCLconfig |
Public Types | |
using | Parameters = fhicl::Table< FHiCLconfig > |
Public Member Functions | |
PlotDetectorActivityRates (Parameters const &config) | |
Constructor: reads the configuration from the specified parameters set. More... | |
void | setup (TDirectory *pDestDir, detinfo::DetectorClocksData &&clocksData, detinfo::DetectorPropertiesData &&propsData) |
Sets the algorithm up. More... | |
void | prepare () |
Performs the initialization of the algorithm. More... | |
void | setupEvent (detinfo::DetectorClocksData &&clocksData, detinfo::DetectorPropertiesData &&propsData) |
Set up for a specific event. More... | |
template<typename Event > | |
void | plotEvent (Event const &event) |
Processes a single event. More... | |
void | finish () |
Completes and saves the plots. More... | |
template<typename Stream > | |
void | printConfig (Stream &&out) const |
Prints the current configuration to the specified output stream. More... | |
template<typename Stream > | |
void | printTimingSummary (Stream &&out) const |
Prints some information about configured timing. More... | |
Static Public Member Functions | |
static void | printConfigurationHelp (std::ostream &out) |
Prints on out screen a configuration summary. More... | |
Static Public Attributes | |
static std::string const | ConfigurationKey { "plot" } |
Name of the recommended configuration table for this algorithm. More... | |
Private Types | |
using | nanoseconds = util::quantities::intervals::nanoseconds |
using | simulation_time_scale = detinfo::timescales::timescale_traits< detinfo::timescales::SimulationTimeCategory > |
Time scale used for plotting of generation and particle level simulation. More... | |
using | simulation_time = simulation_time_scale::time_point_t |
using | trigger_time = detinfo::timescales::simulation_time |
using | electronics_tick = detinfo::timescales::electronics_tick |
using | EDepUnit_t = util::quantities::megaelectronvolt |
Unit the energy depositions are stored in (LArSoft convention). More... | |
Private Member Functions | |
AlgorithmConfiguration | parseAlgorithmConfiguration (fhicl::ParameterSet const &pset) |
AlgorithmConfiguration | parseValidatedAlgorithmConfiguration (FHiCLconfig const &config) |
AlgorithmConfiguration | parseValidatedAlgorithmConfiguration (fhicl::ParameterSet const &pset) |
void | initializePlots () |
Performs the initialization of the plots filled by the algorithm. More... | |
void | initializeEnergyDepositPlots () |
Performs the initialization of plots pertaining energy deposits. More... | |
void | initializeTPCionizationPlots () |
Performs the initialization of plots pertaining collected TPC charge. More... | |
void | initializePhotonPlots () |
Performs the initialization of plots pertaining collected photoelectrons. More... | |
void | savePlots () |
Writes all plots into the current ROOT directory (and then deletes them). More... | |
void | printStats () const |
Prints on screen some collected statistics. More... | |
void | plotEnergyDeposits (std::vector< sim::SimEnergyDeposit > const &energyDeps) |
Plots data from energy deposits in liquid argon. More... | |
void | plotTPCionization (std::vector< sim::SimChannel > const &TPCchannels) |
Plots data from photoelectron collection. More... | |
void | plotPhotons (std::vector< sim::SimPhotons > const &photonChannels) |
Plots data from photoelectron collection. More... | |
Static Private Member Functions | |
template<typename ConfigOut > | |
static void | parseBinning (ConfigOut &binConfig, fhicl::ParameterSet const &pset) |
template<typename ConfigOut , typename ConfigIn > | |
static void | parseAndValidateBinning (ConfigOut &binConfig, ConfigIn const &config) |
template<typename T , typename BinConfig > | |
static util::Binner< T > | makeBinning (BinConfig const &config) |
template<typename T > | |
static void | readParam (fhicl::ParameterSet const &pset, std::string const &key, T &var) |
template<typename Plot > | |
static void | Serialize (std::unique_ptr< Plot > &plot) |
Writes plot into the current ROOT directory, then deletes it. More... | |
Private Attributes | |
AlgorithmConfiguration const | fConfig |
Complete configuration of the algorithm. More... | |
util::Binner< simulation_time > | fSimBinner |
util::Binner< electronics_tick > | fTPCBinner |
util::Binner< trigger_time > | fOpDetBinner |
TDirectory * | fDestDir = nullptr |
ROOT directory where to write the plots. More... | |
std::optional < detinfo::DetectorTimings > | fDetTimings |
std::optional < detinfo::DetectorPropertiesData > | fDetPropsData |
std::unique_ptr< TProfile > | fEDepDistrib |
Average amount of deposited energy per time [GeV]. More... | |
std::unique_ptr< TProfile > | fTPCchargeDistrib |
Average amount of ionization collected per time. More... | |
std::unique_ptr< TProfile > | fPhotonDistrib |
Average number of photon per time. More... | |
lar::util::StatCollector< double > | fEDepStats |
Statistics of the total energy per event. More... | |
lar::util::StatCollector< double > | fTPCchargeStats |
Statistics of the total charge (electron count) per event. More... | |
lar::util::StatCollector < unsigned int > | fPhotonStats |
Statistics of the total light (photoelectron count) per event. More... | |
Produces plots. Aaah!
Algorithm workflow:
Definition at line 143 of file DetectorActivityRatePlots.cpp.
Unit the energy depositions are stored in (LArSoft convention).
Definition at line 156 of file DetectorActivityRatePlots.cpp.
Definition at line 153 of file DetectorActivityRatePlots.cpp.
Definition at line 145 of file DetectorActivityRatePlots.cpp.
using PlotDetectorActivityRates::Parameters = fhicl::Table<FHiCLconfig> |
Definition at line 291 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 151 of file DetectorActivityRatePlots.cpp.
|
private |
Time scale used for plotting of generation and particle level simulation.
Definition at line 149 of file DetectorActivityRatePlots.cpp.
Definition at line 152 of file DetectorActivityRatePlots.cpp.
PlotDetectorActivityRates::PlotDetectorActivityRates | ( | Parameters const & | config | ) |
Constructor: reads the configuration from the specified parameters set.
Definition at line 427 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::finish | ( | ) |
Completes and saves the plots.
Definition at line 633 of file DetectorActivityRatePlots.cpp.
|
private |
Performs the initialization of plots pertaining energy deposits.
Definition at line 531 of file DetectorActivityRatePlots.cpp.
|
private |
Performs the initialization of plots pertaining collected photoelectrons.
Definition at line 571 of file DetectorActivityRatePlots.cpp.
|
private |
Performs the initialization of the plots filled by the algorithm.
Definition at line 522 of file DetectorActivityRatePlots.cpp.
|
private |
Performs the initialization of plots pertaining collected TPC charge.
Definition at line 548 of file DetectorActivityRatePlots.cpp.
|
inlinestaticprivate |
Definition at line 366 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 436 of file DetectorActivityRatePlots.cpp.
|
staticprivate |
Definition at line 482 of file DetectorActivityRatePlots.cpp.
|
staticprivate |
Definition at line 472 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 455 of file DetectorActivityRatePlots.cpp.
|
inlineprivate |
Definition at line 354 of file DetectorActivityRatePlots.cpp.
|
private |
Plots data from energy deposits in liquid argon.
Definition at line 681 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::plotEvent | ( | Event const & | event | ) |
Processes a single event.
Definition at line 600 of file DetectorActivityRatePlots.cpp.
|
private |
Plots data from photoelectron collection.
Definition at line 759 of file DetectorActivityRatePlots.cpp.
|
private |
Plots data from photoelectron collection.
Definition at line 718 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::prepare | ( | ) |
Performs the initialization of the algorithm.
Definition at line 515 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::printConfig | ( | Stream && | out | ) | const |
Prints the current configuration to the specified output stream.
Definition at line 643 of file DetectorActivityRatePlots.cpp.
|
static |
Prints on out
screen a configuration summary.
Definition at line 490 of file DetectorActivityRatePlots.cpp.
|
private |
Prints on screen some collected statistics.
Definition at line 813 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::printTimingSummary | ( | Stream && | out | ) | const |
Prints some information about configured timing.
Definition at line 660 of file DetectorActivityRatePlots.cpp.
|
inlinestaticprivate |
Definition at line 371 of file DetectorActivityRatePlots.cpp.
|
private |
Writes all plots into the current ROOT directory (and then deletes them).
Definition at line 799 of file DetectorActivityRatePlots.cpp.
|
staticprivate |
Writes plot
into the current ROOT directory, then deletes it.
Definition at line 829 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::setup | ( | TDirectory * | pDestDir, |
detinfo::DetectorClocksData && | clocksData, | ||
detinfo::DetectorPropertiesData && | propsData | ||
) |
Sets the algorithm up.
pDestDir | ROOT output directory for the plots |
clocksData | detector clocks information (event-independent) |
propsData | detector properties information (event-independent) |
Definition at line 501 of file DetectorActivityRatePlots.cpp.
void PlotDetectorActivityRates::setupEvent | ( | detinfo::DetectorClocksData && | clocksData, |
detinfo::DetectorPropertiesData && | propsData | ||
) |
Set up for a specific event.
Definition at line 588 of file DetectorActivityRatePlots.cpp.
|
static |
Name of the recommended configuration table for this algorithm.
Definition at line 229 of file DetectorActivityRatePlots.cpp.
|
private |
Complete configuration of the algorithm.
Definition at line 186 of file DetectorActivityRatePlots.cpp.
|
private |
ROOT directory where to write the plots.
Definition at line 196 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 199 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 198 of file DetectorActivityRatePlots.cpp.
|
private |
Average amount of deposited energy per time [GeV].
Definition at line 205 of file DetectorActivityRatePlots.cpp.
|
private |
Statistics of the total energy per event.
Definition at line 215 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 190 of file DetectorActivityRatePlots.cpp.
|
private |
Average number of photon per time.
Definition at line 211 of file DetectorActivityRatePlots.cpp.
|
private |
Statistics of the total light (photoelectron count) per event.
Definition at line 221 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 188 of file DetectorActivityRatePlots.cpp.
|
private |
Definition at line 189 of file DetectorActivityRatePlots.cpp.
|
private |
Average amount of ionization collected per time.
Definition at line 208 of file DetectorActivityRatePlots.cpp.
|
private |
Statistics of the total charge (electron count) per event.
Definition at line 218 of file DetectorActivityRatePlots.cpp.