![]() |
ATLAS Offline Software
|
Tool that outputs certain cell and cluster properties with implications for performance to a text file. More...
#include <CaloPerformancePropertiesOutput.h>
Classes | |
| struct | EventPerformanceInfo |
Public Member Functions | |
| CaloPerformancePropertiesOutput (const std::string &type, const std::string &name, const IInterface *parent) | |
| virtual StatusCode | initialize () override |
| virtual StatusCode | execute (const EventContext &ctx, xAOD::CaloClusterContainer *cluster_collection) const override |
| virtual StatusCode | finalize () override |
| virtual | ~CaloPerformancePropertiesOutput ()=default |
| virtual StatusCode | execute (xAOD::CaloClusterContainer *collection) final |
| Execute on an entire collection of clusters. | |
Private Attributes | |
| Gaudi::Property< std::string > | m_fileName {this, "FileName", "event_properties.txt", "File to save the performance-related info."} |
| The path specifying the folder to which the files should be saved. | |
| SG::ReadHandleKey< CaloCellContainer > | m_cellsKey {this, "CellsName", "", "Name(s) of Cell Containers"} |
| vector of names of the cell containers to use as input. | |
| SG::ReadCondHandleKey< CaloNoise > | m_noiseCDOKey {this, "CaloNoiseKey", "totalNoise", "SG Key of CaloNoise data object"} |
| Key of the CaloNoise Conditions data object. | |
| Gaudi::Property< bool > | m_twoGaussianNoise {this, "TwoGaussianNoise", false, "Use 2-gaussian noise description for TileCal"} |
| if set to true use 2-gaussian noise description for TileCal | |
| Gaudi::Property< float > | m_seedThreshold {this, "SeedThresholdOnEorAbsEinSigma", 4., "Seed threshold (in units of noise Sigma)"} |
| Value to consider for the seed threshold. | |
| Gaudi::Property< float > | m_growThreshold {this, "NeighborThresholdOnEorAbsEinSigma", 2., "Neighbor (grow) threshold (in units of noise Sigma)"} |
| Value to consider for the seed threshold. | |
| Gaudi::Property< float > | m_cellThreshold {this, "CellThresholdOnEorAbsEinSigma", 0., "Cell (terminal) threshold (in units of noise Sigma)"} |
| Value to consider for the seed threshold. | |
| Gaudi::Property< bool > | m_seedCutsInAbsE {this, "SeedCutsInAbsE", true, "Seed cuts in Abs E instead of E"} |
| if set to true seed cuts are on \(|E|\) and \(|E|_\perp\). | |
| Gaudi::Property< bool > | m_neighborCutsInAbsE {this, "NeighborCutsInAbsE", true, "Neighbor (grow) cuts in Abs E instead of E"} |
| if set to true neighbor cuts are on \(|E|\) and \(|E|_\perp\). | |
| Gaudi::Property< bool > | m_cellCutsInAbsE {this, "CellCutsInAbsE", true, "Cell (terminal) cuts in Abs E instead of E"} |
| if set to true cell cuts are on \(|E|\) and \(|E|_\perp\). | |
| Gaudi::Property< std::string > | m_growNeighborOptionString |
| type of neighbor relations to use for cluster growing. | |
| LArNeighbours::neighbourOption | m_growNeighborOption |
| Gaudi::Property< std::string > | m_splitNeighborOptionString |
| type of neighbor relations to use for cluster splitting. | |
| LArNeighbours::neighbourOption | m_splitNeighborOption |
| Gaudi::Property< bool > | m_growRestrictHECIWandFCalNeighbors |
| if set to true limit the neighbors in HEC IW and FCal2&3 during growing. | |
| Gaudi::Property< bool > | m_splitRestrictHECIWandFCalNeighbors |
| if set to true limit the neighbors in HEC IW and FCal2&3 during splitting. | |
| Gaudi::Property< bool > | m_growRestrictPSNeighbors |
| if set to true limit the neighbors in presampler Barrel and Endcap during growing. | |
| Gaudi::Property< bool > | m_splitRestrictPSNeighbors |
| if set to true limit the neighbors in presampler Barrel and Endcap during splitting. | |
| const CaloCell_ID * | m_calo_id {nullptr} |
| Pointer to Calo ID Helper. | |
| std::mutex | m_mutex |
| Mutex that is locked when recording info. | |
| std::vector< EventPerformanceInfo > m_eventInfo | ATLAS_THREAD_SAFE |
| Vector to hold the information. | |
| std::vector< size_t > m_eventNumbers | ATLAS_THREAD_SAFE |
| Vector to hold the event numbers to be recorded if necessary. | |
Tool that outputs certain cell and cluster properties with implications for performance to a text file.
Definition at line 33 of file CaloPerformancePropertiesOutput.h.
| CaloPerformancePropertiesOutput::CaloPerformancePropertiesOutput | ( | const std::string & | type, |
| const std::string & | name, | ||
| const IInterface * | parent ) |
Definition at line 21 of file CaloPerformancePropertiesOutput.cxx.
|
virtualdefault |
|
overridevirtual |
Definition at line 86 of file CaloPerformancePropertiesOutput.cxx.
|
inlinefinal |
Execute on an entire collection of clusters.
| collection | The container of clusters. (deprecated) |
Definition at line 50 of file CaloClusterCollectionProcessor.h.
|
overridevirtual |
Definition at line 358 of file CaloPerformancePropertiesOutput.cxx.
|
overridevirtual |
Definition at line 27 of file CaloPerformancePropertiesOutput.cxx.
|
mutableprivate |
Vector to hold the information.
Definition at line 257 of file CaloPerformancePropertiesOutput.h.
|
mutableprivate |
Vector to hold the event numbers to be recorded if necessary.
Definition at line 262 of file CaloPerformancePropertiesOutput.h.
|
private |
Definition at line 219 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true cell cuts are on \(|E|\) and \(|E|_\perp\).
The cell cuts will be on absolute energy and absolute transverse energy if this is set to true. If set to false the cuts will be on energy and transverse energy instead.
Definition at line 113 of file CaloPerformancePropertiesOutput.h.
|
private |
vector of names of the cell containers to use as input.
Definition at line 61 of file CaloPerformancePropertiesOutput.h.
|
private |
Value to consider for the seed threshold.
Should be consistent with the one used in Topological Clustering to ensure cell classification is correct.
Definition at line 87 of file CaloPerformancePropertiesOutput.h.
|
private |
The path specifying the folder to which the files should be saved.
Default "event_properties.txt"
Definition at line 56 of file CaloPerformancePropertiesOutput.h.
|
private |
Definition at line 141 of file CaloPerformancePropertiesOutput.h.
|
private |
type of neighbor relations to use for cluster growing.
The CaloIdentifier package defines different types of neighbors for the calorimeter cells. Currently supported neighbor relations for topological clustering are:
The default setting is "super3D".
Definition at line 139 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true limit the neighbors in HEC IW and FCal2&3 during growing.
The cells in HEC IW and FCal2&3 get very large in terms of eta and phi. Since this might pose problems on certain jet algorithms one might need to avoid expansion in eta and phi for those cells. If this property is set to true the 2d neighbors of these cells are not used - only the next sampling neighbors are probed.
Definition at line 180 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true limit the neighbors in presampler Barrel and Endcap during growing.
The presampler cells add a lot of PileUp in the Hilum samples. With this option set to true the presampler cells do not expand the cluster in the presampler layer. Only the next sampling is used as valid neighbor source.
Definition at line 202 of file CaloPerformancePropertiesOutput.h.
|
private |
Value to consider for the seed threshold.
Should be consistent with the one used in Topological Clustering to ensure cell classification is correct.
Definition at line 82 of file CaloPerformancePropertiesOutput.h.
|
mutableprivate |
Mutex that is locked when recording info.
Definition at line 253 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true neighbor cuts are on \(|E|\) and \(|E|_\perp\).
The neighbor cuts will be on absolute energy and absolute transverse energy if this is set to true. If set to false the cuts will be on energy and transverse energy instead.
Definition at line 105 of file CaloPerformancePropertiesOutput.h.
|
private |
Key of the CaloNoise Conditions data object.
Typical values are '"electronicNoise', 'pileupNoise', or '"totalNoise' (default)
Definition at line 66 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true seed cuts are on \(|E|\) and \(|E|_\perp\).
The seed cuts and the \(E_\perp\) cut on the final clusters before insertion to the CaloClusterContainer will be on absolute energy and absolute transverse energy if this is set to true. If set to false the cuts will be on energy and transverse energy instead.
Definition at line 97 of file CaloPerformancePropertiesOutput.h.
|
private |
Value to consider for the seed threshold.
Should be consistent with the one used in Topological Clustering to ensure cell classification is correct.
Definition at line 77 of file CaloPerformancePropertiesOutput.h.
|
private |
Definition at line 169 of file CaloPerformancePropertiesOutput.h.
|
private |
type of neighbor relations to use for cluster splitting.
The CaloIdentifier package defines different types of neighbors for the calorimeter cells. Currently supported neighbor relations for topological clustering are:
The default setting is "super3D".
Definition at line 167 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true limit the neighbors in HEC IW and FCal2&3 during splitting.
The cells in HEC IW and FCal2&3 get very large in terms of eta and phi. Since this might pose problems on certain jet algorithms one might need to avoid expansion in eta and phi for those cells. If this property is set to true the 2d neighbors of these cells are not used - only the next sampling neighbors are probed.
Definition at line 192 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true limit the neighbors in presampler Barrel and Endcap during splitting.
The presampler cells add a lot of PileUp in the Hilum samples. With this option set to true the presampler cells do not expand the cluster in the presampler layer. Only the next sampling is used as valid neighbor source.
Definition at line 212 of file CaloPerformancePropertiesOutput.h.
|
private |
if set to true use 2-gaussian noise description for TileCal
Definition at line 71 of file CaloPerformancePropertiesOutput.h.