Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Namespaces | Functions
ScoreBasedSolverCutsImpl.cxx File Reference
#include "ScoreBasedSolverCutsImpl.h"
#include "ScoreBasedAmbiguityResolutionAlg.h"
#include "Acts/AmbiguityResolution/ScoreBasedAmbiguityResolution.hpp"
#include "Acts/Definitions/Units.hpp"
#include "Acts/EventData/VectorMultiTrajectory.hpp"
#include "Acts/EventData/VectorTrackContainer.hpp"
#include "Acts/Utilities/HashedString.hpp"
#include "Acts/Utilities/Logger.hpp"
#include "ActsEvent/TrackContainer.h"
#include "ActsEvent/TrackSummaryContainer.h"
#include "ActsInterop/Logger.h"
#include "AthenaMonitoringKernel/GenericMonitoringTool.h"
#include "AthenaMonitoringKernel/Monitored.h"
#include "GaudiKernel/ServiceHandle.h"
#include "GaudiKernel/ToolHandle.h"

Go to the source code of this file.

Namespaces

 ActsTrk
 The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout geometry to cache the final transformations of the sensor surfaces associated to one particular detector technology (Pixel, Sct, etc.).
 
 ActsTrk::ScoreBasedSolverCutsImpl
 

Functions

unsigned int remapLayer (unsigned int iVolume, unsigned int iLayer)
 
ActsTrk::MutableTrackContainer ActsTrk::ScoreBasedSolverCutsImpl::addSummaryInformation (ActsTrk::TrackContainer trackContainer)
 Adds summary information to the track container. More...
 
void ActsTrk::ScoreBasedSolverCutsImpl::doubleHolesScore (const trackProxy_t &track, double &score)
 Filter for tracks based on double holes. More...
 
void ActsTrk::ScoreBasedSolverCutsImpl::innermostPixelLayerHitsScore (const trackProxy_t &track, double &score)
 Score modifier for tracks based on innermost pixel layer hits. More...
 
void ActsTrk::ScoreBasedSolverCutsImpl::ContribPixelLayersScore (const trackProxy_t &track, double &score)
 Score modifier for tracks based on number of contributing pixel layers. More...
 
void ActsTrk::ScoreBasedSolverCutsImpl::nSCTPixelHitsScore (const trackProxy_t &track, double &score)
 Score modifier for tracks based on number of SCT and pixel hits. More...
 
bool ActsTrk::ScoreBasedSolverCutsImpl::etaDependentCuts (const trackProxy_t &track)
 Filter for tracks based on eta dependent cuts. More...
 

Function Documentation

◆ remapLayer()

unsigned int remapLayer ( unsigned int  iVolume,
unsigned int  iLayer 
)

Definition at line 28 of file ScoreBasedSolverCutsImpl.cxx.

28  {
29 
30  // Barrel region inner + outer
31  if ((iVolume == 9) || (iVolume == 16)) {
32  return iVolume * 100 + iLayer;
33  }
34 
35  unsigned int outerEndsCapVolumes[6] = {13, 14, 15, 18, 19, 20};
36 
37  // endcap outer
38  if (std::find(std::begin(outerEndsCapVolumes), std::end(outerEndsCapVolumes),
39  iVolume) != std::end(outerEndsCapVolumes)) {
40  return iVolume * 100;
41  }
42 
43  unsigned int innerEndsCapVolumes[2] = {8, 10};
44 
45  // TODO : check if the bins a re correct.
46  unsigned int layerIDBins[4] = {0, 30, 40, 60};
47 
48  // endcap inner
49  // TODO : replace this logic with one that depend on radius.
50  if (std::find(std::begin(innerEndsCapVolumes), std::end(innerEndsCapVolumes),
51  iVolume) != std::end(innerEndsCapVolumes)) {
52  auto it = std::upper_bound(std::begin(layerIDBins), std::end(layerIDBins),
53  iLayer);
54 
55  // Handle edge cases
56  if (it == std::begin(layerIDBins)) {
57  // iLayer is less than the first bin (0)
58  return iVolume * 100; // Use the first bin (0)
59  }
60  if (it == std::end(layerIDBins)) {
61  // iLayer is greater than the last bin (100)
62  return iVolume * 100 + (std::size(layerIDBins) - 1); // Use the last bin
63  }
64 
65  // iLayer is within the range of layerIDBins
66  std::size_t layerIDBin = std::distance(std::begin(layerIDBins), it) - 1;
67  return iVolume * 100 + layerIDBin;
68  }
69  return 0;
70 }
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
skel.it
it
Definition: skel.GENtoEVGEN.py:407
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
Amg::distance
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
Definition: GeoPrimitivesHelpers.h:54