ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
Filter_Offline2017 Class Reference

#include <Filter_Offline2017.h>

Inheritance diagram for Filter_Offline2017:
Collaboration diagram for Filter_Offline2017:

Public Member Functions

 Filter_Offline2017 (double pTMin=1000, const std::string &type="tight", double z0=1000, double a0=1000)
 
bool select (const TIDA::Track *t, const TIDARoiDescriptor *=0)
 

Private Attributes

double m_pTMin
 
double m_z0max
 
double m_a0max
 
std::string m_type
 

Detailed Description

Definition at line 28 of file Filter_Offline2017.h.

Constructor & Destructor Documentation

◆ Filter_Offline2017()

Filter_Offline2017::Filter_Offline2017 ( double  pTMin = 1000,
const std::string &  type = "tight",
double  z0 = 1000,
double  a0 = 1000 
)
inline

Definition at line 32 of file Filter_Offline2017.h.

32  :
33  m_pTMin(pTMin),
34  m_z0max(z0),
35  m_a0max(a0),
36  m_type(type)
37  { }

Member Function Documentation

◆ select()

bool Filter_Offline2017::select ( const TIDA::Track t,
const TIDARoiDescriptor = 0 
)
inlinevirtual

require a blayer (ibl in run2) hit only if one is expected

require a blayer (ibl in run2) hit only if one is expected

Implements TrackFilter.

Definition at line 39 of file Filter_Offline2017.h.

39  {
40  // Select track parameters
41  bool selected = true;
42 
43  int Nsi = t->pixelHits()*0.5 + t->sctHits();
44  int Nsiholes = t->pixelHoles()+t->sctHoles();
45 
46  if ( std::fabs(t->z0())>m_z0max ) selected = false;
47  if ( std::fabs(t->a0())>m_a0max ) selected = false;
48  if ( std::fabs(t->eta())>2.5 || std::fabs(t->pT())<m_pTMin ) selected = false;
49 
50  if ( m_type=="loose" ) {
51 
52  // Select track silicon hit content
53  if( Nsi<7 ) selected = false;
54  if( Nsiholes>2 ) selected = false;
55  if ( t->pixelHoles()>1 ) selected = false;
56 
57  // if ( m_expectBL && ( ( t->expectBL() || t->hasTruth() ) && t->bLayerHits()<1) ) selected = false;
58  }
59  else if ( m_type=="loose-primary" ) {
60 
61  // Select track silicon hit content
62  if ( ( Nsi<10 ) && ( Nsi<7 || Nsiholes>0 ) ) selected = false;
63 
64  }
65  else if ( m_type=="tight" || m_type=="vtight" ) {
66 
67  // Select track silicon hit content
68  if ( std::fabs(t->eta())< 1.65 && Nsi<9 ) selected = false;
69  if ( std::fabs(t->eta())>=1.65 && Nsi<11 ) selected = false;
70 
71  if ( t->pixelHoles()>0 ) selected = false;
72 
74  if ( ( t->expectBL() || t->hasTruth() ) && t->bLayerHits()<1 ) selected = false;
75 
76  if ( m_type=="vtight" && t->pixelHits()==0 ) selected = false;
77  }
78  else if ( m_type=="tight-tau" ) {
79 
80  // Select track silicon hit content
81  if ( std::fabs(t->eta())< 1.65 && Nsi<9 ) selected = false;
82  if ( std::fabs(t->eta())>=1.65 && Nsi<11 ) selected = false;
83 
84  if ( t->pixelHoles()>0 ) selected = false;
85 
86  if ( t->pixelHits()<4 ) selected = false;
87 
89  if ( ( t->expectBL() || t->hasTruth() ) && t->bLayerHits()<1 ) selected = false;
90  }
91  else {
92  std::cerr << "Filter_Offline2017::type: " << m_type << "not recognised" << std::endl;
93  std::abort();
94  }
95 
96 
97  return selected;
98  }

Member Data Documentation

◆ m_a0max

double Filter_Offline2017::m_a0max
private

Definition at line 106 of file Filter_Offline2017.h.

◆ m_pTMin

double Filter_Offline2017::m_pTMin
private

Definition at line 104 of file Filter_Offline2017.h.

◆ m_type

std::string Filter_Offline2017::m_type
private

Definition at line 107 of file Filter_Offline2017.h.

◆ m_z0max

double Filter_Offline2017::m_z0max
private

Definition at line 105 of file Filter_Offline2017.h.


The documentation for this class was generated from the following file:
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Filter_Offline2017::m_pTMin
double m_pTMin
Definition: Filter_Offline2017.h:104
Filter_Offline2017::m_z0max
double m_z0max
Definition: Filter_Offline2017.h:105
Filter_Offline2017::m_type
std::string m_type
Definition: Filter_Offline2017.h:107
TRT::Track::z0
@ z0
Definition: InnerDetector/InDetCalibEvent/TRT_CalibData/TRT_CalibData/TrackInfo.h:63
a0
double a0
Definition: globals.cxx:27
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Filter_Offline2017::m_a0max
double m_a0max
Definition: Filter_Offline2017.h:106