ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
FPGATrackSimGenScanMonitoring Class Reference

#include <FPGATrackSimGenScanMonitoring.h>

Inheritance diagram for FPGATrackSimGenScanMonitoring:
Collaboration diagram for FPGATrackSimGenScanMonitoring:

Classes

struct  eventDispSet
 

Public Member Functions

 FPGATrackSimGenScanMonitoring (const std::string &, const std::string &, const IInterface *)
 
virtual StatusCode initialize () override
 
StatusCode registerHistograms (unsigned nLayers, const FPGATrackSimGenScanBinningBase *binning, double rin, double rout)
 
void allocateDataFlowCounters ()
 
void resetDataFlowCounters ()
 
StatusCode registerGraphs ()
 
const std::string dir () const
 
void parseTruthInfo (std::vector< FPGATrackSimTruthTrack > const *truthtracks, bool isSingleParticle, const FPGATrackSimGenScanArray< int > &validBin)
 
void fillHitLevelInput (const FPGATrackSimHit *hit)
 
void fillBinLevelOutput (const FPGATrackSimGenScanBinningBase::IdxSet &idx, const FPGATrackSimGenScanTool::BinEntry &data)
 
void fillHitsByLayer (const std::vector< std::vector< const FPGATrackSimGenScanTool::StoredHit * >> &hitsByLayer)
 
void fillPairingHits (std::vector< const FPGATrackSimGenScanTool::StoredHit * > const *lastlyr, std::vector< const FPGATrackSimGenScanTool::StoredHit * > const *lastlastlyr)
 
void fillPairFilterCuts (const FPGATrackSimGenScanTool::HitPair &pair)
 
void fillPairSetFilterCut (std::vector< TH1D * > &histset, double val, const FPGATrackSimGenScanTool::HitPair &pair, const FPGATrackSimGenScanTool::HitPair &lastpair, bool nminus1)
 
void fillInputSummary (const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits, const FPGATrackSimGenScanArray< int > &validSlice, const FPGATrackSimGenScanArray< int > &validScan)
 
void fillOutputSummary (const FPGATrackSimGenScanArray< int > &validSlice, const FPGATrackSimGenScanArray< int > &validSliceAndScan)
 
void fillBuildGroupsWithPairs (const std::vector< FPGATrackSimGenScanTool::IntermediateState > &states, unsigned allowed_misses)
 
void incrementInputPerSlice (const std::vector< unsigned > &sliceidx)
 
void incrementInputPerScan (const FPGATrackSimGenScanBinningBase::IdxSet &idx, const std::pair< unsigned, unsigned > &rowRange, const FPGATrackSimHit *hit)
 
void sliceCheck (const std::vector< unsigned > &sliceidx)
 
void pairFilterCheck (const FPGATrackSimGenScanTool::HitPairSet &pairs, const FPGATrackSimGenScanTool::HitPairSet &filteredpairs, bool passedPairFilter)
 
void pairSetFilterCheck (const FPGATrackSimGenScanTool::HitPairSet &filteredpairs, const std::vector< FPGATrackSimGenScanTool::HitPairSet > &pairsets, unsigned threshold)
 
bool isTruthBin (FPGATrackSimGenScanBinningBase::IdxSet idx) const
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Public Attributes

std::vector< TH1D * > m_deltaDeltaPhi
 
std::vector< TH1D * > m_deltaDeltaEta
 
std::vector< TH1D * > m_pairSetMatchPhi
 
std::vector< TH1D * > m_pairSetMatchEta
 
std::vector< TH1D * > m_phiCurvature
 
std::vector< TH1D * > m_etaCurvature
 
std::vector< TH1D * > m_deltaPhiCurvature
 
std::vector< TH1D * > m_deltaEtaCurvature
 
std::vector< TH1D * > m_phiCurvatureMax
 
std::vector< TH1D * > m_etaCurvatureMax
 
std::vector< TH1D * > m_phiInExtrapCurved
 
std::vector< TH1D * > m_phiOutExtrapCurved
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
 
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

void setBinPlotsActive (const FPGATrackSimGenScanBinningBase::IdxSet &idx)
 
unsigned pairpairCategory (const FPGATrackSimGenScanTool::HitPair &pair, const FPGATrackSimGenScanTool::HitPair &lastpair) const
 
StatusCode bookTree ()
 
void ClearTreeVectors ()
 
template<typename HistType , typename... HistDef>
StatusCode makeAndRegHist (HistType *&ptr, HistDef... histargs)
 
template<typename HistType , typename... HistDef>
StatusCode makeAndRegHistVector (std::vector< HistType * > &vec, unsigned len, const std::vector< std::string > *namevec, const char *namebase, HistDef... histargs)
 
StatusCode regGraph (TGraph *g) const
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

ServiceHandle< ITHistSvc > m_tHistSvc {this, "THistSvc", "THistSvc"}
 
Gaudi::Property< std::string > m_dir {this, "dir", {"/GENSCAN/"}, "String name of output directory"}
 
unsigned m_nLayers = 0
 
const FPGATrackSimGenScanBinningBasem_binning {nullptr}
 
double m_rin =0.0
 
double m_rout =0.0
 
std::vector< FPGATrackSimTruthTrack > constm_truthtracks {nullptr}
 
bool m_isSingleParticle = false
 
bool m_truthIsValid = false
 
FPGATrackSimTrackPars m_truthpars
 
FPGATrackSimGenScanBinningBase::IdxSet m_truthbin
 
FPGATrackSimGenScanBinningBase::ParSet m_truthparset
 
bool m_binPlotsActive = false
 
std::vector< unsigned > m_hitsCntByLayer
 
FPGATrackSimGenScanArray< int > m_inputhitsperslice
 
FPGATrackSimGenScanArray< int > m_inputhitsperrow
 
FPGATrackSimGenScanArray< int > m_outputhitsperslice
 
FPGATrackSimGenScanArray< int > m_outputhitsperrow
 
FPGATrackSimGenScanArray< int > m_outputroadsperrow
 
std::vector< TH2D * > m_rZ_allhits
 
TH1D * m_truthpars_hists [5] = {0, 0, 0, 0, 0}
 
std::vector< TH1D * > m_phiResidual
 
std::vector< TH1D * > m_etaResidual
 
std::vector< TH1D * > m_phiTrueBinShift
 
std::vector< TH1D * > m_etaTrueBinShift
 
TH1D * m_inputHits = 0
 
TH1D * m_inputHitsPerSlice = 0
 
TH1D * m_outputHitsPerSlice = 0
 
TH1D * m_inputHitsPerRow = 0
 
TH1D * m_outputHitsPerRow = 0
 
TH1D * m_outputRoadsPerRow = 0
 
TH1D * m_outputHitsPerBin = 0
 
TH2D * m_hitsPerLayer2D = 0
 
TH1D * m_hitsPerLayer = 0
 
TH1D * m_hitsLoadedPerLayer = 0
 
TH1D * m_hitLyrsAllBins = 0
 
TH1D * m_phiShift_road = 0
 
TH1D * m_etaShift_road = 0
 
TH2D * m_phiShift2D_road = 0
 
TH2D * m_etaShift2D_road = 0
 
TH2D * m_hitsPerLayer_road = 0
 
TH1D * m_pairs = 0
 
TH1D * m_filteredpairs = 0
 
TH1D * m_pairsets = 0
 
TH2D * m_unpairedHits = 0
 
TH2D * m_pairsetsIncr = 0
 
TH2D * m_pairsetsHits = 0
 
TH2D * m_binStagesIncr = 0
 
TH2D * m_totalInputIncr = 0
 
TH1D * m_pairinghits = 0
 
TH1D * m_roadFilterFlow = 0
 
TH1D * m_deltaPhi = 0
 
TH1D * m_deltaEta = 0
 
TH1D * m_deltaPhiDR = 0
 
TH1D * m_deltaEtaDR = 0
 
TH1D * m_phiOutExtrap = 0
 
TH1D * m_phiInExtrap = 0
 
TH1D * m_phiOutExtrapCurveLimit =0
 
TH1D * m_phiInExtrapCurveLimit =0
 
TH1D * m_etaOutExtrap = 0
 
TH1D * m_etaInExtrap = 0
 
std::vector< TH1D * > m_deltaPhiByLyr
 
std::vector< TH1D * > m_deltaEtaByLyr
 
unsigned m_nminus1_idx = 6
 
TH2D * m_pairMatchPhi2D = 0
 
TH2D * m_pairMatchEta2D = 0
 
eventDispSet m_allHitsGraph {std::string("allHits"), 10}
 
eventDispSet m_roadGraph {std::string("road"), 10}
 
eventDispSet m_lostPairFilterGraph {std::string("lostpairfilter"), 10}
 
eventDispSet m_passPairFilterGraph {std::string("passpairfilter"), 10}
 
eventDispSet m_lostPairSetFilterGraph {std::string("lostpairsetfilter"), 10}
 
eventDispSet m_passPairSetFilterGraph {std::string("passpairsetfilter"), 10}
 
TTree * m_bin_module_tree = nullptr
 
std::vector< unsigned > m_tree_bin
 
std::vector< float > m_tree_r
 
std::vector< float > m_tree_z
 
std::vector< int > m_tree_id
 
std::vector< int > m_tree_hash
 
std::vector< int > m_tree_layer
 
std::vector< int > m_tree_side
 
std::vector< int > m_tree_etamod
 
std::vector< int > m_tree_phimod
 
std::vector< int > m_tree_dettype
 
std::vector< int > m_tree_detzone
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Static Private Attributes

static const std::vector< std::string > m_twoPairClasses
 

Detailed Description

Definition at line 35 of file FPGATrackSimGenScanMonitoring.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ FPGATrackSimGenScanMonitoring()

FPGATrackSimGenScanMonitoring::FPGATrackSimGenScanMonitoring ( const std::string &  algname,
const std::string &  name,
const IInterface *  ifc 
)

Definition at line 18 of file FPGATrackSimGenScanMonitoring.cxx.

18  :
19  AthAlgTool(algname, name, ifc)
20 {
21 }

Member Function Documentation

◆ allocateDataFlowCounters()

void FPGATrackSimGenScanMonitoring::allocateDataFlowCounters ( )

◆ bookTree()

StatusCode FPGATrackSimGenScanMonitoring::bookTree ( )
private

Definition at line 190 of file FPGATrackSimGenScanMonitoring.cxx.

