ATLAS Offline Software
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, 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)
 
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
 
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}
 
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 36 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 14 of file FPGATrackSimGenScanMonitoring.cxx.

14  :
15  AthAlgTool(algname, name, ifc)
16 {
17 }

Member Function Documentation

◆ allocateDataFlowCounters()

void FPGATrackSimGenScanMonitoring::allocateDataFlowCounters ( )

◆ 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 58 of file FPGATrackSimGenScanMonitoring.h.

58 {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,
const std::vector< std::vector< const FPGATrackSimGenScanTool::StoredHit * > > &  hitsByLayer 
)

Definition at line 227 of file FPGATrackSimGenScanMonitoring.cxx.

230 {
232 
233  m_outputHitsPerBin->Fill(data.hits.size());
234  m_outputhitsperslice[m_binning->sliceIdx(idx)] += data.hits.size();
237 
238  m_roadGraph.addEvent(data.hits);
239 
240  if (m_binPlotsActive) {
241  for (auto& hit : data.hits) {
242  m_phiShift_road->Fill(hit.phiShift);
243  m_etaShift_road->Fill(hit.etaShift);
244  m_phiShift2D_road->Fill(hit.phiShift, hit.hitptr->getR());
245  m_etaShift2D_road->Fill(hit.etaShift, hit.hitptr->getR());
246  }
247  }
248 
249  for (unsigned lyr = 0; lyr < m_nLayers; lyr++)
250  {
251  m_hitsPerLayer_road->Fill(lyr, hitsByLayer[lyr].size());
252  }
253 }

◆ fillBuildGroupsWithPairs()

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

Definition at line 558 of file FPGATrackSimGenScanMonitoring.cxx.

560  {
561 
562  for (unsigned i = 0; i < states.size(); i++) {
563  m_unpairedHits->Fill(i, states[i].unpairedHits.size());
564  m_pairsetsIncr->Fill(i, states[i].pairsets.size());
565  for (auto& pair : states[i].pairsets) {
566  m_pairsetsHits->Fill(i, pair.hitlist.size());
567  }
568  unsigned totalInput = states[i].pairsets.size() +states[i].unpairedHits.size();
569  m_totalInputIncr->Fill(i, totalInput);
570  m_binStagesIncr->Fill(i, (i <= allowed_misses)||(totalInput>0));
571  }
572 }

◆ fillHitLevelInput()

void FPGATrackSimGenScanMonitoring::fillHitLevelInput ( const FPGATrackSimHit hit)

Definition at line 255 of file FPGATrackSimGenScanMonitoring.cxx.

255  {
256  m_rZ_allhits[m_nLayers]->Fill(hit->getZ(), hit->getR()); // all layer plot
257  m_rZ_allhits[hit->getLayer()]->Fill(hit->getZ(), hit->getR()); // layer specific plot
258  m_hitsCntByLayer[hit->getLayer()]++;
259  if (m_truthIsValid)
260  {
265 
271  }
272  }
273 }

◆ fillInputSummary()

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

Definition at line 322 of file FPGATrackSimGenScanMonitoring.cxx.

326 {
327  m_inputHits->Fill(hits.size());
329 
331  {
332  if (!validSlice[val.idx()]) continue;
333  m_inputHitsPerSlice->Fill(val.data());
334  }
335 
337  {
338  if (!validSliceAndScan[val.idx()]) continue;
339  m_inputHitsPerRow->Fill(val.data());
340  }
341 
342  for (unsigned i = 0; i < m_nLayers; i++)
343  {
346  }
347 }

◆ fillOutputSummary()

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

Definition at line 349 of file FPGATrackSimGenScanMonitoring.cxx.

352 {
354  {
355  if (!validSlice[val.idx()]) continue;
356  m_outputHitsPerSlice->Fill(val.data());
357  }
359  {
360  if (!validSliceAndScan[val.idx()]) continue;
361  m_outputHitsPerRow->Fill(val.data());
362  }
364  if (!validSliceAndScan[val.idx()]) continue;
365  m_outputRoadsPerRow->Fill(val.data());
366  }
367 }

◆ fillPairFilterCuts()

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

Definition at line 455 of file FPGATrackSimGenScanMonitoring.cxx.

456  {
457  // m_pairs->Fill(pairs.pairList.size());
458  if (m_binPlotsActive) {
459  int lyr = pair.first->hitptr->getLayer();
460  m_deltaPhi->Fill(pair.dPhi());
461  m_deltaEta->Fill(pair.dEta());
462  m_deltaPhiDR->Fill(pair.dPhi() / pair.dR());
463  m_deltaEtaDR->Fill(pair.dEta() / pair.dR());
464  m_deltaPhiByLyr[lyr]->Fill(pair.dPhi());
465  m_deltaEtaByLyr[lyr]->Fill(pair.dEta());
466  m_phiInExtrap->Fill(pair.PhiInExtrap(m_rin));
467  m_phiOutExtrap->Fill(pair.PhiOutExtrap(m_rout));
468  m_etaInExtrap->Fill(pair.EtaInExtrap(m_rin));
469  m_etaOutExtrap->Fill(pair.EtaOutExtrap(m_rout));
470  }
471 }

◆ fillPairingHits()

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

Definition at line 437 of file FPGATrackSimGenScanMonitoring.cxx.

440  {
441 
442  auto size_if_nonzero_ptr =
443  [](std::vector<const FPGATrackSimGenScanTool::StoredHit *> const *ptr) {
444  if (ptr) {
445  return int(ptr->size());
446  } else {
447  return 0;
448  }
449  };
450 
451  m_pairinghits->Fill(size_if_nonzero_ptr(lastlyr) +
452  size_if_nonzero_ptr(lastlastlyr));
453 }

◆ fillPairSetFilterCut()

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

Definition at line 526 of file FPGATrackSimGenScanMonitoring.cxx.