190  {
191  ATH_MSG_DEBUG("Booking Layers Study Tree");
192  m_bin_module_tree = new TTree("LayerStudy","LayerStudy");
193  m_bin_module_tree->Branch("bin", &m_tree_bin);
194  m_bin_module_tree->Branch("r", &m_tree_r);
195  m_bin_module_tree->Branch("z", &m_tree_z);
196  m_bin_module_tree->Branch("id", &m_tree_id);
197  m_bin_module_tree->Branch("hash", &m_tree_hash);
198  m_bin_module_tree->Branch("layer", &m_tree_layer);
199  m_bin_module_tree->Branch("side", &m_tree_side);
200  m_bin_module_tree->Branch("etamod", &m_tree_etamod);
201  m_bin_module_tree->Branch("phimod", &m_tree_phimod);
202  m_bin_module_tree->Branch("dettype", &m_tree_dettype);
203  m_bin_module_tree->Branch("detzone", &m_tree_detzone);
204 
206  return StatusCode::SUCCESS;
207 }

◆ ClearTreeVectors()

void FPGATrackSimGenScanMonitoring::ClearTreeVectors ( )
private

Definition at line 208 of file FPGATrackSimGenScanMonitoring.cxx.

209 {
210  m_tree_r.clear();
211  m_tree_z.clear();
212  m_tree_id.clear();
213  m_tree_hash.clear();
214  m_tree_layer.clear();
215  m_tree_side.clear();
216  m_tree_etamod.clear();
217  m_tree_phimod.clear();
218  m_tree_dettype.clear();
219  m_tree_detzone.clear();
220 }

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKeyArray>

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleBase>

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ dir()

const std::string FPGATrackSimGenScanMonitoring::dir ( ) const
inline

Definition at line 57 of file FPGATrackSimGenScanMonitoring.h.

57 {return m_dir;}

◆ evtStore() [1/2]

ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( ) const
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase &  ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ fillBinLevelOutput()

void FPGATrackSimGenScanMonitoring::fillBinLevelOutput ( const FPGATrackSimGenScanBinningBase::IdxSet idx,
const FPGATrackSimGenScanTool::BinEntry data 
)

Definition at line 266 of file FPGATrackSimGenScanMonitoring.cxx.

268 {
270 
271  m_outputHitsPerBin->Fill(data.hits.size());
272  m_outputhitsperslice[m_binning->sliceIdx(idx)] += data.hits.size();
275 
276  m_roadGraph.addEvent(data.hits);
277 
278  if (m_binPlotsActive) {
279  for (auto& hit : data.hits) {
280  m_phiShift_road->Fill(hit.phiShift);
281  m_etaShift_road->Fill(hit.etaShift);
282  m_phiShift2D_road->Fill(hit.phiShift, hit.hitptr->getR());
283  m_etaShift2D_road->Fill(hit.etaShift, hit.hitptr->getR());
284  }
285 
286 
287  // Module mapping and Layer definition studies
288  // first sort hits by r+z radii
289  std::vector<FPGATrackSimGenScanTool::StoredHit> sorted_hits = data.hits;
290  std::sort(sorted_hits.begin(), sorted_hits.end(),
291  [](const auto &hit1, const auto &hit2) {
292  return hit1.rzrad() < hit2.rzrad();
293  });
294 
295  // Fill tree
296  m_tree_bin = std::vector<unsigned>(idx);
298  for (auto &hit : sorted_hits) {
299  m_tree_r.push_back(hit.hitptr->getR());
300  m_tree_z.push_back(hit.hitptr->getZ());
301  m_tree_id.push_back(hit.hitptr->getIdentifier());
302  m_tree_hash.push_back(hit.hitptr->getIdentifierHash());
303  m_tree_layer.push_back(hit.hitptr->getLayerDisk());
304  m_tree_side.push_back(hit.hitptr->getSide());
305  m_tree_etamod.push_back(hit.hitptr->getEtaModule());
306  m_tree_phimod.push_back(hit.hitptr->getPhiModule());
307  m_tree_dettype.push_back((int)hit.hitptr->getDetType());
308  m_tree_detzone.push_back((int)hit.hitptr->getDetectorZone());
309  }
310  ATH_MSG_DEBUG("For tree, bin=" << idx << " mods=" << m_tree_hash);
311  m_bin_module_tree->Fill();
312  }
313 }

◆ fillBuildGroupsWithPairs()

void FPGATrackSimGenScanMonitoring::fillBuildGroupsWithPairs ( const std::vector< FPGATrackSimGenScanTool::IntermediateState > &  states,
unsigned  allowed_misses 
)

Definition at line 627 of file FPGATrackSimGenScanMonitoring.cxx.

629  {
630 
631  for (unsigned i = 0; i < states.size(); i++) {
632  m_unpairedHits->Fill(i, states[i].unpairedHits.size());
633  m_pairsetsIncr->Fill(i, states[i].pairsets.size());
634  for (auto& pair : states[i].pairsets) {
635  m_pairsetsHits->Fill(i, pair.hitlist.size());
636  }
637  unsigned totalInput = states[i].pairsets.size() +states[i].unpairedHits.size();
638  m_totalInputIncr->Fill(i, totalInput);
639  m_binStagesIncr->Fill(i, (i <= allowed_misses)||(totalInput>0));
640  }
641 }

◆ fillHitLevelInput()

void FPGATrackSimGenScanMonitoring::fillHitLevelInput ( const FPGATrackSimHit hit)

Definition at line 324 of file FPGATrackSimGenScanMonitoring.cxx.

324  {
325  m_rZ_allhits[m_nLayers]->Fill(hit->getZ(), hit->getR()); // all layer plot
326  m_rZ_allhits[hit->getLayer()]->Fill(hit->getZ(), hit->getR()); // layer specific plot
327  m_hitsCntByLayer[hit->getLayer()]++;
328  if (m_truthIsValid)
329  {
334 
340  }
341  }
342 }

◆ fillHitsByLayer()

void FPGATrackSimGenScanMonitoring::fillHitsByLayer ( const std::vector< std::vector< const FPGATrackSimGenScanTool::StoredHit * >> &  hitsByLayer)

Definition at line 315 of file FPGATrackSimGenScanMonitoring.cxx.

317 {
318  for (unsigned lyr = 0; lyr < m_nLayers; lyr++)
319  {
320  m_hitsPerLayer_road->Fill(lyr, hitsByLayer[lyr].size());
321  }
322 }

◆ fillInputSummary()

void FPGATrackSimGenScanMonitoring::fillInputSummary ( const std::vector< std::shared_ptr< const FPGATrackSimHit >> &  hits,
const FPGATrackSimGenScanArray< int > &  validSlice,
const FPGATrackSimGenScanArray< int > &  validScan 
)

Definition at line 391 of file FPGATrackSimGenScanMonitoring.cxx.

395 {
396  m_inputHits->Fill(hits.size());
398 
400  {
401  if (!validSlice[val.idx()]) continue;
402  m_inputHitsPerSlice->Fill(val.data());
403  }
404 
406  {
407  if (!validSliceAndScan[val.idx()]) continue;
408  m_inputHitsPerRow->Fill(val.data());
409  }
410 
411  for (unsigned i = 0; i < m_nLayers; i++)
412  {
415  }
416 }

◆ fillOutputSummary()

void FPGATrackSimGenScanMonitoring::fillOutputSummary ( const FPGATrackSimGenScanArray< int > &  validSlice,
const FPGATrackSimGenScanArray< int > &  validSliceAndScan 
)

Definition at line 418 of file FPGATrackSimGenScanMonitoring.cxx.

421 {
423  {
424  if (!validSlice[val.idx()]) continue;
425  m_outputHitsPerSlice->Fill(val.data());
426  }
428  {
429  if (!validSliceAndScan[val.idx()]) continue;
430  m_outputHitsPerRow->Fill(val.data());
431  }
433  if (!validSliceAndScan[val.idx()]) continue;
434  m_outputRoadsPerRow->Fill(val.data());
435  }
436 }

◆ fillPairFilterCuts()

void FPGATrackSimGenScanMonitoring::fillPairFilterCuts ( const FPGATrackSimGenScanTool::HitPair pair)

Definition at line 524 of file FPGATrackSimGenScanMonitoring.cxx.

525  {
526  // m_pairs->Fill(pairs.pairList.size());
527  if (m_binPlotsActive) {
528  int lyr = pair.first->hitptr->getLayer();
529  m_deltaPhi->Fill(pair.dPhi());
530  m_deltaEta->Fill(pair.dEta());
531  m_deltaPhiDR->Fill(pair.dPhi() / pair.dR());
532  m_deltaEtaDR->Fill(pair.dEta() / pair.dR());
533  m_deltaPhiByLyr[lyr]->Fill(pair.dPhi());
534  m_deltaEtaByLyr[lyr]->Fill(pair.dEta());
535  m_phiInExtrap->Fill(pair.PhiInExtrap(m_rin));
536  m_phiOutExtrap->Fill(pair.PhiOutExtrap(m_rout));
537  m_etaInExtrap->Fill(pair.EtaInExtrap(m_rin));
538  m_etaOutExtrap->Fill(pair.EtaOutExtrap(m_rout));
539  }
540 }

◆ fillPairingHits()

void FPGATrackSimGenScanMonitoring::fillPairingHits ( std::vector< const FPGATrackSimGenScanTool::StoredHit * > const lastlyr,
std::vector< const FPGATrackSimGenScanTool::StoredHit * > const lastlastlyr 
)

Definition at line 506 of file FPGATrackSimGenScanMonitoring.cxx.

509  {
510 
511  auto size_if_nonzero_ptr =
512  [](std::vector<const FPGATrackSimGenScanTool::StoredHit *> const *ptr) {
513  if (ptr) {
514  return int(ptr->size());
515  } else {
516  return 0;
517  }
518  };
519 
520  m_pairinghits->Fill(size_if_nonzero_ptr(lastlyr) +
521  size_if_nonzero_ptr(lastlastlyr));
522 }

◆ fillPairSetFilterCut()

void FPGATrackSimGenScanMonitoring::fillPairSetFilterCut ( std::vector< TH1D * > &  histset,
double  val,
const FPGATrackSimGenScanTool::HitPair pair,
const FPGATrackSimGenScanTool::HitPair lastpair,
bool  nminus1 
)

Definition at line 595 of file FPGATrackSimGenScanMonitoring.cxx.

598  {
599 
600  if (m_binPlotsActive) {
601  unsigned ppcat = pairpairCategory(pair, lastpair);
602  histset[0]->Fill(val); // 0 is "all"
603  histset[ppcat]->Fill(val); // 0 is "all"
604  if (nminus1)
605  histset[m_nminus1_idx]->Fill(val);
606  }
607 
608 }

◆ incrementInputPerScan()

void FPGATrackSimGenScanMonitoring::incrementInputPerScan ( const FPGATrackSimGenScanBinningBase::IdxSet idx,
const std::pair< unsigned, unsigned > &  rowRange,
const FPGATrackSimHit hit 
)

Definition at line 376 of file FPGATrackSimGenScanMonitoring.cxx.

378  {
379  if (rowRange.second > rowRange.first) {
380  m_hitsLoadedPerLayer->Fill(double(hit->getLayer()));
382  } else {
383  // Nice debug check for if hit is in the truthbin for single track sample
384  if (m_truthIsValid &&
386  ATH_MSG_DEBUG("truth bin missed row ");
387  }
388  }
389 }

◆ incrementInputPerSlice()

void FPGATrackSimGenScanMonitoring::incrementInputPerSlice ( const std::vector< unsigned > &  sliceidx)
inline

Definition at line 91 of file FPGATrackSimGenScanMonitoring.h.

91 { m_inputhitsperslice[sliceidx]++; }

◆ initialize()

StatusCode FPGATrackSimGenScanMonitoring::initialize ( )
overridevirtual

Definition at line 23 of file FPGATrackSimGenScanMonitoring.cxx.

24 {
25  // Dump the configuration to make sure it propagated through right
26  auto props = this->getProperties();
27  for( Gaudi::Details::PropertyBase* prop : props ) {
28  if (prop->ownerTypeName()==this->type()) {
29  ATH_MSG_DEBUG("Property:\t" << prop->name() << "\t : \t" << prop->toString());
30  }
31  }
32 
33  ATH_CHECK(m_tHistSvc.retrieve());
34 
36 
37  return StatusCode::SUCCESS;
38 
39 }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ isTruthBin()

bool FPGATrackSimGenScanMonitoring::isTruthBin ( FPGATrackSimGenScanBinningBase::IdxSet  idx) const
inline

Definition at line 105 of file FPGATrackSimGenScanMonitoring.h.

105  {
106  return idx==m_truthbin;
107  }

◆ makeAndRegHist()

template<typename HistType , typename... HistDef>
StatusCode FPGATrackSimGenScanMonitoring::makeAndRegHist ( HistType *&  ptr,
HistDef...  histargs 
)
inlineprivate

Definition at line 301 of file FPGATrackSimGenScanMonitoring.h.

302  {
303  ptr = new HistType(histargs...);
304  ATH_CHECK(m_tHistSvc->regHist(m_dir + ptr->GetName(), ptr));
305  return StatusCode::SUCCESS;
306  }

◆ makeAndRegHistVector()

template<typename HistType , typename... HistDef>
StatusCode FPGATrackSimGenScanMonitoring::makeAndRegHistVector ( std::vector< HistType * > &  vec,
unsigned  len,
const std::vector< std::string > *  namevec,
const char *  namebase,
HistDef...  histargs 
)
inlineprivate

Definition at line 310 of file FPGATrackSimGenScanMonitoring.h.

311  {
312  if (vec.size()==0){
313  for (unsigned i = 0; i < len; i++) {
314  HistType *ptr = 0;
315  std::string name = std::string(namebase);
316  if (!namevec) {
317  name += std::to_string(i);
318  } else {
319  if (namevec->size()==len) {
320  name += (*namevec)[i];
321  } else {
322  return StatusCode::FAILURE;
323  }
324  }
325  ATH_CHECK(makeAndRegHist(ptr, name.c_str(), histargs...));
326  vec.push_back(ptr);
327  }
328  }
329  return StatusCode::SUCCESS;
330  }