529  {
530 
531  if (m_binPlotsActive) {
532  unsigned ppcat = pairpairCategory(pair, lastpair);
533  histset[0]->Fill(val); // 0 is "all"
534  histset[ppcat]->Fill(val); // 0 is "all"
535  if (nminus1)
536  histset[m_nminus1_idx]->Fill(val);
537  }
538 
539 }

◆ incrementInputPerScan()

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

Definition at line 307 of file FPGATrackSimGenScanMonitoring.cxx.

309  {
310  if (rowRange.second > rowRange.first) {
311  m_hitsLoadedPerLayer->Fill(double(hit->getLayer()));
313  } else {
314  // Nice debug check for if hit is in the truthbin for single track sample
315  if (m_truthIsValid &&
317  ATH_MSG_DEBUG("truth bin missed row ");
318  }
319  }
320 }

◆ incrementInputPerSlice()

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

Definition at line 89 of file FPGATrackSimGenScanMonitoring.h.

89 { m_inputhitsperslice[sliceidx]++; }

◆ initialize()

StatusCode FPGATrackSimGenScanMonitoring::initialize ( )
overridevirtual

Definition at line 19 of file FPGATrackSimGenScanMonitoring.cxx.

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

◆ 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.

◆ makeAndRegHist()

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

Definition at line 279 of file FPGATrackSimGenScanMonitoring.h.

280  {
281  ptr = new HistType(histargs...);
282  ATH_CHECK(m_tHistSvc->regHist(m_dir + ptr->GetName(), ptr));
283  return StatusCode::SUCCESS;
284  }

◆ 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 288 of file FPGATrackSimGenScanMonitoring.h.

289  {
290  if (vec.size()==0){
291  for (unsigned i = 0; i < len; i++) {
292  HistType *ptr = 0;
293  std::string name = std::string(namebase);
294  if (!namevec) {
295  name += std::to_string(i);
296  } else {
297  if (namevec->size()==len) {
298  name += (*namevec)[i];
299  } else {
300  return StatusCode::FAILURE;
301  }
302  }
303  ATH_CHECK(makeAndRegHist(ptr, name.c_str(), histargs...));
304  vec.push_back(ptr);
305  }
306  }
307  return StatusCode::SUCCESS;
308  }

◆ 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 282 of file FPGATrackSimGenScanMonitoring.cxx.

285  {
286 
287  m_roadFilterFlow->Fill(0);
288  m_pairs->Fill(pairs.pairList.size());
289  m_filteredpairs->Fill(filteredpairs.pairList.size());
290 
291  if (passedPairFilter) {
292  // if passed mark progress in flow histogram and make passed Histogram
293  m_roadFilterFlow->Fill(1);
294  m_passPairFilterGraph.addEvent(filteredpairs.hitlist);
295  } else {
296  // If the true bin didn't pass print some debug and make a lost event
297  // display
298  if (m_binPlotsActive) {
299  ATH_MSG_INFO("lost at pair filter : hit layers = "
300  << filteredpairs.lyrCnt() << " "
301  << std::bitset<16>(filteredpairs.hitLayers));
303  }
304  }
305 }

◆ pairpairCategory()

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

Definition at line 479 of file FPGATrackSimGenScanMonitoring.cxx.

482 {
483  int minlyr = std::min(lastpair.first->layer, lastpair.second->layer);
484  minlyr = std::min(minlyr, pair.first->layer);
485  minlyr = std::min(minlyr, pair.second->layer);
486 
487  unsigned hitbits =
488  ((1 << lastpair.first->layer) | (1 << lastpair.second->layer) |
489  (1 << pair.first->layer) | (1 << pair.second->layer));
490  hitbits = hitbits >> minlyr; // now bit list starts with lowest hit layer
491 
492  int hitlyrs = __builtin_popcount(hitbits);
493 
494  assert(hitbits & 0x1);
495 
496  unsigned retv = 0;
497  if (hitlyrs == 2) // must be same layers
498  {
499  retv = 1;
500  } else if (hitlyrs == 3) {
501  if (hitbits == 0b111) // 3 bits in a row -> adjacent layers
502  {
503  if ((lastpair.first->layer == pair.second->layer) ||
504  (pair.first->layer == lastpair.second->layer)) {
505  retv = 2; // sequential
506  } else {
507  retv = 3; // one is a skip and the other isn't
508  }
509  } else if ((hitbits == 0b1101) || (hitbits == 0b1011)) // skips 1 layer
510  {
511  retv = 4;
512  }
513  } else {
514  retv = 5;
515  }
516 
517  ATH_MSG_VERBOSE("pairpairCat "
518  << m_twoPairClasses[retv] << " " << lastpair.first->layer << " "
519  << lastpair.second->layer << " " << pair.first->layer << " "
520  << pair.second->layer << " : " << minlyr << " "
521  << std::bitset<16>(hitbits));
522 
523  return retv;
524 }

◆ pairSetFilterCheck()

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

Definition at line 541 of file FPGATrackSimGenScanMonitoring.cxx.

544  {
545  m_pairsets->Fill(pairsets.size());
546 
547  for (auto pairset : pairsets) {
548  // if over threshold add it to the output
549  if (pairset.lyrCnt() >= threshold) {
550  m_roadFilterFlow->Fill(3);
551  m_passPairSetFilterGraph.addEvent(pairset.hitlist);
552  } else {
554  }
555  }
556 }

◆ parseTruthInfo()

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

Definition at line 371 of file FPGATrackSimGenScanMonitoring.cxx.

374 {
375  ATH_MSG_DEBUG("In parseTruthInfo ptr = " << truthtracks
376  << " size = " << (truthtracks ? truthtracks->size() : 0));
378  m_truthtracks = truthtracks;
379 
380  if (m_truthtracks)
381  {
382  if (m_truthtracks->size() > 0)
383  {
384  m_truthpars = (*m_truthtracks)[0].getPars();
388 
389  // histogram parameters
390  for (unsigned i = 0; i < FPGATrackSimGenScanBinningBase::NPars; i++)
391  {
392  // fill
394  }
395 
396  // a closure test
398  ATH_MSG_DEBUG("parset:" << m_truthparset << " " << m_truthpars
399  << " ?= " << recovered << " closure:"
405  }
406 
407  // print if there are multiple tracks for debugging single track MC
408  if (m_truthtracks->size() > 1)
409  {
410  for (unsigned i = 0; i < m_truthtracks->size(); i++)
411  {
412  ATH_MSG_INFO("Multiple truth" << i << " of "
413  << m_truthtracks->size() << " " << (*m_truthtracks)[i].getPars());
414  }
415  }
416 
417  // find truth bin for later plotting selections
418  ATH_MSG_DEBUG("truthbin " << m_truthtracks << " " << m_truthtracks->size() << " " << m_truthpars << " " << m_truthbin);
420  {
421  ATH_MSG_INFO("Truth out of range");
422  }
423  else if (!validBin[m_truthbin])
424  {
425  ATH_MSG_INFO("Truth Bin not valid!" << m_truthbin << " : " << m_truthpars);
426  std::vector<FPGATrackSimGenScanBinningBase::ParSet> parsets = m_binning->makeVariationSet(std::vector<unsigned>({0, 1, 2, 3, 4}), m_truthbin);
427  for (FPGATrackSimGenScanBinningBase::ParSet& parset : parsets)
428  {
429  ATH_MSG_INFO("Truth Box " << m_binning->parSetToTrackPars(parset));
430  }
431  }
432 
433  m_truthIsValid = true;
434  }
435 }

◆ regGraph()

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

Definition at line 311 of file FPGATrackSimGenScanMonitoring.h.

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

◆ registerGraphs()

StatusCode FPGATrackSimGenScanMonitoring::registerGraphs ( )

Definition at line 210 of file FPGATrackSimGenScanMonitoring.cxx.

211 {
212  // Make a vector of pointers to all the eventDispSet instances...
213  std::vector<FPGATrackSimGenScanMonitoring::eventDispSet *> allsets(
217 
218  // Then loop to register them all
219  for (auto& set : allsets) {
220  ATH_CHECK(set->registerGraphs(this));
221  }
222 
223  return StatusCode::SUCCESS;
224 }

◆ registerHistograms()

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

Definition at line 35 of file FPGATrackSimGenScanMonitoring.cxx.

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

◆ 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 196 of file FPGATrackSimGenScanMonitoring.cxx.

196  {
197  for (auto& bin: m_hitsCntByLayer) { bin =0;}
198  for (auto& bin: m_inputhitsperslice) { bin.data() =0;}
199  for (auto& bin: m_inputhitsperrow) { bin.data() =0;}
200  for (auto& bin: m_outputhitsperslice) { bin.data() =0;}
201  for (auto& bin: m_outputhitsperrow) { bin.data() =0;}
202  for (auto &bin : m_outputroadsperrow) {
203  bin.data() = 0;
204  }
205 }

◆ setBinPlotsActive()

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

Definition at line 131 of file FPGATrackSimGenScanMonitoring.h.

131  {

◆ sliceCheck()

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

Definition at line 275 of file FPGATrackSimGenScanMonitoring.cxx.

275  {
276  if (m_truthIsValid &&
277  (m_binning->subVec(m_binning->slicePars(), m_truthbin) == sliceidx)) {
278  ATH_MSG_DEBUG("truth bin missed slice");
279  }
280 }

◆ 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 269 of file FPGATrackSimGenScanMonitoring.h.

◆ m_binning

const FPGATrackSimGenScanBinningBase* FPGATrackSimGenScanMonitoring::m_binning {nullptr}
private

Definition at line 115 of file FPGATrackSimGenScanMonitoring.h.

◆ m_binPlotsActive

bool FPGATrackSimGenScanMonitoring::m_binPlotsActive = false
private

Definition at line 134 of file FPGATrackSimGenScanMonitoring.h.

◆ m_binStagesIncr

TH2D* FPGATrackSimGenScanMonitoring::m_binStagesIncr = 0
private

Definition at line 185 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaDeltaEta

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

Definition at line 220 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaDeltaPhi

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

Definition at line 219 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEta

TH1D* FPGATrackSimGenScanMonitoring::m_deltaEta = 0
private

Definition at line 193 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEtaByLyr

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

Definition at line 203 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEtaCurvature

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

Definition at line 226 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaEtaDR

TH1D* FPGATrackSimGenScanMonitoring::m_deltaEtaDR = 0
private

Definition at line 195 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhi

TH1D* FPGATrackSimGenScanMonitoring::m_deltaPhi = 0
private

Definition at line 192 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhiByLyr

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

Definition at line 202 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhiCurvature

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

Definition at line 225 of file FPGATrackSimGenScanMonitoring.h.

◆ m_deltaPhiDR

TH1D* FPGATrackSimGenScanMonitoring::m_deltaPhiDR = 0
private

Definition at line 194 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 110 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaCurvature

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

Definition at line 224 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaCurvatureMax

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

Definition at line 228 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaInExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_etaInExtrap = 0
private

Definition at line 201 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaOutExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_etaOutExtrap = 0
private

Definition at line 200 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaResidual

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

Definition at line 152 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaShift2D_road

TH2D* FPGATrackSimGenScanMonitoring::m_etaShift2D_road = 0
private

Definition at line 174 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaShift_road

TH1D* FPGATrackSimGenScanMonitoring::m_etaShift_road = 0
private

Definition at line 172 of file FPGATrackSimGenScanMonitoring.h.

◆ m_etaTrueBinShift

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

Definition at line 154 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 178 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitLyrsAllBins

TH1D* FPGATrackSimGenScanMonitoring::m_hitLyrsAllBins = 0
private

Definition at line 169 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsCntByLayer

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

Definition at line 138 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsLoadedPerLayer

TH1D* FPGATrackSimGenScanMonitoring::m_hitsLoadedPerLayer = 0
private

Definition at line 167 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsPerLayer

TH1D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer = 0
private

Definition at line 166 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsPerLayer2D

TH2D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer2D = 0
private

Definition at line 165 of file FPGATrackSimGenScanMonitoring.h.

◆ m_hitsPerLayer_road

TH2D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer_road = 0
private

Definition at line 175 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputHits

TH1D* FPGATrackSimGenScanMonitoring::m_inputHits = 0
private

Definition at line 156 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputhitsperrow

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_inputhitsperrow
private

Definition at line 141 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputHitsPerRow

TH1D* FPGATrackSimGenScanMonitoring::m_inputHitsPerRow = 0
private

Definition at line 160 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputhitsperslice

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_inputhitsperslice
private

Definition at line 140 of file FPGATrackSimGenScanMonitoring.h.

◆ m_inputHitsPerSlice

TH1D* FPGATrackSimGenScanMonitoring::m_inputHitsPerSlice = 0
private

Definition at line 157 of file FPGATrackSimGenScanMonitoring.h.

◆ m_isSingleParticle

bool FPGATrackSimGenScanMonitoring::m_isSingleParticle = false
private

Definition at line 122 of file FPGATrackSimGenScanMonitoring.h.

◆ m_lostPairFilterGraph

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

Definition at line 271 of file FPGATrackSimGenScanMonitoring.h.

◆ m_lostPairSetFilterGraph

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

Definition at line 273 of file FPGATrackSimGenScanMonitoring.h.

◆ m_nLayers

unsigned FPGATrackSimGenScanMonitoring::m_nLayers = 0
private

Definition at line 114 of file FPGATrackSimGenScanMonitoring.h.

◆ m_nminus1_idx

unsigned FPGATrackSimGenScanMonitoring::m_nminus1_idx = 6
private

Definition at line 213 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputHitsPerBin

TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerBin = 0
private

Definition at line 163 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputhitsperrow

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_outputhitsperrow
private

Definition at line 144 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputHitsPerRow

TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerRow = 0
private

Definition at line 161 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputhitsperslice

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_outputhitsperslice
private

Definition at line 143 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputHitsPerSlice

TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerSlice = 0
private

Definition at line 158 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputroadsperrow

FPGATrackSimGenScanArray<int> FPGATrackSimGenScanMonitoring::m_outputroadsperrow
private

Definition at line 145 of file FPGATrackSimGenScanMonitoring.h.

◆ m_outputRoadsPerRow

TH1D* FPGATrackSimGenScanMonitoring::m_outputRoadsPerRow = 0
private

Definition at line 162 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairinghits

TH1D* FPGATrackSimGenScanMonitoring::m_pairinghits = 0
private

Definition at line 188 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairMatchEta2D

TH2D* FPGATrackSimGenScanMonitoring::m_pairMatchEta2D = 0
private

Definition at line 234 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairMatchPhi2D

TH2D* FPGATrackSimGenScanMonitoring::m_pairMatchPhi2D = 0
private

Definition at line 233 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairs

TH1D* FPGATrackSimGenScanMonitoring::m_pairs = 0
private

Definition at line 177 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairSetMatchEta

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

Definition at line 222 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairSetMatchPhi

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

Definition at line 221 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairsets

TH1D* FPGATrackSimGenScanMonitoring::m_pairsets = 0
private

Definition at line 179 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairsetsHits

TH2D* FPGATrackSimGenScanMonitoring::m_pairsetsHits = 0
private

Definition at line 184 of file FPGATrackSimGenScanMonitoring.h.

◆ m_pairsetsIncr

TH2D* FPGATrackSimGenScanMonitoring::m_pairsetsIncr = 0
private

Definition at line 183 of file FPGATrackSimGenScanMonitoring.h.

◆ m_passPairFilterGraph

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

Definition at line 272 of file FPGATrackSimGenScanMonitoring.h.

◆ m_passPairSetFilterGraph

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

Definition at line 274 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiCurvature

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

Definition at line 223 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiCurvatureMax

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

Definition at line 227 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiInExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_phiInExtrap = 0
private

Definition at line 197 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiInExtrapCurved

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

Definition at line 229 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiInExtrapCurveLimit

TH1D* FPGATrackSimGenScanMonitoring::m_phiInExtrapCurveLimit =0
private

Definition at line 199 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiOutExtrap

TH1D* FPGATrackSimGenScanMonitoring::m_phiOutExtrap = 0
private

Definition at line 196 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiOutExtrapCurved

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

Definition at line 230 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiOutExtrapCurveLimit

TH1D* FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurveLimit =0
private

Definition at line 198 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiResidual

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

Definition at line 151 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiShift2D_road

TH2D* FPGATrackSimGenScanMonitoring::m_phiShift2D_road = 0
private

Definition at line 173 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiShift_road

TH1D* FPGATrackSimGenScanMonitoring::m_phiShift_road = 0
private

Definition at line 171 of file FPGATrackSimGenScanMonitoring.h.

◆ m_phiTrueBinShift

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

Definition at line 153 of file FPGATrackSimGenScanMonitoring.h.

◆ m_rin

double FPGATrackSimGenScanMonitoring::m_rin =0.0
private

Definition at line 116 of file FPGATrackSimGenScanMonitoring.h.

◆ m_roadFilterFlow

TH1D* FPGATrackSimGenScanMonitoring::m_roadFilterFlow = 0
private

Definition at line 190 of file FPGATrackSimGenScanMonitoring.h.

◆ m_roadGraph

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

Definition at line 270 of file FPGATrackSimGenScanMonitoring.h.

◆ m_rout

double FPGATrackSimGenScanMonitoring::m_rout =0.0
private

Definition at line 117 of file FPGATrackSimGenScanMonitoring.h.

◆ m_rZ_allhits

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

Definition at line 149 of file FPGATrackSimGenScanMonitoring.h.

◆ m_tHistSvc

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

Definition at line 106 of file FPGATrackSimGenScanMonitoring.h.

◆ m_totalInputIncr

TH2D* FPGATrackSimGenScanMonitoring::m_totalInputIncr = 0
private

Definition at line 186 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthbin

FPGATrackSimGenScanBinningBase::IdxSet FPGATrackSimGenScanMonitoring::m_truthbin
private

Definition at line 125 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthIsValid

bool FPGATrackSimGenScanMonitoring::m_truthIsValid = false
private

Definition at line 123 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthpars

FPGATrackSimTrackPars FPGATrackSimGenScanMonitoring::m_truthpars
private

Definition at line 124 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthpars_hists

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

Definition at line 150 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthparset

FPGATrackSimGenScanBinningBase::ParSet FPGATrackSimGenScanMonitoring::m_truthparset
private

Definition at line 126 of file FPGATrackSimGenScanMonitoring.h.

◆ m_truthtracks

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

Definition at line 121 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 211 of file FPGATrackSimGenScanMonitoring.h.

◆ m_unpairedHits

TH2D* FPGATrackSimGenScanMonitoring::m_unpairedHits = 0
private

Definition at line 182 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:150
FPGATrackSimGenScanMonitoring::m_deltaEta
TH1D * m_deltaEta
Definition: FPGATrackSimGenScanMonitoring.h:193
FPGATrackSimGenScanMonitoring::m_phiInExtrapCurveLimit
TH1D * m_phiInExtrapCurveLimit
Definition: FPGATrackSimGenScanMonitoring.h:199
FPGATrackSimGenScanMonitoring::m_phiShift_road
TH1D * m_phiShift_road
Definition: FPGATrackSimGenScanMonitoring.h:171
FPGATrackSimTrackPars::IHIP
@ IHIP
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanArray
Definition: FPGATrackSimGenScanArray.h:41
FPGATrackSimGenScanMonitoring::m_truthtracks
std::vector< FPGATrackSimTruthTrack > const * m_truthtracks
Definition: FPGATrackSimGenScanMonitoring.h:121
FPGATrackSimGenScanMonitoring::m_totalInputIncr
TH2D * m_totalInputIncr
Definition: FPGATrackSimGenScanMonitoring.h:186
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:141
FPGATrackSimTrackPars::ID0
@ ID0
Definition: FPGATrackSimTrackPars.h:49
getMenu.algname
algname
Definition: getMenu.py:54
FPGATrackSimGenScanTool::HitPair::PhiInExtrap
double PhiInExtrap(double r_in) const
Definition: FPGATrackSimGenScanTool.h:238
FPGATrackSimGenScanMonitoring::m_lostPairSetFilterGraph
eventDispSet m_lostPairSetFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:273
FPGATrackSimGenScanMonitoring::m_binStagesIncr
TH2D * m_binStagesIncr
Definition: FPGATrackSimGenScanMonitoring.h:185
AddEmptyComponent.binning
binning
Definition: AddEmptyComponent.py:34
FPGATrackSimGenScanMonitoring::m_deltaEtaByLyr
std::vector< TH1D * > m_deltaEtaByLyr
Definition: FPGATrackSimGenScanMonitoring.h:203
FPGATrackSimGenScanMonitoring::m_outputRoadsPerRow
TH1D * m_outputRoadsPerRow
Definition: FPGATrackSimGenScanMonitoring.h:162
FPGATrackSimGenScanMonitoring::m_dir
Gaudi::Property< std::string > m_dir
Definition: FPGATrackSimGenScanMonitoring.h:110
TRTCalib_Extractor.hits
hits
Definition: TRTCalib_Extractor.py:35
FPGATrackSimGenScanMonitoring::m_pairsetsHits
TH2D * m_pairsetsHits
Definition: FPGATrackSimGenScanMonitoring.h:184
FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurveLimit
TH1D * m_phiOutExtrapCurveLimit
Definition: FPGATrackSimGenScanMonitoring.h:198
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
FPGATrackSimGenScanMonitoring::m_deltaEtaDR
TH1D * m_deltaEtaDR
Definition: FPGATrackSimGenScanMonitoring.h:195
FPGATrackSimGenScanMonitoring::m_phiTrueBinShift
std::vector< TH1D * > m_phiTrueBinShift
Definition: FPGATrackSimGenScanMonitoring.h:153
FPGATrackSimGenScanMonitoring::m_phiCurvature
std::vector< TH1D * > m_phiCurvature
Definition: FPGATrackSimGenScanMonitoring.h:223
FPGATrackSimGenScanMonitoring::m_etaResidual
std::vector< TH1D * > m_etaResidual
Definition: FPGATrackSimGenScanMonitoring.h:152
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
FPGATrackSimGenScanMonitoring::makeAndRegHist
StatusCode makeAndRegHist(HistType *&ptr, HistDef... histargs)
Definition: FPGATrackSimGenScanMonitoring.h:279
FPGATrackSimTrackPars
Definition: FPGATrackSimTrackPars.h:22
FPGATrackSimGenScanBinningBase::inRange
bool inRange(unsigned par, double val) const
Definition: FPGATrackSimGenScanBinning.h:208
FPGATrackSimGenScanMonitoring::m_lostPairFilterGraph
eventDispSet m_lostPairFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:271
AthCommonDataStore::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
FPGATrackSimGenScanMonitoring::m_outputroadsperrow
FPGATrackSimGenScanArray< int > m_outputroadsperrow
Definition: FPGATrackSimGenScanMonitoring.h:145
FPGATrackSimGenScanMonitoring::allocateDataFlowCounters
void allocateDataFlowCounters()
Definition: FPGATrackSimGenScanMonitoring.cxx:184
FPGATrackSimGenScanMonitoring::m_pairSetMatchEta
std::vector< TH1D * > m_pairSetMatchEta
Definition: FPGATrackSimGenScanMonitoring.h:222
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
FPGATrackSimTrackPars::IZ0
@ IZ0
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanMonitoring::m_hitsLoadedPerLayer
TH1D * m_hitsLoadedPerLayer
Definition: FPGATrackSimGenScanMonitoring.h:167
FPGATrackSimGenScanBinningBase::ParSet
Definition: FPGATrackSimGenScanBinning.h:90
FPGATrackSimGenScanMonitoring::setBinPlotsActive
void setBinPlotsActive(const FPGATrackSimGenScanBinningBase::IdxSet &idx)
Definition: FPGATrackSimGenScanMonitoring.h:131
FPGATrackSimGenScanBinningBase::sliceAndScanIdx
virtual std::vector< unsigned > sliceAndScanIdx(const IdxSet &idx) const
Definition: FPGATrackSimGenScanBinning.h:190
FPGATrackSimGenScanMonitoring::m_pairs
TH1D * m_pairs
Definition: FPGATrackSimGenScanMonitoring.h:177
FPGATrackSimGenScanMonitoring::makeAndRegHistVector
StatusCode makeAndRegHistVector(std::vector< HistType * > &vec, unsigned len, const std::vector< std::string > *namevec, const char *namebase, HistDef... histargs)
Definition: FPGATrackSimGenScanMonitoring.h:288
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:12
FPGATrackSimGenScanTool::HitPairSet::hitLayers
layer_bitmask_t hitLayers
Definition: FPGATrackSimGenScanTool.h:262
FPGATrackSimGenScanTool::HitPair::EtaOutExtrap
double EtaOutExtrap(double r_out) const
Definition: FPGATrackSimGenScanTool.h:241
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:149
FPGATrackSimGenScanMonitoring::m_nLayers
unsigned m_nLayers
Definition: FPGATrackSimGenScanMonitoring.h:114
FPGATrackSimGenScanMonitoring::m_pairMatchEta2D
TH2D * m_pairMatchEta2D
Definition: FPGATrackSimGenScanMonitoring.h:234
dbg::ptr
void * ptr(T *p)
Definition: SGImplSvc.cxx:74
FPGATrackSimGenScanBinningBase::m_parMax
ParSet m_parMax
Definition: FPGATrackSimGenScanBinning.h:234
FPGATrackSimGenScanBinningBase::phiHistScale
virtual double phiHistScale() const =0
FPGATrackSimGenScanMonitoring::m_etaOutExtrap
TH1D * m_etaOutExtrap
Definition: FPGATrackSimGenScanMonitoring.h:200
FPGATrackSimGenScanMonitoring::m_etaCurvature
std::vector< TH1D * > m_etaCurvature
Definition: FPGATrackSimGenScanMonitoring.h:224
FPGATrackSimGenScanMonitoring::m_roadGraph
eventDispSet m_roadGraph
Definition: FPGATrackSimGenScanMonitoring.h:270
FPGATrackSimGenScanBinningBase::trackParsToParSet
virtual const ParSet trackParsToParSet(const FPGATrackSimTrackPars &pars) const =0
FPGATrackSimGenScanMonitoring::m_phiInExtrapCurved
std::vector< TH1D * > m_phiInExtrapCurved
Definition: FPGATrackSimGenScanMonitoring.h:229
FPGATrackSimGenScanMonitoring::m_tHistSvc
ServiceHandle< ITHistSvc > m_tHistSvc
Definition: FPGATrackSimGenScanMonitoring.h:106
FPGATrackSimGenScanMonitoring::m_phiInExtrap
TH1D * m_phiInExtrap
Definition: FPGATrackSimGenScanMonitoring.h:197
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
FPGATrackSimGenScanBinningBase::m_invalidBin
const IdxSet m_invalidBin
Definition: FPGATrackSimGenScanBinning.h:239
python.CreateTierZeroArgdict.pairs
pairs
Definition: CreateTierZeroArgdict.py:201
FPGATrackSimGenScanTool::HitPair::dR
double dR() const
Definition: FPGATrackSimGenScanTool.h:226
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
FPGATrackSimGenScanMonitoring::m_truthbin
FPGATrackSimGenScanBinningBase::IdxSet m_truthbin
Definition: FPGATrackSimGenScanMonitoring.h:125
FPGATrackSimGenScanMonitoring::m_pairsetsIncr
TH2D * m_pairsetsIncr
Definition: FPGATrackSimGenScanMonitoring.h:183
FPGATrackSimGenScanMonitoring::m_inputhitsperslice
FPGATrackSimGenScanArray< int > m_inputhitsperslice
Definition: FPGATrackSimGenScanMonitoring.h:140
FPGATrackSimGenScanBinningBase::etaHistScale
virtual double etaHistScale() const =0
FPGATrackSimGenScanMonitoring::eventDispSet::addEvent
void addEvent(const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits)
Definition: FPGATrackSimGenScanMonitoring.cxx:591
FPGATrackSimGenScanBinningBase::NPars
static constexpr unsigned NPars
Definition: FPGATrackSimGenScanBinning.h:232
FPGATrackSimGenScanBinningBase::sliceIdx
virtual std::vector< unsigned > sliceIdx(const IdxSet &idx) const
Definition: FPGATrackSimGenScanBinning.h:188
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
FPGATrackSimGenScanMonitoring::m_deltaPhi
TH1D * m_deltaPhi
Definition: FPGATrackSimGenScanMonitoring.h:192
FPGATrackSimGenScanMonitoring::m_phiShift2D_road
TH2D * m_phiShift2D_road
Definition: FPGATrackSimGenScanMonitoring.h:173
AthCommonDataStore
Definition: AthCommonDataStore.h:52
FPGATrackSimGenScanMonitoring::m_deltaDeltaEta
std::vector< TH1D * > m_deltaDeltaEta
Definition: FPGATrackSimGenScanMonitoring.h:220
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:269
FPGATrackSimGenScanMonitoring::m_etaTrueBinShift
std::vector< TH1D * > m_etaTrueBinShift
Definition: FPGATrackSimGenScanMonitoring.h:154
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:151
lumiFormat.i
int i
Definition: lumiFormat.py:85
FPGATrackSimGenScanMonitoring::m_filteredpairs
TH1D * m_filteredpairs
Definition: FPGATrackSimGenScanMonitoring.h:178
python.CaloCondTools.g
g
Definition: CaloCondTools.py:15
FPGATrackSimGenScanMonitoring::m_binPlotsActive
bool m_binPlotsActive
Definition: FPGATrackSimGenScanMonitoring.h:134
FPGATrackSimGenScanMonitoring::m_hitLyrsAllBins
TH1D * m_hitLyrsAllBins
Definition: FPGATrackSimGenScanMonitoring.h:169
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
FPGATrackSimGenScanMonitoring::m_deltaPhiDR
TH1D * m_deltaPhiDR
Definition: FPGATrackSimGenScanMonitoring.h:194
urldecode::states
states
Definition: urldecode.h:39
FPGATrackSimGenScanMonitoring::m_inputHitsPerSlice
TH1D * m_inputHitsPerSlice
Definition: FPGATrackSimGenScanMonitoring.h:157
FPGATrackSimGenScanMonitoring::m_etaShift2D_road
TH2D * m_etaShift2D_road
Definition: FPGATrackSimGenScanMonitoring.h:174
FPGATrackSimGenScanMonitoring::m_pairsets
TH1D * m_pairsets
Definition: FPGATrackSimGenScanMonitoring.h:179
FPGATrackSimGenScanMonitoring::m_hitsCntByLayer
std::vector< unsigned > m_hitsCntByLayer
Definition: FPGATrackSimGenScanMonitoring.h:138
FPGATrackSimGenScanMonitoring::m_pairSetMatchPhi
std::vector< TH1D * > m_pairSetMatchPhi
Definition: FPGATrackSimGenScanMonitoring.h:221
FPGATrackSimGenScanMonitoring::m_isSingleParticle
bool m_isSingleParticle
Definition: FPGATrackSimGenScanMonitoring.h:122
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
FPGATrackSimGenScanBinningBase::sliceAndScanBins
virtual std::vector< unsigned > sliceAndScanBins() const
Definition: FPGATrackSimGenScanBinning.h:184
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:161
FPGATrackSimGenScanMonitoring::m_etaInExtrap
TH1D * m_etaInExtrap
Definition: FPGATrackSimGenScanMonitoring.h:201
FPGATrackSimGenScanMonitoring::m_truthparset
FPGATrackSimGenScanBinningBase::ParSet m_truthparset
Definition: FPGATrackSimGenScanMonitoring.h:126
MC::isSingleParticle
bool isSingleParticle(const T &p)
Identify a particlegun particle.
Definition: HepMCHelpers.h:74
AthAlgTool::AthAlgTool
AthAlgTool()
Default constructor:
FPGATrackSimHit::getZ
float getZ() const
Definition: FPGATrackSimHit.h:139
FPGATrackSimGenScanMonitoring::m_inputHits
TH1D * m_inputHits
Definition: FPGATrackSimGenScanMonitoring.h:156
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:163
FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurved
std::vector< TH1D * > m_phiOutExtrapCurved
Definition: FPGATrackSimGenScanMonitoring.h:230
FPGATrackSimGenScanMonitoring::m_inputHitsPerRow
TH1D * m_inputHitsPerRow
Definition: FPGATrackSimGenScanMonitoring.h:160
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
FPGATrackSimGenScanMonitoring::m_truthpars
FPGATrackSimTrackPars m_truthpars
Definition: FPGATrackSimGenScanMonitoring.h:124
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
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:479
FPGATrackSimGenScanTool::HitPair::dPhi
double dPhi() const
Definition: FPGATrackSimGenScanTool.h:224
FPGATrackSimGenScanMonitoring::m_passPairFilterGraph
eventDispSet m_passPairFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:272
threshold
Definition: chainparser.cxx:74
FPGATrackSimGenScanBinningBase::etaShift
double etaShift(const IdxSet &idx, FPGATrackSimHit const *hit, bool debug=false) const
Definition: FPGATrackSimGenScanBinning.h:179
FPGATrackSimTrackPars::IPHI
@ IPHI
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanMonitoring::m_passPairSetFilterGraph
eventDispSet m_passPairSetFilterGraph
Definition: FPGATrackSimGenScanMonitoring.h:274
FPGATrackSimGenScanMonitoring::m_pairMatchPhi2D
TH2D * m_pairMatchPhi2D
Definition: FPGATrackSimGenScanMonitoring.h:233
FPGATrackSimGenScanTool::HitPairSet::pairList
std::vector< HitPair > pairList
Definition: FPGATrackSimGenScanTool.h:259
FPGATrackSimGenScanBinningBase::parsToBin
const IdxSet parsToBin(FPGATrackSimTrackPars &pars) const
Definition: FPGATrackSimGenScanBinning.cxx:37
FPGATrackSimGenScanMonitoring::m_rin
double m_rin
Definition: FPGATrackSimGenScanMonitoring.h:116
FPGATrackSimGenScanBinningBase::m_parMin
ParSet m_parMin
Definition: FPGATrackSimGenScanBinning.h:233
FPGATrackSimGenScanTool::HitPair::dEta
double dEta() const
Definition: FPGATrackSimGenScanTool.h:225
FPGATrackSimGenScanMonitoring::m_nminus1_idx
unsigned m_nminus1_idx
Definition: FPGATrackSimGenScanMonitoring.h:213
FPGATrackSimGenScanMonitoring::m_deltaPhiByLyr
std::vector< TH1D * > m_deltaPhiByLyr
Definition: FPGATrackSimGenScanMonitoring.h:202
FPGATrackSimGenScanMonitoring::m_hitsPerLayer2D
TH2D * m_hitsPerLayer2D
Definition: FPGATrackSimGenScanMonitoring.h:165
FPGATrackSimHit::getR
float getR() const
Definition: FPGATrackSimHit.h:140
a
TList * a
Definition: liststreamerinfos.cxx:10
FPGATrackSimGenScanMonitoring::m_roadFilterFlow
TH1D * m_roadFilterFlow
Definition: FPGATrackSimGenScanMonitoring.h:190
h
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
FPGATrackSimGenScanMonitoring::m_deltaEtaCurvature
std::vector< TH1D * > m_deltaEtaCurvature
Definition: FPGATrackSimGenScanMonitoring.h:226
FPGATrackSimGenScanBinningBase::parSetToTrackPars
virtual const FPGATrackSimTrackPars parSetToTrackPars(const ParSet &parset) const =0
FPGATrackSimGenScanTool::HitPairSet::lyrCnt
unsigned int lyrCnt() const
Definition: FPGATrackSimGenScanTool.h:279
FPGATrackSimGenScanMonitoring::m_binning
const FPGATrackSimGenScanBinningBase * m_binning
Definition: FPGATrackSimGenScanMonitoring.h:115
FPGATrackSimGenScanMonitoring::m_outputhitsperrow
FPGATrackSimGenScanArray< int > m_outputhitsperrow
Definition: FPGATrackSimGenScanMonitoring.h:144
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
FPGATrackSimGenScanTool::HitPairSet::hitlist
std::vector< const StoredHit * > hitlist
Definition: FPGATrackSimGenScanTool.h:265
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:623
FPGATrackSimGenScanMonitoring::m_pairinghits
TH1D * m_pairinghits
Definition: FPGATrackSimGenScanMonitoring.h:188
FPGATrackSimGenScanMonitoring::m_outputhitsperslice
FPGATrackSimGenScanArray< int > m_outputhitsperslice
Definition: FPGATrackSimGenScanMonitoring.h:143
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:211
FPGATrackSimGenScanMonitoring::m_truthIsValid
bool m_truthIsValid
Definition: FPGATrackSimGenScanMonitoring.h:123
FPGATrackSimGenScanMonitoring::m_deltaPhiCurvature
std::vector< TH1D * > m_deltaPhiCurvature
Definition: FPGATrackSimGenScanMonitoring.h:225
FPGATrackSimGenScanMonitoring::m_deltaDeltaPhi
std::vector< TH1D * > m_deltaDeltaPhi
Definition: FPGATrackSimGenScanMonitoring.h:219
FPGATrackSimGenScanBinningBase::phiShift
double phiShift(const IdxSet &idx, FPGATrackSimHit const *hit, bool debug=false) const
Definition: FPGATrackSimGenScanBinning.h:178
FPGATrackSimGenScanMonitoring::m_outputHitsPerSlice
TH1D * m_outputHitsPerSlice
Definition: FPGATrackSimGenScanMonitoring.h:158
FPGATrackSimGenScanBinningBase::makeVariationSet
std::vector< ParSet > makeVariationSet(const std::vector< unsigned > &scanpars, const IdxSet &idx) const
Definition: FPGATrackSimGenScanBinning.cxx:104
FPGATrackSimGenScanBinningBase::sliceBins
virtual std::vector< unsigned > sliceBins() const
Definition: FPGATrackSimGenScanBinning.h:182
FPGATrackSimGenScanMonitoring::m_phiOutExtrap
TH1D * m_phiOutExtrap
Definition: FPGATrackSimGenScanMonitoring.h:196
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
fitman.k
k
Definition: fitman.py:528
FPGATrackSimGenScanMonitoring::m_hitsPerLayer_road
TH2D * m_hitsPerLayer_road
Definition: FPGATrackSimGenScanMonitoring.h:175
FPGATrackSimGenScanMonitoring::m_unpairedHits
TH2D * m_unpairedHits
Definition: FPGATrackSimGenScanMonitoring.h:182
FPGATrackSimGenScanMonitoring::m_etaShift_road
TH1D * m_etaShift_road
Definition: FPGATrackSimGenScanMonitoring.h:172
FPGATrackSimGenScanTool::HitPair::EtaInExtrap
double EtaInExtrap(double r_in) const
Definition: FPGATrackSimGenScanTool.h:244
FPGATrackSimGenScanBinningBase::subVec
std::vector< unsigned > subVec(const std::vector< unsigned > &elems, const IdxSet &invec) const
Definition: FPGATrackSimGenScanBinning.cxx:77
FPGATrackSimTrackPars::IETA
@ IETA
Definition: FPGATrackSimTrackPars.h:49
FPGATrackSimGenScanTool::HitPair::PhiOutExtrap
double PhiOutExtrap(double r_out) const
Definition: FPGATrackSimGenScanTool.h:234
FPGATrackSimGenScanMonitoring::m_hitsPerLayer
TH1D * m_hitsPerLayer
Definition: FPGATrackSimGenScanMonitoring.h:166
FPGATrackSimGenScanMonitoring::m_rout
double m_rout
Definition: FPGATrackSimGenScanMonitoring.h:117