◆ msg() [1/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ outputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ pairFilterCheck()

void FPGATrackSimGenScanMonitoring::pairFilterCheck ( const FPGATrackSimGenScanTool::HitPairSet pairs,
const FPGATrackSimGenScanTool::HitPairSet filteredpairs,
bool  passedPairFilter 
)

Definition at line 351 of file FPGATrackSimGenScanMonitoring.cxx.

354  {
355 
356  m_roadFilterFlow->Fill(0);
357  m_pairs->Fill(pairs.pairList.size());
358  m_filteredpairs->Fill(filteredpairs.pairList.size());
359 
360  if (passedPairFilter) {
361  // if passed mark progress in flow histogram and make passed Histogram
362  m_roadFilterFlow->Fill(1);
363  m_passPairFilterGraph.addEvent(filteredpairs.hitlist);
364  } else {
365  // If the true bin didn't pass print some debug and make a lost event
366  // display
367  if (m_binPlotsActive) {
368  ATH_MSG_INFO("lost at pair filter : hit layers = "
369  << filteredpairs.lyrCnt() << " "
370  << std::bitset<16>(filteredpairs.hitLayers));
372  }
373  }
374 }

◆ pairpairCategory()

unsigned FPGATrackSimGenScanMonitoring::pairpairCategory ( const FPGATrackSimGenScanTool::HitPair pair,
const FPGATrackSimGenScanTool::HitPair lastpair 
) const
private

Definition at line 548 of file FPGATrackSimGenScanMonitoring.cxx.

551 {
552  int minlyr = std::min(lastpair.first->layer, lastpair.second->layer);
553  minlyr = std::min(minlyr, pair.first->layer);
554  minlyr = std::min(minlyr, pair.second->layer);
555 
556  unsigned hitbits =
557  ((1 << lastpair.first->layer) | (1 << lastpair.second->layer) |
558  (1 << pair.first->layer) | (1 << pair.second->layer));
559  hitbits = hitbits >> minlyr; // now bit list starts with lowest hit layer
560 
561  int hitlyrs = std::popcount(hitbits);
562 
563  assert(hitbits & 0x1);
564 
565  unsigned retv = 0;
566  if (hitlyrs == 2) // must be same layers
567  {
568  retv = 1;
569  } else if (hitlyrs == 3) {
570  if (hitbits == 0b111) // 3 bits in a row -> adjacent layers
571  {
572  if ((lastpair.first->layer == pair.second->layer) ||
573  (pair.first->layer == lastpair.second->layer)) {
574  retv = 2; // sequential
575  } else {
576  retv = 3; // one is a skip and the other isn't
577  }
578  } else if ((hitbits == 0b1101) || (hitbits == 0b1011)) // skips 1 layer
579  {
580  retv = 4;
581  }
582  } else {
583  retv = 5;
584  }
585 
586  ATH_MSG_VERBOSE("pairpairCat "
587  << m_twoPairClasses[retv] << " " << lastpair.first->layer << " "
588  << lastpair.second->layer << " " << pair.first->layer << " "
589  << pair.second->layer << " : " << minlyr << " "
590  << std::bitset<16>(hitbits));
591 
592  return retv;
593 }

◆ pairSetFilterCheck()

void FPGATrackSimGenScanMonitoring::pairSetFilterCheck ( const FPGATrackSimGenScanTool::HitPairSet filteredpairs,
const std::vector< FPGATrackSimGenScanTool::HitPairSet > &  pairsets,
unsigned  threshold 
)

Definition at line 610 of file FPGATrackSimGenScanMonitoring.cxx.

613  {
614  m_pairsets->Fill(pairsets.size());
615 
616  for (const auto& pairset : pairsets) {
617  // if over threshold add it to the output
618  if (pairset.lyrCnt() >= threshold) {
619  m_roadFilterFlow->Fill(3);
620  m_passPairSetFilterGraph.addEvent(pairset.hitlist);
621  } else {
623  }
624  }
625 }

◆ parseTruthInfo()

void FPGATrackSimGenScanMonitoring::parseTruthInfo ( std::vector< FPGATrackSimTruthTrack > const truthtracks,
bool  isSingleParticle,
const FPGATrackSimGenScanArray< int > &  validBin 
)

Definition at line 440 of file FPGATrackSimGenScanMonitoring.cxx.

443 {
444  ATH_MSG_DEBUG("In parseTruthInfo ptr = " << truthtracks
445  << " size = " << (truthtracks ? truthtracks->size() : 0));
447  m_truthtracks = truthtracks;
448 
449  if (m_truthtracks)
450  {
451  if (m_truthtracks->size() > 0)
452  {
453  m_truthpars = (*m_truthtracks)[0].getPars();
457 
458  // histogram parameters
459  for (unsigned i = 0; i < FPGATrackSimGenScanBinningBase::NPars; i++)
460  {
461  // fill
463  }
464 
465  // a closure test
467  ATH_MSG_DEBUG("parset:" << m_truthparset << " " << m_truthpars
468  << " ?= " << recovered << " closure:"
474  }
475 
476  // print if there are multiple tracks for debugging single track MC
477  if (m_truthtracks->size() > 1)
478  {
479  for (unsigned i = 0; i < m_truthtracks->size(); i++)
480  {
481  ATH_MSG_INFO("Multiple truth" << i << " of "
482  << m_truthtracks->size() << " " << (*m_truthtracks)[i].getPars());
483  }
484  }
485 
486  // find truth bin for later plotting selections
487  ATH_MSG_DEBUG("truthbin " << m_truthtracks << " " << m_truthtracks->size() << " " << m_truthpars << " " << m_truthbin);
489  {
490  ATH_MSG_INFO("Truth out of range");
491  }
492  else if (!validBin[m_truthbin])
493  {
494  ATH_MSG_INFO("Truth Bin not valid!" << m_truthbin << " : " << m_truthpars);
495  std::vector<FPGATrackSimGenScanBinningBase::ParSet> parsets = m_binning->makeVariationSet(std::vector<unsigned>({0, 1, 2, 3, 4}), m_truthbin);
496  for (FPGATrackSimGenScanBinningBase::ParSet& parset : parsets)
497  {
498  ATH_MSG_INFO("Truth Box " << m_binning->parSetToTrackPars(parset));
499  }
500  }
501 
502  m_truthIsValid = true;
503  }
504 }

◆ regGraph()

StatusCode FPGATrackSimGenScanMonitoring::regGraph ( TGraph *  g) const
inlineprivate

Definition at line 333 of file FPGATrackSimGenScanMonitoring.h.

333 { return m_tHistSvc->regGraph(m_dir + g->GetName(), g);}

◆ registerGraphs()

StatusCode FPGATrackSimGenScanMonitoring::registerGraphs ( )

Definition at line 249 of file FPGATrackSimGenScanMonitoring.cxx.

250 {
251  // Make a vector of pointers to all the eventDispSet instances...
252  std::vector<FPGATrackSimGenScanMonitoring::eventDispSet *> allsets(
256 
257  // Then loop to register them all
258  for (auto& set : allsets) {
259  ATH_CHECK(set->registerGraphs(this));
260  }
261 
262  return StatusCode::SUCCESS;
263 }

◆ registerHistograms()

StatusCode FPGATrackSimGenScanMonitoring::registerHistograms ( unsigned  nLayers,
const FPGATrackSimGenScanBinningBase binning,
double  rin,
double  rout 
)

Definition at line 41 of file FPGATrackSimGenScanMonitoring.cxx.

43 {
44  m_nLayers = nLayers;
46  m_rin=rin;
47  m_rout = rout;
48 
49  // This is because if you change the binning class you can change what axis
50  // ranges you need for the plotting
51  double phiScale = m_binning->phiHistScale();
52  double etaScale = m_binning->etaHistScale();
53  double drScale = (rout-rin) / nLayers;
54  ATH_MSG_INFO("Hist scales phi: " << phiScale << " eta: " << etaScale << " dr:" << drScale);
55 
57 
58  // Truth Parameter distributions, bounds should cover 3x nominal range
59  for (unsigned i = 0; i < FPGATrackSimGenScanBinningBase::NPars; i++) {
61  m_truthpars_hists[i], ("truth" + m_binning->parNames(i)).c_str(),
62  (";" + m_binning->parNames(i) + ";").c_str(), 20000,
64  }
65 
66  // All Hit level histograms
67  ATH_CHECK(makeAndRegHist(m_hitLyrsAllBins , "HitLyrsAllBins" , ";Hit Layers", 10, 0, 10));
69  "RZ_allhits", "; Z [mm] ; R [mm] ", 500, -2000, 2000, 500, 0, 500));
70 
72  "phiResidual", "phi residual [mm]", 1000, -10, 10));
74  "etaResidual", "eta residual [mm]", 1000, -10, 10));
75 
77  "phiTrueBinShift", "phi TrueBinShift [mm]", 1000, -10, 10));
79  "etaTrueBinShift", "eta TrueBinShift [mm]", 1000, -10, 10));
80 
81  // Road statistics
82  ATH_CHECK(makeAndRegHist(m_outputHitsPerBin, "OutputHitsPerBin", ";Output Hits Per Bin", 100, 0, 200));
83  ATH_CHECK(makeAndRegHist(m_outputHitsPerSlice, "OutputHitsPerSlice", ";Output Hits Per Slice", 1000, 0, 2000));
84  ATH_CHECK(makeAndRegHist(m_outputHitsPerRow, "OutputHitsPerRow", ";Output Hits Per Row", 1000, 0, 2000));
85  ATH_CHECK(makeAndRegHist(m_outputRoadsPerRow, "OutputRoadsPerRow", ";Output Roads Per Row", 100, 0, 100));
86  ATH_CHECK(makeAndRegHist(m_roadFilterFlow , "roadFilterFlow" , "road filter flow", 10, 0, 10));
87  ATH_CHECK(makeAndRegHist(m_phiShift_road, "phiShift_road", ";Phi Shift", 2000, -phiScale, phiScale));
88  ATH_CHECK(makeAndRegHist(m_etaShift_road, "etaShift_road", ";Eta Shift", 2000, -etaScale, etaScale));
89  ATH_CHECK(makeAndRegHist(m_phiShift2D_road, "phiShift2D_road", ";Phi Shift; R",
90  400, -phiScale, phiScale, 100, 0, 400));
91  ATH_CHECK(makeAndRegHist(m_etaShift2D_road, "etaShift2D_road", ";Phi Shift; R",
92  400, -etaScale, etaScale, 100, 0, 400));
93 
94  ATH_CHECK(makeAndRegHist(m_hitsPerLayer_road , "HitsPerLayer_road" , "; Layer; Hits", m_nLayers, 0, m_nLayers, 20, 0, 20));
95 
96 
97  // Data flow hists
98  ATH_CHECK(makeAndRegHist(m_hitsLoadedPerLayer, "HitsLoadedPerLayer", "; Layer; Hits", m_nLayers, 0, m_nLayers));
99  ATH_CHECK(makeAndRegHist(m_inputHits, "InputHits", ";Input Hits", 200, 0, 100000));
100  ATH_CHECK(makeAndRegHist(m_inputHitsPerSlice, "InputHitsPerSlice", ";Input Hits Per Slice", 1000, 0, 10000));
101  ATH_CHECK(makeAndRegHist(m_inputHitsPerRow, "InputHitsPerRow", ";Input Hits Per Row", 1000, 0, 10000));
102  ATH_CHECK(makeAndRegHist(m_hitsPerLayer, "HitsPerLayer", "Layer; Hits", m_nLayers, 0, m_nLayers));
103  ATH_CHECK(makeAndRegHist(m_hitsPerLayer2D, "HitsPerLayer2D", "Layer; Hits",
104  m_nLayers, 0, m_nLayers, 20, 0,
105  m_isSingleParticle ? 20 : 10000));
106  ATH_CHECK(makeAndRegHist(m_pairs, "pairs", ";pairs;", 100, 0, 500));
107  ATH_CHECK(makeAndRegHist(m_pairinghits, "pairinghits", ";Pairing Hits;", 50, 0, 50));
108  ATH_CHECK(makeAndRegHist(m_filteredpairs, "filteredpairs", "filteredpairs", 100, 0, 500));
109  ATH_CHECK(makeAndRegHist(m_pairsets, "pairsets", ";pairsets;", 100, 0, 100));
110 
111 
112  // Pair Filter Cuts
113  ATH_CHECK(makeAndRegHist(m_phiOutExtrap, "PhiOutExtrap", ";Phi Out Extrap", 2000, -phiScale, phiScale));
114  ATH_CHECK(makeAndRegHist(m_phiInExtrap, "PhiInExtrap", ";Phi In Extrap", 2000, -phiScale, phiScale));
115  ATH_CHECK(makeAndRegHist(m_phiOutExtrapCurveLimit, "PhiOutExtrapCurveLimit",
116  ";Phi Out Extrap w/ Curve Limit", 2000, -phiScale, phiScale));
117  ATH_CHECK(makeAndRegHist(m_phiInExtrapCurveLimit, "PhiInExtrapCurveLimit",
118  ";Phi In Extrap w/ Curve Limit", 2000, -phiScale, phiScale));
119  ATH_CHECK(makeAndRegHist(m_etaOutExtrap, "EtaOutExtrap", ";Eta Out Extrap", 2000, -etaScale, etaScale));
120  ATH_CHECK(makeAndRegHist(m_etaInExtrap, "EtaInExtrap", ";Eta In Extrap", 2000, -etaScale, etaScale));
121  ATH_CHECK(makeAndRegHist(m_deltaPhi, "DeltaPhi", ";Delta Phi [rad]", 2000, -1.0*phiScale, phiScale));
122  ATH_CHECK(makeAndRegHist(m_deltaEta, "DeltaEta", ";Delta Eta [rad]", 2000, -1.0*etaScale, etaScale));
123  ATH_CHECK(makeAndRegHist(m_deltaPhiDR, "DeltaPhiDR", ";Delta Phi / Delta R", 2000, -0.1 * phiScale, 0.1 * phiScale));
124  ATH_CHECK(makeAndRegHist(m_deltaEtaDR, "DeltaEtaDR", ";Delta Eta / Delta R", 2000, -0.1 * phiScale, 0.1 * phiScale));
125  ATH_CHECK(makeAndRegHistVector(m_deltaPhiByLyr, m_nLayers, NULL, "DeltaPhiDR", ";Delta Phi / Delta R", 2000, -0.1 * phiScale, 0.1 * phiScale));
126  ATH_CHECK(makeAndRegHistVector(m_deltaEtaByLyr, m_nLayers, NULL, "DeltaEtaDR", ";Delta Eta / Delta R", 2000, -0.1 * phiScale, 0.1 * phiScale));
127 
128  // Pair Match Cuts
131  "PairSetMatchPhi", ";PairSet Match Phi [mm]", 500,
132  -1*phiScale / drScale, phiScale / drScale));
135  "PairSetMatchEta", ";PairSet Match Eta [mm]", 500,
136  -1*etaScale / drScale, etaScale / drScale));
139  "DeltaDeltaPhi", ";DeltaDelta Phi [mm]", 500, -1.0*phiScale / drScale,
140  phiScale / drScale));
143  "DeltaDeltaEta", ";DeltaDelta Eta [mm]", 500, -1.0 * etaScale / drScale,
144  1.0 * etaScale / drScale));
146  &m_twoPairClasses, "PhiCurvature",
147  ";Phi Curvature ", 500,
148  -0.1 * phiScale / drScale / drScale,
149  0.1 * phiScale / drScale / drScale));
151  &m_twoPairClasses, "EtaCurvature",
152  ";Eta Curvature ", 500,
153  -0.1 * etaScale / drScale / drScale,
154  0.1 * etaScale / drScale / drScale));
156  &m_twoPairClasses, "DeltaPhiCurvature",
157  ";Delta Phi Curvature ", 500,
158  -0.1 * phiScale / drScale / drScale,
159  0.1 * phiScale / drScale / drScale));
161  &m_twoPairClasses, "DeltaEtaCurvature",
162  ";Delta Eta Curvature ", 500,
163  -0.1 * etaScale / drScale / drScale,
164  0.1 * etaScale / drScale / drScale));
166  &m_twoPairClasses, "PhiOutExtrapCurved",
167  ";Phi Out Extrap Curved", 2000, -phiScale,
168  phiScale));
170  &m_twoPairClasses, "PhiInExtrapCurved",
171  ";Phi In Extrap Curved ", 2000, -phiScale,
172  phiScale));
173  ATH_CHECK(makeAndRegHist(m_pairMatchPhi2D, "PairSetMatchPhi2D",
174  ";PairSet Match Phi vs dRin [mm]", 100, 0, 100, 500,
175  -100.0 * phiScale, 100.0 * phiScale));
176  ATH_CHECK(makeAndRegHist(m_pairMatchEta2D, "PairSetMatchEta2D",
177  ";PairSet Match Eta vs dRin [mm]", 100, 0, 100, 500,
178  -100.0 * etaScale, 100.0 * etaScale));
179 
180  ATH_CHECK(makeAndRegHist(m_unpairedHits, "UnpairedHits", "; Stage ; Unpaired Hits" , m_nLayers+1, 0, m_nLayers+1, 20, 0, 20));
181  ATH_CHECK(makeAndRegHist(m_pairsetsIncr, "PairSetsIncr", "; Stage ; Pairsets" , m_nLayers+1, 0, m_nLayers+1, 20, 0, 20));
182  ATH_CHECK(makeAndRegHist(m_pairsetsHits, "PairSetsHits", "; Stage ; Hits in Pairsets" , m_nLayers+1, 0, m_nLayers+1, 20, 0, 20));
183  ATH_CHECK(makeAndRegHist(m_totalInputIncr, "TotalInputIncr", "; Stage ; Pairsets+Unpaired" , m_nLayers+1, 0, m_nLayers+1, 20, 0, 20));
184  ATH_CHECK(makeAndRegHist(m_binStagesIncr, "BinStagesIncr", "; Stage ; Bins at this point" , m_nLayers+1, 0, m_nLayers+1, 20, 0, 20));
185 
186  return StatusCode::SUCCESS;
187 }

◆ renounce()

std::enable_if_t<std::is_void_v<std::result_of_t<decltype(&T::renounce)(T)> > && !std::is_base_of_v<SG::VarHandleKeyArray, T> && std::is_base_of_v<Gaudi::DataHandle, T>, void> AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ resetDataFlowCounters()

void FPGATrackSimGenScanMonitoring::resetDataFlowCounters ( )

Definition at line 235 of file FPGATrackSimGenScanMonitoring.cxx.

235  {
236  for (auto& bin: m_hitsCntByLayer) { bin =0;}
237  for (auto& bin: m_inputhitsperslice) { bin.data() =0;}
238  for (auto& bin: m_inputhitsperrow) { bin.data() =0;}
239  for (auto& bin: m_outputhitsperslice) { bin.data() =0;}
240  for (auto& bin: m_outputhitsperrow) { bin.data() =0;}
241  for (auto &bin : m_outputroadsperrow) {
242  bin.data() = 0;
243  }
244 }

◆ setBinPlotsActive()

void FPGATrackSimGenScanMonitoring::setBinPlotsActive ( const FPGATrackSimGenScanBinningBase::IdxSet idx)
inlineprivate

Definition at line 137 of file FPGATrackSimGenScanMonitoring.h.

137  {

◆ sliceCheck()

void FPGATrackSimGenScanMonitoring::sliceCheck ( const std::vector< unsigned > &  sliceidx)

Definition at line 344 of file FPGATrackSimGenScanMonitoring.cxx.

344  {
345  if (m_truthIsValid &&
346  (m_binning->subVec(m_binning->slicePars(), m_truthbin) == sliceidx)) {
347  ATH_MSG_DEBUG("truth bin missed slice");
348  }
349 }

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase &  )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308  {
309  // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310  // << " size: " << m_vhka.size() << endmsg;
311  for (auto &a : m_vhka) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_allHitsGraph

eventDispSet FPGATrackSimGenScanMonitoring::m_allHitsGraph {std::string("allHits"), 10}
private

Definition at line 275 of file FPGATrackSimGenScanMonitoring.h.

◆ m_bin_module_tree

TTree* FPGATrackSimGenScanMonitoring::m_bin_module_tree = nullptr
private

Definition at line 285 of file FPGATrackSimGenScanMonitoring.h.

◆ m_binning

const FPGATrackSimGenScanBinningBase* FPGATrackSimGenScanMonitoring::m_binning {nullptr}
private

Definition at line 121 of file FPGATrackSimGenScanMonitoring.h.

◆ m_binPlotsActive

bool FPGATrackSimGenScanMonitoring::m_binPlotsActive = false
private

Definition at line 140 of file FPGATrackSimGenScanMonitoring.h.

◆ m_binStagesIncr

TH2D* FPGATrackSimGenScanMonitoring::m_binStagesIncr = 0
private

Definition at line 191 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaDeltaEta

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaDeltaEta

Definition at line 226 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaDeltaPhi

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaDeltaPhi

Definition at line 225 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEta

TH1D* FPGATrackSimGenScanMonitoring::m_deltaEta = 0
private

Definition at line 199 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEtaByLyr

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaEtaByLyr
private

Definition at line 209 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEtaCurvature

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaEtaCurvature

Definition at line 232 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEtaDR

TH1D* FPGATrackSimGenScanMonitoring::m_deltaEtaDR = 0
private

Definition at line 201 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhi

TH1D* FPGATrackSimGenScanMonitoring::m_deltaPhi = 0
private

Definition at line 198 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhiByLyr

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaPhiByLyr
private

Definition at line 208 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhiCurvature

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaPhiCurvature

Definition at line 231 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhiDR

TH1D* FPGATrackSimGenScanMonitoring::m_deltaPhiDR = 0
private

Definition at line 200 of file FPGATrackSimGenScanMonitoring.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_dir

Gaudi::Property<std::string> FPGATrackSimGenScanMonitoring::m_dir {this, "dir", {"/GENSCAN/"}, "String name of output directory"}
private

Definition at line 116 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaCurvature

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaCurvature

Definition at line 230 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaCurvatureMax

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaCurvatureMax

Definition at line 234 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaInExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_etaInExtrap = 0
private

Definition at line 207 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaOutExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_etaOutExtrap = 0
private

Definition at line 206 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaResidual

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaResidual
private

Definition at line 158 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaShift2D_road

TH2D* FPGATrackSimGenScanMonitoring::m_etaShift2D_road = 0
private

Definition at line 180 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaShift_road

TH1D* FPGATrackSimGenScanMonitoring::m_etaShift_road = 0
private

Definition at line 178 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaTrueBinShift

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaTrueBinShift
private

Definition at line 160 of file FPGATrackSimGenScanMonitoring.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_filteredpairs

TH1D* FPGATrackSimGenScanMonitoring::m_filteredpairs = 0
private

Definition at line 184 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitLyrsAllBins

TH1D* FPGATrackSimGenScanMonitoring::m_hitLyrsAllBins = 0
private

Definition at line 175 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsCntByLayer

std::vector<unsigned> FPGATrackSimGenScanMonitoring::m_hitsCntByLayer
private

Definition at line 144 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsLoadedPerLayer

TH1D* FPGATrackSimGenScanMonitoring::m_hitsLoadedPerLayer = 0
private

Definition at line 173 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsPerLayer

TH1D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer = 0
private

Definition at line 172 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsPerLayer2D

TH2D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer2D = 0
private

Definition at line 171 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsPerLayer_road

TH2D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer_road = 0
private

Definition at line 181 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputHits

TH1D* FPGATrackSimGenScanMonitoring::m_inputHits = 0
private

Definition at line 162 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputhitsperrow

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_inputhitsperrow
private

Definition at line 147 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputHitsPerRow

TH1D* FPGATrackSimGenScanMonitoring::m_inputHitsPerRow = 0
private

Definition at line 166 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputhitsperslice

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_inputhitsperslice
private

Definition at line 146 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputHitsPerSlice

TH1D* FPGATrackSimGenScanMonitoring::m_inputHitsPerSlice = 0
private

Definition at line 163 of file FPGATrackSimGenScanMonitoring.h.

◆ m_isSingleParticle

bool FPGATrackSimGenScanMonitoring::m_isSingleParticle = false
private

Definition at line 128 of file FPGATrackSimGenScanMonitoring.h.

◆ m_lostPairFilterGraph

eventDispSet FPGATrackSimGenScanMonitoring::m_lostPairFilterGraph {std::string("lostpairfilter"), 10}
private

Definition at line 277 of file FPGATrackSimGenScanMonitoring.h.

◆ m_lostPairSetFilterGraph

eventDispSet FPGATrackSimGenScanMonitoring::m_lostPairSetFilterGraph {std::string("lostpairsetfilter"), 10}
private

Definition at line 279 of file FPGATrackSimGenScanMonitoring.h.

◆ m_nLayers

unsigned FPGATrackSimGenScanMonitoring::m_nLayers = 0
private

Definition at line 120 of file FPGATrackSimGenScanMonitoring.h.

◆ m_nminus1_idx

unsigned FPGATrackSimGenScanMonitoring::m_nminus1_idx = 6
private

Definition at line 219 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputHitsPerBin

TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerBin = 0
private

Definition at line 169 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputhitsperrow

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_outputhitsperrow
private

Definition at line 150 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputHitsPerRow

TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerRow = 0
private

Definition at line 167 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputhitsperslice

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_outputhitsperslice
private

Definition at line 149 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputHitsPerSlice

TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerSlice = 0
private

Definition at line 164 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputroadsperrow

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_outputroadsperrow
private

Definition at line 151 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputRoadsPerRow

TH1D* FPGATrackSimGenScanMonitoring::m_outputRoadsPerRow = 0
private

Definition at line 168 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairinghits

TH1D* FPGATrackSimGenScanMonitoring::m_pairinghits = 0
private

Definition at line 194 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairMatchEta2D

TH2D* FPGATrackSimGenScanMonitoring::m_pairMatchEta2D = 0
private

Definition at line 240 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairMatchPhi2D

TH2D* FPGATrackSimGenScanMonitoring::m_pairMatchPhi2D = 0
private

Definition at line 239 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairs

TH1D* FPGATrackSimGenScanMonitoring::m_pairs = 0
private

Definition at line 183 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairSetMatchEta

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_pairSetMatchEta

Definition at line 228 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairSetMatchPhi

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_pairSetMatchPhi

Definition at line 227 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairsets

TH1D* FPGATrackSimGenScanMonitoring::m_pairsets = 0
private

Definition at line 185 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairsetsHits

TH2D* FPGATrackSimGenScanMonitoring::m_pairsetsHits = 0
private

Definition at line 190 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairsetsIncr

TH2D* FPGATrackSimGenScanMonitoring::m_pairsetsIncr = 0
private

Definition at line 189 of file FPGATrackSimGenScanMonitoring.h.

◆ m_passPairFilterGraph

eventDispSet FPGATrackSimGenScanMonitoring::m_passPairFilterGraph {std::string("passpairfilter"), 10}
private

Definition at line 278 of file FPGATrackSimGenScanMonitoring.h.

◆ m_passPairSetFilterGraph

eventDispSet FPGATrackSimGenScanMonitoring::m_passPairSetFilterGraph {std::string("passpairsetfilter"), 10}
private

Definition at line 280 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiCurvature

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiCurvature

Definition at line 229 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiCurvatureMax

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiCurvatureMax

Definition at line 233 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiInExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_phiInExtrap = 0
private

Definition at line 203 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiInExtrapCurved

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiInExtrapCurved

Definition at line 235 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiInExtrapCurveLimit

TH1D* FPGATrackSimGenScanMonitoring::m_phiInExtrapCurveLimit =0
private

Definition at line 205 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiOutExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_phiOutExtrap = 0
private

Definition at line 202 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiOutExtrapCurved

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurved

Definition at line 236 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiOutExtrapCurveLimit

TH1D* FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurveLimit =0
private

Definition at line 204 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiResidual

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiResidual
private

Definition at line 157 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiShift2D_road

TH2D* FPGATrackSimGenScanMonitoring::m_phiShift2D_road = 0
private

Definition at line 179 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiShift_road

TH1D* FPGATrackSimGenScanMonitoring::m_phiShift_road = 0
private

Definition at line 177 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiTrueBinShift

std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiTrueBinShift
private

Definition at line 159 of file FPGATrackSimGenScanMonitoring.h.

◆ m_rin

double FPGATrackSimGenScanMonitoring::m_rin =0.0
private

Definition at line 122 of file FPGATrackSimGenScanMonitoring.h.

◆ m_roadFilterFlow

TH1D* FPGATrackSimGenScanMonitoring::m_roadFilterFlow = 0
private

Definition at line 196 of file FPGATrackSimGenScanMonitoring.h.

◆ m_roadGraph

eventDispSet FPGATrackSimGenScanMonitoring::m_roadGraph {std::string("road"), 10}
private

Definition at line 276 of file FPGATrackSimGenScanMonitoring.h.

◆ m_rout

double FPGATrackSimGenScanMonitoring::m_rout =0.0
private

Definition at line 123 of file FPGATrackSimGenScanMonitoring.h.

◆ m_rZ_allhits

std::vector<TH2D *> FPGATrackSimGenScanMonitoring::m_rZ_allhits
private

Definition at line 155 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tHistSvc

ServiceHandle<ITHistSvc> FPGATrackSimGenScanMonitoring::m_tHistSvc {this, "THistSvc", "THistSvc"}
private

Definition at line 112 of file FPGATrackSimGenScanMonitoring.h.

◆ m_totalInputIncr

TH2D* FPGATrackSimGenScanMonitoring::m_totalInputIncr = 0
private

Definition at line 192 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_bin

std::vector<unsigned> FPGATrackSimGenScanMonitoring::m_tree_bin
private

Definition at line 286 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_dettype

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_dettype
private

Definition at line 295 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_detzone

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_detzone
private

Definition at line 296 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_etamod

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_etamod
private

Definition at line 293 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_hash

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_hash
private

Definition at line 290 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_id

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_id
private

Definition at line 289 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_layer

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_layer
private

Definition at line 291 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_phimod

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_phimod
private

Definition at line 294 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_r

std::vector<float> FPGATrackSimGenScanMonitoring::m_tree_r
private

Definition at line 287 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_side

std::vector<int> FPGATrackSimGenScanMonitoring::m_tree_side
private

Definition at line 292 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tree_z

std::vector<float> FPGATrackSimGenScanMonitoring::m_tree_z
private

Definition at line 288 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthbin

FPGATrackSimGenScanBinningBase::IdxSet FPGATrackSimGenScanMonitoring::m_truthbin
private

Definition at line 131 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthIsValid

bool FPGATrackSimGenScanMonitoring::m_truthIsValid = false
private

Definition at line 129 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthpars

FPGATrackSimTrackPars FPGATrackSimGenScanMonitoring::m_truthpars
private

Definition at line 130 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthpars_hists

TH1D* FPGATrackSimGenScanMonitoring::m_truthpars_hists[5] = {0, 0, 0, 0, 0}
private

Definition at line 156 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthparset

FPGATrackSimGenScanBinningBase::ParSet FPGATrackSimGenScanMonitoring::m_truthparset
private

Definition at line 132 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthtracks

std::vector<FPGATrackSimTruthTrack> const* FPGATrackSimGenScanMonitoring::m_truthtracks {nullptr}
private

Definition at line 127 of file FPGATrackSimGenScanMonitoring.h.

◆ m_twoPairClasses

const std::vector<std::string> FPGATrackSimGenScanMonitoring::m_twoPairClasses
inlinestaticprivate
Initial value:
= {
"", "_same", "_sequential", "_sameend", "_skip1", "_skip2", "_nm1"}

Definition at line 217 of file FPGATrackSimGenScanMonitoring.h.

◆ m_unpairedHits

TH2D* FPGATrackSimGenScanMonitoring::m_unpairedHits = 0
private

Definition at line 188 of file FPGATrackSimGenScanMonitoring.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files:
FPGATrackSimGenScanMonitoring::m_truthpars_hists
TH1D * m_truthpars_hists[5]
Definition: FPGATrackSimGenScanMonitoring.h:156
FPGATrackSimGenScanMonitoring::m_tree_layer
std::vector< int > m_tree_layer
Definition: FPGATrackSimGenScanMonitoring.h:291
FPGATrackSimGenScanMonitoring::m_deltaEta
TH1D * m_deltaEta
Definition: FPGATrackSimGenScanMonitoring.h:199
FPGATrackSimGenScanMonitoring::m_phiInExtrapCurveLimit
TH1D * m_phiInExtrapCurveLimit
Definition: FPGATrackSimGenScanMonitoring.h:205
FPGATrackSimGenScanMonitoring::m_phiShift_road
TH1D * m_phiShift_road
Definition: FPGATrackSimGenScanMonitoring.h:177
FPGATrackSimTrackPars::IHIP
@ IHIP
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanArray
Definition: FPGATrackSimGenScanArray.h:41
FPGATrackSimGenScanMonitoring::m_truthtracks
std::vector< FPGATrackSimTruthTrack > const * m_truthtracks
Definition: FPGATrackSimGenScanMonitoring.h:127
FPGATrackSimGenScanMonitoring::m_totalInputIncr
TH2D * m_totalInputIncr
Definition: FPGATrackSimGenScanMonitoring.h:192
plotBeamSpotCompare.x1
x1
Definition: plotBeamSpotCompare.py:216
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
FPGATrackSimGenScanMonitoring::m_inputhitsperrow
FPGATrackSimGenScanArray< int > m_inputhitsperrow
Definition: FPGATrackSimGenScanMonitoring.h:147
FPGATrackSimTrackPars::ID0
@ ID0
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanMonitoring::m_tree_hash
std::vector< int > m_tree_hash
Definition: FPGATrackSimGenScanMonitoring.h:290
getMenu.algname
algname
Definition: getMenu.py:54
FPGATrackSimGenScanTool::HitPair::PhiInExtrap
double PhiInExtrap(double r_in) const
Definition: FPGATrackSimGenScanTool.h:246
FPGATrackSimGenScanMonitoring::m_lostPairSetFilterGraph
eventDispSet m_lostPairSetFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:279
FPGATrackSimGenScanMonitoring::m_binStagesIncr
TH2D * m_binStagesIncr
Definition: FPGATrackSimGenScanMonitoring.h:191
AddEmptyComponent.binning
binning
Definition: AddEmptyComponent.py:34
FPGATrackSimGenScanMonitoring::m_deltaEtaByLyr
std::vector< TH1D * > m_deltaEtaByLyr
Definition: FPGATrackSimGenScanMonitoring.h:209
FPGATrackSimGenScanMonitoring::m_outputRoadsPerRow
TH1D * m_outputRoadsPerRow
Definition: FPGATrackSimGenScanMonitoring.h:168
FPGATrackSimGenScanMonitoring::m_dir
Gaudi::Property< std::string > m_dir
Definition: FPGATrackSimGenScanMonitoring.h:116
TRTCalib_Extractor.hits
hits
Definition: TRTCalib_Extractor.py:35
FPGATrackSimGenScanMonitoring::m_pairsetsHits
TH2D * m_pairsetsHits
Definition: FPGATrackSimGenScanMonitoring.h:190
FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurveLimit
TH1D * m_phiOutExtrapCurveLimit
Definition: FPGATrackSimGenScanMonitoring.h:204
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
FPGATrackSimGenScanMonitoring::m_deltaEtaDR
TH1D * m_deltaEtaDR
Definition: FPGATrackSimGenScanMonitoring.h:201
FPGATrackSimGenScanMonitoring::m_phiTrueBinShift
std::vector< TH1D * > m_phiTrueBinShift
Definition: FPGATrackSimGenScanMonitoring.h:159
FPGATrackSimGenScanMonitoring::m_tree_detzone
std::vector< int > m_tree_detzone
Definition: FPGATrackSimGenScanMonitoring.h:296
FPGATrackSimGenScanMonitoring::m_phiCurvature
std::vector< TH1D * > m_phiCurvature
Definition: FPGATrackSimGenScanMonitoring.h:229
FPGATrackSimGenScanMonitoring::m_etaResidual
std::vector< TH1D * > m_etaResidual
Definition: FPGATrackSimGenScanMonitoring.h:158
FPGATrackSimGenScanMonitoring::makeAndRegHist
StatusCode makeAndRegHist(HistType *&ptr, HistDef... histargs)
Definition: FPGATrackSimGenScanMonitoring.h:301
FPGATrackSimTrackPars
Definition: FPGATrackSimTrackPars.h:22
FPGATrackSimGenScanBinningBase::inRange
bool inRange(unsigned par, double val) const
Definition: FPGATrackSimGenScanBinning.h:227
FPGATrackSimGenScanMonitoring::m_lostPairFilterGraph
eventDispSet m_lostPairFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:277
AthCommonDataStore::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
FPGATrackSimGenScanMonitoring::m_outputroadsperrow
FPGATrackSimGenScanArray< int > m_outputroadsperrow
Definition: FPGATrackSimGenScanMonitoring.h:151
FPGATrackSimGenScanMonitoring::allocateDataFlowCounters
void allocateDataFlowCounters()
Definition: FPGATrackSimGenScanMonitoring.cxx:223
FPGATrackSimGenScanMonitoring::m_pairSetMatchEta
std::vector< TH1D * > m_pairSetMatchEta
Definition: FPGATrackSimGenScanMonitoring.h:228
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
FPGATrackSimTrackPars::IZ0
@ IZ0
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanMonitoring::m_tree_bin
std::vector< unsigned > m_tree_bin
Definition: FPGATrackSimGenScanMonitoring.h:286
FPGATrackSimGenScanMonitoring::m_hitsLoadedPerLayer
TH1D * m_hitsLoadedPerLayer
Definition: FPGATrackSimGenScanMonitoring.h:173
FPGATrackSimGenScanBinningBase::ParSet
Definition: FPGATrackSimGenScanBinning.h:101
FPGATrackSimGenScanMonitoring::setBinPlotsActive
void setBinPlotsActive(const FPGATrackSimGenScanBinningBase::IdxSet &idx)
Definition: FPGATrackSimGenScanMonitoring.h:137
FPGATrackSimGenScanBinningBase::sliceAndScanIdx
virtual std::vector< unsigned > sliceAndScanIdx(const IdxSet &idx) const
Definition: FPGATrackSimGenScanBinning.h:207
FPGATrackSimGenScanMonitoring::m_pairs
TH1D * m_pairs
Definition: FPGATrackSimGenScanMonitoring.h:183
FPGATrackSimGenScanMonitoring::makeAndRegHistVector
StatusCode makeAndRegHistVector(std::vector< HistType * > &vec, unsigned len, const std::vector< std::string > *namevec, const char *namebase, HistDef... histargs)
Definition: FPGATrackSimGenScanMonitoring.h:310
FPGATrackSimHit::getLayer
unsigned getLayer() const
Definition: FPGATrackSimHit.cxx:77
bin
Definition: BinsDiffFromStripMedian.h:43
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
FPGATrackSimGenScanBinningBase::parNames
virtual const std::string & parNames(unsigned i) const =0
FPGATrackSimGenScanBinningBase::etaResidual
virtual double etaResidual(const ParSet &parset, FPGATrackSimHit const *hit, [[maybe_unused]] bool debug=false) const =0
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:9
FPGATrackSimGenScanTool::HitPairSet::hitLayers
layer_bitmask_t hitLayers
Definition: FPGATrackSimGenScanTool.h:270
FPGATrackSimGenScanTool::HitPair::EtaOutExtrap
double EtaOutExtrap(double r_out) const
Definition: FPGATrackSimGenScanTool.h:249
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
FPGATrackSimGenScanMonitoring::m_rZ_allhits
std::vector< TH2D * > m_rZ_allhits
Definition: FPGATrackSimGenScanMonitoring.h:155
FPGATrackSimGenScanMonitoring::m_nLayers
unsigned m_nLayers
Definition: FPGATrackSimGenScanMonitoring.h:120
FPGATrackSimGenScanMonitoring::m_pairMatchEta2D
TH2D * m_pairMatchEta2D
Definition: FPGATrackSimGenScanMonitoring.h:240
dbg::ptr
void * ptr(T *p)
Definition: SGImplSvc.cxx:74
FPGATrackSimGenScanMonitoring::m_tree_side
std::vector< int > m_tree_side
Definition: FPGATrackSimGenScanMonitoring.h:292
FPGATrackSimGenScanBinningBase::m_parMax
ParSet m_parMax
Definition: FPGATrackSimGenScanBinning.h:268
FPGATrackSimGenScanBinningBase::phiHistScale
virtual double phiHistScale() const =0
FPGATrackSimGenScanMonitoring::m_etaOutExtrap
TH1D * m_etaOutExtrap
Definition: FPGATrackSimGenScanMonitoring.h:206
FPGATrackSimGenScanMonitoring::m_etaCurvature
std::vector< TH1D * > m_etaCurvature
Definition: FPGATrackSimGenScanMonitoring.h:230
FPGATrackSimGenScanMonitoring::m_roadGraph
eventDispSet m_roadGraph
Definition: FPGATrackSimGenScanMonitoring.h:276
FPGATrackSimGenScanBinningBase::trackParsToParSet
virtual const ParSet trackParsToParSet(const FPGATrackSimTrackPars &pars) const =0
FPGATrackSimGenScanMonitoring::m_phiInExtrapCurved
std::vector< TH1D * > m_phiInExtrapCurved
Definition: FPGATrackSimGenScanMonitoring.h:235
FPGATrackSimGenScanMonitoring::m_tHistSvc
ServiceHandle< ITHistSvc > m_tHistSvc
Definition: FPGATrackSimGenScanMonitoring.h:112
FPGATrackSimGenScanMonitoring::m_phiInExtrap
TH1D * m_phiInExtrap
Definition: FPGATrackSimGenScanMonitoring.h:203
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
FPGATrackSimGenScanBinningBase::m_invalidBin
const IdxSet m_invalidBin
Definition: FPGATrackSimGenScanBinning.h:273
python.CreateTierZeroArgdict.pairs
pairs
Definition: CreateTierZeroArgdict.py:201
FPGATrackSimGenScanTool::HitPair::dR
double dR() const
Definition: FPGATrackSimGenScanTool.h:234
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
FPGATrackSimGenScanMonitoring::bookTree
StatusCode bookTree()
Definition: FPGATrackSimGenScanMonitoring.cxx:190
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
FPGATrackSimGenScanMonitoring::m_truthbin
FPGATrackSimGenScanBinningBase::IdxSet m_truthbin
Definition: FPGATrackSimGenScanMonitoring.h:131
FPGATrackSimGenScanMonitoring::m_pairsetsIncr
TH2D * m_pairsetsIncr
Definition: FPGATrackSimGenScanMonitoring.h:189
FPGATrackSimGenScanMonitoring::m_inputhitsperslice
FPGATrackSimGenScanArray< int > m_inputhitsperslice
Definition: FPGATrackSimGenScanMonitoring.h:146
FPGATrackSimGenScanBinningBase::etaHistScale
virtual double etaHistScale() const =0
FPGATrackSimGenScanMonitoring::eventDispSet::addEvent
void addEvent(const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits)
Definition: FPGATrackSimGenScanMonitoring.cxx:660
FPGATrackSimGenScanBinningBase::NPars
static constexpr unsigned NPars
Definition: FPGATrackSimGenScanBinning.h:266
FPGATrackSimGenScanBinningBase::sliceIdx
virtual std::vector< unsigned > sliceIdx(const IdxSet &idx) const
Definition: FPGATrackSimGenScanBinning.h:205
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
FPGATrackSimGenScanMonitoring::m_deltaPhi
TH1D * m_deltaPhi
Definition: FPGATrackSimGenScanMonitoring.h:198
FPGATrackSimGenScanMonitoring::m_phiShift2D_road
TH2D * m_phiShift2D_road
Definition: FPGATrackSimGenScanMonitoring.h:179
AthCommonDataStore
Definition: AthCommonDataStore.h:52
FPGATrackSimGenScanMonitoring::m_deltaDeltaEta
std::vector< TH1D * > m_deltaDeltaEta
Definition: FPGATrackSimGenScanMonitoring.h:226
FPGATrackSimGenScanBinningBase::scanPars
virtual std::vector< unsigned > scanPars() const =0
FPGATrackSimGenScanBinningBase::slicePars
virtual std::vector< unsigned > slicePars() const =0
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
FPGATrackSimGenScanMonitoring::m_allHitsGraph
eventDispSet m_allHitsGraph
Definition: FPGATrackSimGenScanMonitoring.h:275
FPGATrackSimGenScanMonitoring::m_etaTrueBinShift
std::vector< TH1D * > m_etaTrueBinShift
Definition: FPGATrackSimGenScanMonitoring.h:160
FPGATrackSimGenScanBinningBase::phiResidual
virtual double phiResidual(const ParSet &parset, FPGATrackSimHit const *hit, [[maybe_unused]] bool debug=false) const =0
FPGATrackSimGenScanMonitoring::m_phiResidual
std::vector< TH1D * > m_phiResidual
Definition: FPGATrackSimGenScanMonitoring.h:157
FPGATrackSimGenScanMonitoring::m_tree_id
std::vector< int > m_tree_id
Definition: FPGATrackSimGenScanMonitoring.h:289
lumiFormat.i
int i
Definition: lumiFormat.py:85
FPGATrackSimGenScanMonitoring::ClearTreeVectors
void ClearTreeVectors()
Definition: FPGATrackSimGenScanMonitoring.cxx:208
FPGATrackSimGenScanMonitoring::m_filteredpairs
TH1D * m_filteredpairs
Definition: FPGATrackSimGenScanMonitoring.h:184
python.CaloCondTools.g
g
Definition: CaloCondTools.py:15
FPGATrackSimGenScanMonitoring::m_binPlotsActive
bool m_binPlotsActive
Definition: FPGATrackSimGenScanMonitoring.h:140
FPGATrackSimGenScanMonitoring::m_hitLyrsAllBins
TH1D * m_hitLyrsAllBins
Definition: FPGATrackSimGenScanMonitoring.h:175
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
FPGATrackSimGenScanMonitoring::m_deltaPhiDR
TH1D * m_deltaPhiDR
Definition: FPGATrackSimGenScanMonitoring.h:200
urldecode::states
states
Definition: urldecode.h:39
python.LArMinBiasAlgConfig.int
int
Definition: LArMinBiasAlgConfig.py:59
FPGATrackSimGenScanMonitoring::m_inputHitsPerSlice
TH1D * m_inputHitsPerSlice
Definition: FPGATrackSimGenScanMonitoring.h:163
FPGATrackSimGenScanMonitoring::m_etaShift2D_road
TH2D * m_etaShift2D_road
Definition: FPGATrackSimGenScanMonitoring.h:180
FPGATrackSimGenScanMonitoring::m_pairsets
TH1D * m_pairsets
Definition: FPGATrackSimGenScanMonitoring.h:185
FPGATrackSimGenScanMonitoring::m_hitsCntByLayer
std::vector< unsigned > m_hitsCntByLayer
Definition: FPGATrackSimGenScanMonitoring.h:144
FPGATrackSimGenScanMonitoring::m_pairSetMatchPhi
std::vector< TH1D * > m_pairSetMatchPhi
Definition: FPGATrackSimGenScanMonitoring.h:227
FPGATrackSimGenScanMonitoring::m_isSingleParticle
bool m_isSingleParticle
Definition: FPGATrackSimGenScanMonitoring.h:128
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
FPGATrackSimGenScanBinningBase::sliceAndScanBins
virtual std::vector< unsigned > sliceAndScanBins() const
Definition: FPGATrackSimGenScanBinning.h:201
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
FPGATrackSimGenScanMonitoring::m_outputHitsPerRow
TH1D * m_outputHitsPerRow
Definition: FPGATrackSimGenScanMonitoring.h:167
FPGATrackSimGenScanMonitoring::m_etaInExtrap
TH1D * m_etaInExtrap
Definition: FPGATrackSimGenScanMonitoring.h:207
FPGATrackSimGenScanMonitoring::m_truthparset
FPGATrackSimGenScanBinningBase::ParSet m_truthparset
Definition: FPGATrackSimGenScanMonitoring.h:132
MC::isSingleParticle
bool isSingleParticle(const T &p)
Identify a particlegun particle.
Definition: HepMCHelpers.h:74
FPGATrackSimGenScanMonitoring::m_tree_z
std::vector< float > m_tree_z
Definition: FPGATrackSimGenScanMonitoring.h:288
AthAlgTool::AthAlgTool
AthAlgTool()
Default constructor:
FPGATrackSimHit::getZ
float getZ() const
Definition: FPGATrackSimHit.h:142
FPGATrackSimGenScanMonitoring::m_inputHits
TH1D * m_inputHits
Definition: FPGATrackSimGenScanMonitoring.h:162
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
FPGATrackSimGenScanMonitoring::m_outputHitsPerBin
TH1D * m_outputHitsPerBin
Definition: FPGATrackSimGenScanMonitoring.h:169
FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurved
std::vector< TH1D * > m_phiOutExtrapCurved
Definition: FPGATrackSimGenScanMonitoring.h:236
FPGATrackSimGenScanMonitoring::m_bin_module_tree
TTree * m_bin_module_tree
Definition: FPGATrackSimGenScanMonitoring.h:285
FPGATrackSimGenScanMonitoring::m_inputHitsPerRow
TH1D * m_inputHitsPerRow
Definition: FPGATrackSimGenScanMonitoring.h:166
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
FPGATrackSimGenScanMonitoring::m_truthpars
FPGATrackSimTrackPars m_truthpars
Definition: FPGATrackSimGenScanMonitoring.h:130
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
ActsTrk::to_string
std::string to_string(const DetectorType &type)
Definition: GeometryDefs.h:34
FPGATrackSimGenScanMonitoring::pairpairCategory
unsigned pairpairCategory(const FPGATrackSimGenScanTool::HitPair &pair, const FPGATrackSimGenScanTool::HitPair &lastpair) const
Definition: FPGATrackSimGenScanMonitoring.cxx:548
FPGATrackSimGenScanTool::HitPair::dPhi
double dPhi() const
Definition: FPGATrackSimGenScanTool.h:232
FPGATrackSimGenScanMonitoring::m_passPairFilterGraph
eventDispSet m_passPairFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:278
threshold
Definition: chainparser.cxx:74
FPGATrackSimGenScanBinningBase::etaShift
double etaShift(const IdxSet &idx, FPGATrackSimHit const *hit, bool debug=false) const
Definition: FPGATrackSimGenScanBinning.h:196
FPGATrackSimTrackPars::IPHI
@ IPHI
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanMonitoring::m_passPairSetFilterGraph
eventDispSet m_passPairSetFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:280
FPGATrackSimGenScanMonitoring::m_pairMatchPhi2D
TH2D * m_pairMatchPhi2D
Definition: FPGATrackSimGenScanMonitoring.h:239
FPGATrackSimGenScanTool::HitPairSet::pairList
std::vector< HitPair > pairList
Definition: FPGATrackSimGenScanTool.h:267
FPGATrackSimGenScanBinningBase::parsToBin
const IdxSet parsToBin(FPGATrackSimTrackPars &pars) const
Definition: FPGATrackSimGenScanBinning.cxx:38
FPGATrackSimGenScanMonitoring::m_rin
double m_rin
Definition: FPGATrackSimGenScanMonitoring.h:122
FPGATrackSimGenScanBinningBase::m_parMin
ParSet m_parMin
Definition: FPGATrackSimGenScanBinning.h:267
FPGATrackSimGenScanTool::HitPair::dEta
double dEta() const
Definition: FPGATrackSimGenScanTool.h:233
FPGATrackSimGenScanMonitoring::m_nminus1_idx
unsigned m_nminus1_idx
Definition: FPGATrackSimGenScanMonitoring.h:219
FPGATrackSimGenScanMonitoring::m_deltaPhiByLyr
std::vector< TH1D * > m_deltaPhiByLyr
Definition: FPGATrackSimGenScanMonitoring.h:208
FPGATrackSimGenScanMonitoring::m_hitsPerLayer2D
TH2D * m_hitsPerLayer2D
Definition: FPGATrackSimGenScanMonitoring.h:171
FPGATrackSimHit::getR
float getR() const
Definition: FPGATrackSimHit.h:143
a
TList * a
Definition: liststreamerinfos.cxx:10
FPGATrackSimGenScanMonitoring::m_roadFilterFlow
TH1D * m_roadFilterFlow
Definition: FPGATrackSimGenScanMonitoring.h:196
h
std::sort
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
Definition: DVL_algorithms.h:623
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
FPGATrackSimGenScanMonitoring::m_deltaEtaCurvature
std::vector< TH1D * > m_deltaEtaCurvature
Definition: FPGATrackSimGenScanMonitoring.h:232
FPGATrackSimGenScanBinningBase::parSetToTrackPars
virtual const FPGATrackSimTrackPars parSetToTrackPars(const ParSet &parset) const =0
FPGATrackSimGenScanTool::HitPairSet::lyrCnt
unsigned int lyrCnt() const
Definition: FPGATrackSimGenScanTool.h:287
FPGATrackSimGenScanMonitoring::m_binning
const FPGATrackSimGenScanBinningBase * m_binning
Definition: FPGATrackSimGenScanMonitoring.h:121
FPGATrackSimGenScanMonitoring::m_tree_phimod
std::vector< int > m_tree_phimod
Definition: FPGATrackSimGenScanMonitoring.h:294
FPGATrackSimGenScanMonitoring::m_outputhitsperrow
FPGATrackSimGenScanArray< int > m_outputhitsperrow
Definition: FPGATrackSimGenScanMonitoring.h:150
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
FPGATrackSimGenScanTool::HitPairSet::hitlist
std::vector< const StoredHit * > hitlist
Definition: FPGATrackSimGenScanTool.h:273
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:629
FPGATrackSimGenScanMonitoring::m_pairinghits
TH1D * m_pairinghits
Definition: FPGATrackSimGenScanMonitoring.h:194
FPGATrackSimGenScanMonitoring::m_outputhitsperslice
FPGATrackSimGenScanArray< int > m_outputhitsperslice
Definition: FPGATrackSimGenScanMonitoring.h:149
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
FPGATrackSimGenScanMonitoring::m_twoPairClasses
static const std::vector< std::string > m_twoPairClasses
Definition: FPGATrackSimGenScanMonitoring.h:217
FPGATrackSimGenScanMonitoring::m_tree_dettype
std::vector< int > m_tree_dettype
Definition: FPGATrackSimGenScanMonitoring.h:295
FPGATrackSimGenScanMonitoring::m_truthIsValid
bool m_truthIsValid
Definition: FPGATrackSimGenScanMonitoring.h:129
FPGATrackSimGenScanMonitoring::m_deltaPhiCurvature
std::vector< TH1D * > m_deltaPhiCurvature
Definition: FPGATrackSimGenScanMonitoring.h:231
FPGATrackSimGenScanMonitoring::m_deltaDeltaPhi
std::vector< TH1D * > m_deltaDeltaPhi
Definition: FPGATrackSimGenScanMonitoring.h:225
FPGATrackSimGenScanBinningBase::phiShift
double phiShift(const IdxSet &idx, FPGATrackSimHit const *hit, bool debug=false) const
Definition: FPGATrackSimGenScanBinning.h:195
FPGATrackSimGenScanMonitoring::m_outputHitsPerSlice
TH1D * m_outputHitsPerSlice
Definition: FPGATrackSimGenScanMonitoring.h:164
FPGATrackSimGenScanBinningBase::makeVariationSet
std::vector< ParSet > makeVariationSet(const std::vector< unsigned > &scanpars, const IdxSet &idx) const
Definition: FPGATrackSimGenScanBinning.cxx:109
FPGATrackSimGenScanBinningBase::sliceBins
virtual std::vector< unsigned > sliceBins() const
Definition: FPGATrackSimGenScanBinning.h:199
FPGATrackSimGenScanMonitoring::m_phiOutExtrap
TH1D * m_phiOutExtrap
Definition: FPGATrackSimGenScanMonitoring.h:202
FPGATrackSimGenScanMonitoring::m_tree_etamod
std::vector< int > m_tree_etamod
Definition: FPGATrackSimGenScanMonitoring.h:293
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
FPGATrackSimGenScanArray::setsize
void setsize(const std::vector< unsigned int > &dims, const T &initval)
Definition: FPGATrackSimGenScanArray.h:51
FPGATrackSimGenScanMonitoring::m_tree_r
std::vector< float > m_tree_r
Definition: FPGATrackSimGenScanMonitoring.h:287
fitman.k
k
Definition: fitman.py:528
FPGATrackSimGenScanMonitoring::m_hitsPerLayer_road
TH2D * m_hitsPerLayer_road
Definition: FPGATrackSimGenScanMonitoring.h:181
FPGATrackSimGenScanMonitoring::m_unpairedHits
TH2D * m_unpairedHits
Definition: FPGATrackSimGenScanMonitoring.h:188
FPGATrackSimGenScanMonitoring::m_etaShift_road
TH1D * m_etaShift_road
Definition: FPGATrackSimGenScanMonitoring.h:178
FPGATrackSimGenScanTool::HitPair::EtaInExtrap
double EtaInExtrap(double r_in) const
Definition: FPGATrackSimGenScanTool.h:252
FPGATrackSimGenScanBinningBase::subVec
std::vector< unsigned > subVec(const std::vector< unsigned > &elems, const IdxSet &invec) const
Definition: FPGATrackSimGenScanBinning.cxx:78
FPGATrackSimTrackPars::IETA
@ IETA
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanTool::HitPair::PhiOutExtrap
double PhiOutExtrap(double r_out) const
Definition: FPGATrackSimGenScanTool.h:242
FPGATrackSimGenScanMonitoring::m_hitsPerLayer
TH1D * m_hitsPerLayer
Definition: FPGATrackSimGenScanMonitoring.h:172
FPGATrackSimGenScanMonitoring::m_rout
double m_rout
Definition: FPGATrackSimGenScanMonitoring.h:123