ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
InDetPerfPlot_TRTExtension Class Reference

class holding Pt plots for Inner Detector RTT Validation and implementing fill methods More...

#include <InDetPerfPlot_TRTExtension.h>

Inheritance diagram for InDetPerfPlot_TRTExtension:
Collaboration diagram for InDetPerfPlot_TRTExtension:

Public Member Functions

 InDetPerfPlot_TRTExtension (InDetPlotBase *pParent, const std::string &dirName)
 
void fill (const xAOD::TrackParticle &particle, float weight)
 
void fill (const xAOD::TrackParticle &particle, const float mu, const unsigned int nVtx, float weight)
 
void fill (const xAOD::TrackParticle &particle, const xAOD::TruthParticle &truthie, float weight)
 
SingleHistogramDefinition retrieveDefinition (const std::string &histoIdentifier, const std::string &folder="default", const std::string &nameOverride="")
 Retrieve a single histogram definition, given the unique string identifier. More...
 
template<class Htype >
void book (Htype *&pHisto, const std::string &histoIdentifier, const std::string &nameOverride="", const std::string &folder="default")
 Helper method to book histograms using an identifier string. More...
 
void book (TH1 *&pHisto, const SingleHistogramDefinition &hd)
 Book a TH1 histogram. More...
 
void book (TProfile *&pHisto, const SingleHistogramDefinition &hd)
 Book a TProfile histogram. More...
 
void book (TProfile2D *&pHisto, const SingleHistogramDefinition &hd)
 Book a TProfile2D histogram. More...
 
void book (TH2 *&pHisto, const SingleHistogramDefinition &hd)
 Book a 2D histogram (TH2) More...
 
void book (TEfficiency *&pHisto, const SingleHistogramDefinition &hd)
 Book a (1-D) TEfficiency. More...
 
void initialize ()
 
void finalize ()
 
void setDetailLevel (int iDetailLevel)
 
void RegisterSubPlot (PlotBase *pPlotBase)
 
std::vector< HistDataretrieveBookedHistograms ()
 Retrieve all booked histograms. More...
 
std::vector< TreeDataretrieveBookedTrees ()
 Retrieve all booked trees. More...
 
std::vector< EfficiencyDataretrieveBookedEfficiencies ()
 Retrieve all booked efficiency objects. More...
 
TTree * BookTree (const std::string &name, bool prependDir=true)
 Book a TTree. More...
 
std::string getDirectory ()
 
bool msgLvl (const MSG::Level lvl) const
 Test the output level. More...
 
MsgStream & msg () const
 The standard message stream. More...
 
MsgStream & msg (const MSG::Level lvl) const
 The standard message stream. More...
 
void setLevel (MSG::Level lvl)
 Change the current logging level. More...
 

Static Public Member Functions

static void fillHisto (TProfile *pTprofile, const float bin, const float weight, const float weight2=1.0)
 
static void fillHisto (TProfile2D *pTprofile, const float xval, const float yval, const float weight, const float weight2=1.0)
 
static void fillHisto (TH1 *pTh1, const float value)
 
static void fillHisto (TH1 *pTh1, const float value, const float weight)
 
static void fillHisto (TH2 *pTh2, const float xval, const float yval)
 
static void fillHisto (TH2 *pTh2, const float xval, const float yval, const float weight)
 
static void fillHisto (TH3 *pTh3, const float xval, const float yval, const float zval)
 
static void fillHisto (TEfficiency *pTeff, const float value, const bool accepted, float weight)
 
static void fillHisto (TEfficiency *eff2d, const float xvalue, const float yvalue, const bool accepted, const float weight)
 

Protected Member Functions

template<class T >
void mBook (T &pHisto, const std::string &histoIdentifier)
 book, for use by macro More...
 

Protected Attributes

std::vector< PlotBase * > m_vSubNodes
 
std::vector< HistDatam_vBookedHistograms
 
std::vector< TreeDatam_vBookedTrees
 
std::vector< EfficiencyDatam_vBookedEfficiencies
 
std::string m_sDirectory
 
int m_iDetailLevel
 

Private Member Functions

void initializePlots ()
 
void finalizePlots ()
 
void initMessaging () const
 Initialize our message level and MessageSvc. More...
 

Static Private Member Functions

static std::string constructPrefix (std::string dir, bool prependDir)
 

Private Attributes

IDPVM::ResolutionHelper m_resolutionHelper
 
IDPVM::ResolutionHelper::methods m_resolutionMethod
 
TEfficiency * m_fracTRTExtensions_vs_eta
 
TEfficiency * m_fracTRTExtensions_vs_pt
 
TEfficiency * m_fracTRTExtensions_vs_mu
 
TEfficiency * m_fracTRTExtensions_vs_nvertices
 
TEfficiency * m_fracTRTExtensions_matched_vs_eta
 
TEfficiency * m_fracTRTExtensions_matched_vs_pt
 
TH1m_chi2ndofTRTExtensions
 
TH1m_chi2ndofNoTRTExtensions
 
TH2m_ptresTRTExtensions_vs_eta
 
TH2m_ptresTRTExtensions_vs_pt
 
TH2m_ptresNoTRTExtensions_vs_eta
 
TH2m_ptresNoTRTExtensions_vs_pt
 
TH1m_reswidthTRTExtensions_vs_eta
 
TH1m_resmeanTRTExtensions_vs_eta
 
TH1m_reswidthTRTExtensions_vs_pt
 
TH1m_resmeanTRTExtensions_vs_pt
 
TH1m_reswidthNoTRTExtensions_vs_eta
 
TH1m_resmeanNoTRTExtensions_vs_eta
 
TH1m_reswidthNoTRTExtensions_vs_pt
 
TH1m_resmeanNoTRTExtensions_vs_pt
 
TH2m_ptpullTRTExtensions_vs_eta
 
TH2m_ptpullTRTExtensions_vs_pt
 
TH2m_ptpullNoTRTExtensions_vs_eta
 
TH2m_ptpullNoTRTExtensions_vs_pt
 
TH1m_pullwidthTRTExtensions_vs_eta
 
TH1m_pullmeanTRTExtensions_vs_eta
 
TH1m_pullwidthTRTExtensions_vs_pt
 
TH1m_pullmeanTRTExtensions_vs_pt
 
TH1m_pullwidthNoTRTExtensions_vs_eta
 
TH1m_pullmeanNoTRTExtensions_vs_eta
 
TH1m_pullwidthNoTRTExtensions_vs_pt
 
TH1m_pullmeanNoTRTExtensions_vs_pt
 
IHistogramDefinitionSvcm_histoDefSvc
 
std::string m_nm
 Message source name. More...
 
boost::thread_specific_ptr< MsgStream > m_msg_tls
 MsgStream instance (a std::cout like with print-out levels) More...
 
std::atomic< IMessageSvc * > m_imsg { nullptr }
 MessageSvc pointer. More...
 
std::atomic< MSG::Level > m_lvl { MSG::NIL }
 Current logging level. More...
 
std::atomic_flag m_initialized ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
 Messaging initialized (initMessaging) More...
 

Detailed Description

class holding Pt plots for Inner Detector RTT Validation and implementing fill methods

Definition at line 24 of file InDetPerfPlot_TRTExtension.h.

Constructor & Destructor Documentation

◆ InDetPerfPlot_TRTExtension()

InDetPerfPlot_TRTExtension::InDetPerfPlot_TRTExtension ( InDetPlotBase pParent,
const std::string &  dirName 
)

Member Function Documentation

◆ book() [1/6]

template<class Htype >
void InDetPlotBase::book ( Htype *&  pHisto,
const std::string &  histoIdentifier,
const std::string &  nameOverride = "",
const std::string &  folder = "default" 
)
inherited

Helper method to book histograms using an identifier string.

Parameters
pHistoPointer to the histogram to be booked (assumed to be initialized to nullptr)
histoIdentifierIdentifier (looked up in the XML file)
nameOverrideAllows to override the histo name w.r.t the identifier. Leave empty for no override. This can be used to instantiate multiple, identically binned plots from a single entry in the XML.
folderFolder to place the plot (if any)

◆ book() [2/6]

void InDetPlotBase::book ( TEfficiency *&  pHisto,
const SingleHistogramDefinition hd 
)
inherited

Book a (1-D) TEfficiency.

Definition at line 74 of file InDetPlotBase.cxx.

74  {
75  if (hd.isValid()) {
76  if(hd.nBinsY==0) {
77  pHisto = BookTEfficiency(hd.name, hd.allTitles, hd.nBinsX, hd.xAxis.first, hd.xAxis.second, false);
78  } else {
79  pHisto = BookTEfficiency(hd.name, hd.allTitles, hd.nBinsX, hd.xAxis.first, hd.xAxis.second, hd.nBinsY, hd.yAxis.first, hd.yAxis.second, false);
80  }
81  }
82  }

◆ book() [3/6]

void InDetPlotBase::book ( TH1 *&  pHisto,
const SingleHistogramDefinition hd 
)
inherited

Book a TH1 histogram.

Definition at line 46 of file InDetPlotBase.cxx.

46  {
47  if (hd.isValid()) {
48  pHisto = Book1D(hd.name, hd.allTitles, hd.nBinsX, hd.xAxis.first, hd.xAxis.second, false);
49  }
50  }

◆ book() [4/6]

void InDetPlotBase::book ( TH2 *&  pHisto,
const SingleHistogramDefinition hd 
)
inherited

Book a 2D histogram (TH2)

Definition at line 66 of file InDetPlotBase.cxx.

66  {
67  if (hd.isValid()) {
68  pHisto = Book2D(hd.name, hd.allTitles, hd.nBinsX, hd.xAxis.first, hd.xAxis.second, hd.nBinsY, hd.yAxis.first,
69  hd.yAxis.second, false);
70  }
71  }

◆ book() [5/6]

void InDetPlotBase::book ( TProfile *&  pHisto,
const SingleHistogramDefinition hd 
)
inherited

Book a TProfile histogram.

Definition at line 52 of file InDetPlotBase.cxx.

52  {
53  if (hd.isValid()) {
54  pHisto = BookTProfile(hd.name, hd.allTitles, hd.nBinsX, hd.xAxis.first, hd.xAxis.second, hd.yAxis.first,
55  hd.yAxis.second, false);
56  }
57  }

◆ book() [6/6]

void InDetPlotBase::book ( TProfile2D *&  pHisto,
const SingleHistogramDefinition hd 
)
inherited

Book a TProfile2D histogram.

Definition at line 59 of file InDetPlotBase.cxx.

59  {
60  if (hd.isValid()) {
61  pHisto = BookTProfile2D(hd.name, hd.allTitles, hd.nBinsX, hd.xAxis.first, hd.xAxis.second, hd.nBinsY, hd.yAxis.first,
62  hd.yAxis.second, false);
63  }
64  }

◆ Book1D() [1/2]

TH1F * PlotBase::Book1D ( const std::string &  name,
const std::string &  labels,
int  nBins,
float  start,
float  end,
bool  prependDir = true 
)
inherited

Book a TH1D histogram.

Definition at line 88 of file PlotBase.cxx.

89  {
90  std::string prefix = constructPrefix(m_sDirectory, prependDir);
91  Bool_t oldstat = TH1::AddDirectoryStatus();
92  TH1::AddDirectory(false);
93  TH1F *hist = new TH1F((prefix + name).c_str(), labels.c_str(), nBins, start, end);
94  TH1::AddDirectory(oldstat);
95 
96  hist->Sumw2();
97  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
98  return hist;
99 }

◆ Book1D() [2/2]

TH1F * PlotBase::Book1D ( const std::string &  name,
TH1 refHist,
const std::string &  labels,
bool  prependDir = true 
)
inherited

Book a TH1D histogram using refHist as reference for number of bins and axis range.

Definition at line 102 of file PlotBase.cxx.

102  {
103  std::string prefix = constructPrefix(m_sDirectory, prependDir);
104  Bool_t oldstat = TH1::AddDirectoryStatus();
105  TH1::AddDirectory(false);
106  TH1F *hist = new TH1F((prefix + name).c_str(), labels.c_str(), refHist->GetNbinsX(),
107  refHist->GetXaxis()->GetXbins()->GetArray());
108  hist->Sumw2();
109  TH1::AddDirectory(oldstat);
110 
111 
112  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
113  return hist;
114 }

◆ Book2D() [1/3]

TH2F * PlotBase::Book2D ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
Double_t *  binsX,
int  nBinsY,
Double_t  startY,
Double_t  endY,
bool  prependDir = true 
)
inherited

Book a TH2D histogram with variable x axis binning.

Definition at line 138 of file PlotBase.cxx.

139  {
140  std::string prefix = constructPrefix(m_sDirectory, prependDir);
141  Bool_t oldstat = TH2::AddDirectoryStatus();
142  TH2::AddDirectory(false);
143  TH2F *hist = new TH2F((prefix + name).c_str(), labels.c_str(), nBinsX, binsX, nBinsY, startY, endY);
144  hist->Sumw2();
145  TH2::AddDirectory(oldstat);
146  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
147  return hist;
148 }

◆ Book2D() [2/3]

TH2F * PlotBase::Book2D ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float  startX,
float  endX,
int  nBinsY,
float  startY,
float  endY,
bool  prependDir = true 
)
inherited

Book a TH2D histogram.

Definition at line 117 of file PlotBase.cxx.

118  {
119  std::string prefix = constructPrefix(m_sDirectory, prependDir);
120  Bool_t oldstat = TH2::AddDirectoryStatus();
121  TH2::AddDirectory(false);
122  TH2F *hist = new TH2F((prefix + name).c_str(), labels.c_str(), nBinsX, startX, endX, nBinsY, startY, endY);
123  hist->Sumw2();
124  TH2::AddDirectory(oldstat);
125 
126 
127  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
128  return hist;
129 }

◆ Book2D() [3/3]

TH2F * PlotBase::Book2D ( const std::string &  name,
TH2 refHist,
const std::string &  labels,
bool  prependDir = true 
)
inherited

Book a TH2D histogram using refHist as reference for number of bins and axis range.

Definition at line 132 of file PlotBase.cxx.

132  {
133  return Book2D(name, labels, refHist->GetNbinsX(), refHist->GetXaxis()->GetXmin(), refHist->GetXaxis()->GetXmax(),
134  refHist->GetNbinsY(), refHist->GetYaxis()->GetXmin(), refHist->GetYaxis()->GetXmax(), prependDir);
135 }

◆ Book3D() [1/2]

TH3F * PlotBase::Book3D ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float  startX,
float  endX,
int  nBinsY,
float  startY,
float  endY,
int  nBinsZ,
float  startZ,
float  endZ,
bool  prependDir = true 
)
inherited

Book a TH3D histogram.

Definition at line 151 of file PlotBase.cxx.

152  {
153  std::string prefix = constructPrefix(m_sDirectory, prependDir);
154  Bool_t oldstat = TH3::AddDirectoryStatus();
155  TH3::AddDirectory(false);
156  TH3F *hist = new TH3F((prefix + name).c_str(),
157  labels.c_str(), nBinsX, startX, endX, nBinsY, startY, endY, nBinsZ, startZ, endZ);
158  hist->Sumw2();
159  TH3::AddDirectory(oldstat);
160  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
161  return hist;
162 }

◆ Book3D() [2/2]

TH3F * PlotBase::Book3D ( const std::string &  name,
TH3 refHist,
const std::string &  labels,
bool  prependDir = true 
)
inherited

Book a TH3D histogram using refHist as reference for number of bins and axis range.

Definition at line 165 of file PlotBase.cxx.

165  {
166  std::string prefix = constructPrefix(m_sDirectory, prependDir);
167  Bool_t oldstat = TH3::AddDirectoryStatus();
168  TH3::AddDirectory(false);
169  TH3F *hist = new TH3F((prefix + name).c_str(), labels.c_str(), refHist->GetNbinsX(),
170  refHist->GetXaxis()->GetXbins()->GetArray(), refHist->GetNbinsY(),
171  refHist->GetYaxis()->GetXbins()->GetArray(), refHist->GetNbinsZ(),
172  refHist->GetZaxis()->GetXbins()->GetArray());
173  TH3::AddDirectory(oldstat);
174 
175  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
176  return hist;
177 }

◆ BookTEfficiency() [1/2]

TEfficiency * PlotBase::BookTEfficiency ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
const float  xlo,
const float  xhi,
const bool  prependDir = true 
)
inherited

Book a (1-D) TEfficiency histogram.

Definition at line 251 of file PlotBase.cxx.

251  {
252  std::string prefix = constructPrefix(m_sDirectory, prependDir);
253  //Bool_t oldstat = TEfficiency::AddDirectoryStatus();
254  TEfficiency *hist = new TEfficiency((prefix + name).c_str(), labels.c_str(), nBinsX, xlo, xhi);
255  //hist->SetAutoSave(0);
256  //hist->SetAtoFlush(0);
257  hist->SetDirectory(nullptr);
258  m_vBookedEfficiencies.emplace_back(hist, m_sDirectory);
259  //TEfficiency::AddDirectory(oldstat);
260  return hist;
261 }

◆ BookTEfficiency() [2/2]

TEfficiency * PlotBase::BookTEfficiency ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
const float  xlo,
const float  xhi,
const int  nBinsy,
const float  ylo,
const float  yhi,
const bool  prependDir = true 
)
inherited

Book a (2-D) TEfficiency histogram.

Definition at line 264 of file PlotBase.cxx.

264  {
265  std::string prefix = constructPrefix(m_sDirectory, prependDir);
266 
267  TEfficiency *hist = new TEfficiency((prefix + name).c_str(), labels.c_str(), nBinsX, xlo, xhi, nBinsY, ylo, yhi);
268  hist->SetDirectory(nullptr);
269  m_vBookedEfficiencies.emplace_back(hist, m_sDirectory);
270 
271  return hist;
272 }

◆ BookTProfile() [1/2]

TProfile * PlotBase::BookTProfile ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float *  binsX,
bool  prependDir = true 
)
inherited

Book a TProfile histogram with variable binning in x-axis.

Definition at line 198 of file PlotBase.cxx.

198  {
199  std::string prefix = constructPrefix(m_sDirectory, prependDir);
200  TProfile *hist(nullptr);
201  Bool_t oldstat = TProfile::AddDirectoryStatus();
202  TProfile::AddDirectory(false);
203 
204  hist = new TProfile((prefix + name).c_str(), labels.c_str(), nBinsX, binsX);
205  TProfile::AddDirectory(oldstat);
206  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
207  return hist;
208 }

◆ BookTProfile() [2/2]

TProfile * PlotBase::BookTProfile ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float  startX,
float  endX,
float  startY = -1,
float  endY = -1,
bool  prependDir = true,
bool  useRMS = false 
)
inherited

Book a TProfile histogram.

Definition at line 180 of file PlotBase.cxx.

181  {
182  std::string prefix = constructPrefix(m_sDirectory, prependDir);
183  TProfile *hist(nullptr);
184  Bool_t oldstat = TProfile::AddDirectoryStatus();
185  TProfile::AddDirectory(false);
186  std::string opt = useRMS ? "S" : "";
187  if ((startY == -1) and (endY == -1)) {
188  hist = new TProfile((prefix + name).c_str(), labels.c_str(), nBinsX, startX, endX, opt.c_str());
189  } else {
190  hist = new TProfile((prefix + name).c_str(), labels.c_str(), nBinsX, startX, endX, startY, endY, opt.c_str());
191  }
192  TProfile::AddDirectory(oldstat);
193  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
194  return hist;
195 }

◆ BookTProfile2D() [1/2]

TProfile2D * PlotBase::BookTProfile2D ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
const double  xlo,
const double  xhi,
const int  nBinsY,
const double  ylo,
const double  yhi,
bool  prependDir = true,
bool  useRMS = false 
)
inherited

Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.

Definition at line 225 of file PlotBase.cxx.

227  {
228  std::string prefix = constructPrefix(m_sDirectory, prependDir);
229  Bool_t oldstat = TProfile2D::AddDirectoryStatus();
230  TProfile2D::AddDirectory(false);
231  std::string opt = useRMS ? "S" : "";
232  TProfile2D *hist = new TProfile2D((prefix + name).c_str(), labels.c_str(), nBinsX, xlo, xhi, nBinsY, ylo, yhi, opt.c_str());
233  TProfile2D::AddDirectory(oldstat);
234  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
235  return hist;
236 }

◆ BookTProfile2D() [2/2]

TProfile2D * PlotBase::BookTProfile2D ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
double *  binsX,
const int  nBinsY,
double *  binsY,
bool  prependDir = true,
bool  useRMS = false 
)
inherited

Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.

Definition at line 239 of file PlotBase.cxx.

239  {
240  std::string prefix = constructPrefix(m_sDirectory, prependDir);
241  Bool_t oldstat = TProfile2D::AddDirectoryStatus();
242  TProfile2D::AddDirectory(false);
243  std::string opt = useRMS ? "S" : "";
244  TProfile2D *hist = new TProfile2D((prefix + name).c_str(), labels.c_str(), nBinsX, binsX, nBinsY, binsY, opt.c_str());
245  TProfile2D::AddDirectory(oldstat);
246  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
247  return hist;
248 }

◆ BookTProfileRangeY()

TProfile * PlotBase::BookTProfileRangeY ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
double *  binsX,
double  startY,
double  endY,
bool  prependDir = true 
)
inherited

Book a TProfile histogram with variable binning in x-axis and limits in y-values.

Definition at line 211 of file PlotBase.cxx.

212  {
213  std::string prefix = constructPrefix(m_sDirectory, prependDir);
214  TProfile *hist(nullptr);
215  Bool_t oldstat = TProfile::AddDirectoryStatus();
216  TProfile::AddDirectory(false);
217 
218  hist = new TProfile((prefix + name).c_str(), labels.c_str(), (Int_t) nBinsX, binsX, startY, endY);
219  TProfile::AddDirectory(oldstat);
220  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
221  return hist;
222 }

◆ BookTree()

TTree * PlotBase::BookTree ( const std::string &  name,
bool  prependDir = true 
)
inherited

Book a TTree.

Definition at line 275 of file PlotBase.cxx.

275  {
276  std::string prefix = constructPrefix(m_sDirectory, prependDir);
277  TTree *tree = new TTree((prefix + name).c_str(), "");
278 
279  tree->SetAutoSave(0);
280  tree->SetAutoFlush(0);
281  tree->SetDirectory(nullptr);
282  m_vBookedTrees.emplace_back(tree, m_sDirectory);
283  return tree;
284 }

◆ constructPrefix()

std::string PlotBase::constructPrefix ( std::string  dir,
bool  prependDir 
)
staticprivateinherited

Definition at line 287 of file PlotBase.cxx.

287  {
288  if (!prependDir) {
289  return "";
290  }
291  std::replace(dir.begin(), dir.end(), '/', '_');
292  return dir;
293 }

◆ fill() [1/3]

void InDetPerfPlot_TRTExtension::fill ( const xAOD::TrackParticle particle,
const float  mu,
const unsigned int  nVtx,
float  weight 
)

Definition at line 131 of file InDetPerfPlot_TRTExtension.cxx.

131  {
132 
133  uint8_t iTrtHits = 0;
134  particle.summaryValue(iTrtHits, xAOD::numberOfTRTHits);
135 
136  std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo = particle.patternRecoInfo();
137  bool isTRTExtension = patternInfo.test(xAOD::TrackPatternRecoInfo::InDetExtensionProcessor) or iTrtHits > 0;
138 
139  fillHisto(m_fracTRTExtensions_vs_mu, mu, isTRTExtension, weight);
140  fillHisto(m_fracTRTExtensions_vs_nvertices, nvertices, isTRTExtension, weight);
141 
142 }

◆ fill() [2/3]

void InDetPerfPlot_TRTExtension::fill ( const xAOD::TrackParticle particle,
const xAOD::TruthParticle truthie,
float  weight 
)

Definition at line 145 of file InDetPerfPlot_TRTExtension.cxx.

145  {
146 
147  //Fraction of extended for truth matched tracks
148 
149  uint8_t iTrtHits = 0;
150  particle.summaryValue(iTrtHits, xAOD::numberOfTRTHits);
151 
152  std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo = particle.patternRecoInfo();
153  bool isTRTExtension = patternInfo.test(3) or iTrtHits > 0;
154 
155  //Get pT resolution for TRT extensions versus without
156  const float undefinedValue = -9999;
157  const float smallestAllowableTan = 1e-8;
158  const float sinTheta{std::sin(particle.theta())};
159  const bool saneSineValue = (std::abs(sinTheta) > 1e-8);
160  const float inverseSinTheta = saneSineValue ? 1./sinTheta : undefinedValue;
161  float track_qopt = saneSineValue ? particle.qOverP()*inverseSinTheta : undefinedValue;
162  const float qopterr = std::sqrt(particle.definingParametersCovMatrix()(4, 4)) * inverseSinTheta;
163 
164  static const SG::ConstAccessor<float> qOverPAcc("qOverP");
165  static const SG::ConstAccessor<float> thetaAcc("theta");
166  const float truth_qop = qOverPAcc.isAvailable(truthParticle) ? qOverPAcc(truthParticle) : undefinedValue;
167  const float truth_theta = thetaAcc.isAvailable(truthParticle) ? thetaAcc(truthParticle) : undefinedValue;
168  float truth_qopt = std::abs(truth_theta) > 0 ? truth_qop * 1/(std::sin(truth_theta)) : undefinedValue;
169 
170  float ptres = (track_qopt - truth_qopt) * ( 1 / truth_qopt);
171  float ptpull = qopterr > smallestAllowableTan ? (track_qopt - truth_qopt) / qopterr : undefinedValue;
172  float pt = truthParticle.pt() / Gaudi::Units::GeV;
173  const float tanHalfTheta = std::tan(truth_theta * 0.5);
174  const bool tanThetaIsSane = std::abs(tanHalfTheta) > smallestAllowableTan;
175  float eta = undefinedValue;
176  if (tanThetaIsSane) eta = -std::log(tanHalfTheta);
177 
178 
179  if(isTRTExtension){
182 
185  } else {
188 
191  }
192 
195 
196 
197 }

◆ fill() [3/3]

void InDetPerfPlot_TRTExtension::fill ( const xAOD::TrackParticle particle,
float  weight 
)

Definition at line 108 of file InDetPerfPlot_TRTExtension.cxx.

108  {
109 
110  double eta = particle.eta();
111  double pt = particle.pt() / Gaudi::Units::GeV;
112  float chi2 = particle.chiSquared();
113  float ndof = particle.numberDoF();
114  float chi2Overndof = ndof > 0 ? chi2 / ndof : 0;
115 
116  uint8_t iTrtHits = 0;
117  particle.summaryValue(iTrtHits, xAOD::numberOfTRTHits);
118 
119  std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo = particle.patternRecoInfo();
120  bool isTRTExtension = patternInfo.test(xAOD::TrackPatternRecoInfo::InDetExtensionProcessor) or iTrtHits > 0;
121 
122  fillHisto(m_fracTRTExtensions_vs_eta, eta, isTRTExtension, weight);
123  fillHisto(m_fracTRTExtensions_vs_pt, pt, isTRTExtension, weight);
124 
125  if(isTRTExtension) fillHisto(m_chi2ndofTRTExtensions, chi2Overndof, weight);
126  else { fillHisto(m_chi2ndofNoTRTExtensions, chi2Overndof, weight); }
127 
128 }

◆ fillHisto() [1/9]

void InDetPlotBase::fillHisto ( TEfficiency *  eff2d,
const float  xvalue,
const float  yvalue,
const bool  accepted,
const float  weight 
)
staticinherited

Definition at line 145 of file InDetPlotBase.cxx.

145  {
146  if (eff2d and validArguments(xvalue, yvalue)) {
147  if(weight==1.) eff2d->Fill(accepted, xvalue, yvalue);
148  else eff2d->FillWeighted(accepted, weight, xvalue, yvalue);
149  }
150 }

◆ fillHisto() [2/9]

void InDetPlotBase::fillHisto ( TEfficiency *  pTeff,
const float  value,
const bool  accepted,
float  weight 
)
staticinherited

Definition at line 137 of file InDetPlotBase.cxx.

137  {
138  if (pTeff and validArguments(value)) {
139  if(weight==1.) pTeff->Fill(accepted, value); // To get proper error estimate when possible
140  else pTeff->FillWeighted(accepted, weight, value);
141  }
142 }

◆ fillHisto() [3/9]

void InDetPlotBase::fillHisto ( TH1 pTh1,
const float  value 
)
staticinherited

Definition at line 100 of file InDetPlotBase.cxx.

100  {
101  if (pTh1 and validArguments(value)) {
102  pTh1->Fill(value);
103  }
104 }

◆ fillHisto() [4/9]

void InDetPlotBase::fillHisto ( TH1 pTh1,
const float  value,
const float  weight 
)
staticinherited

Definition at line 107 of file InDetPlotBase.cxx.

107  {
108  if (pTh1 and validArguments(value)) {
109  pTh1->Fill(value, weight);
110  }
111 }

◆ fillHisto() [5/9]

void InDetPlotBase::fillHisto ( TH2 pTh2,
const float  xval,
const float  yval 
)
staticinherited

Definition at line 115 of file InDetPlotBase.cxx.

115  {
116  if (pTh2 and validArguments(xval, yval)) {
117  pTh2->Fill(xval, yval);
118  }
119 }

◆ fillHisto() [6/9]

void InDetPlotBase::fillHisto ( TH2 pTh2,
const float  xval,
const float  yval,
const float  weight 
)
staticinherited

Definition at line 123 of file InDetPlotBase.cxx.

123  {
124  if (pTh2 and validArguments(xval, yval)) {
125  pTh2->Fill(xval, yval, weight);
126  }
127 }

◆ fillHisto() [7/9]

void InDetPlotBase::fillHisto ( TH3 pTh3,
const float  xval,
const float  yval,
const float  zval 
)
staticinherited

Definition at line 130 of file InDetPlotBase.cxx.

130  {
131  if (pTh3 and validArguments(xval, yval, zval)) {
132  pTh3->Fill(xval, yval, zval);
133  }
134 }

◆ fillHisto() [8/9]

void InDetPlotBase::fillHisto ( TProfile pTprofile,
const float  bin,
const float  weight,
const float  weight2 = 1.0 
)
staticinherited

Definition at line 85 of file InDetPlotBase.cxx.

85  {
86  if (pTprofile and validArguments(bin, weight)) {
87  pTprofile->Fill(bin, weight,weight2);
88  }
89 }

◆ fillHisto() [9/9]

void InDetPlotBase::fillHisto ( TProfile2D pTprofile,
const float  xval,
const float  yval,
const float  weight,
const float  weight2 = 1.0 
)
staticinherited

Definition at line 92 of file InDetPlotBase.cxx.

92  {
93  if (pTprofile and validArguments(xval,yval, weight) and validArguments(weight2)) {
94  pTprofile->Fill(xval,yval, weight,weight2);
95  }
96 }

◆ finalize()

void PlotBase::finalize ( )
inherited

Definition at line 41 of file PlotBase.cxx.

41  {
42  for (auto *subNode: m_vSubNodes) {
43  subNode->finalize();
44  }
45  finalizePlots();
46 }

◆ finalizePlots()

void InDetPerfPlot_TRTExtension::finalizePlots ( )
privatevirtual

◆ getDirectory()

std::string PlotBase::getDirectory ( )
inlineinherited

Definition at line 87 of file PlotBase.h.

87 {return m_sDirectory;}

◆ initialize()

void PlotBase::initialize ( )
inherited

Definition at line 33 of file PlotBase.cxx.

33  {
34  for (auto *subNode: m_vSubNodes) {
35  subNode->initialize();
36  }
38 }

◆ initializePlots()

void InDetPerfPlot_TRTExtension::initializePlots ( )
privatevirtual

Reimplemented from PlotBase.

Definition at line 61 of file InDetPerfPlot_TRTExtension.cxx.

61  {
62 
63  book(m_fracTRTExtensions_vs_eta, "fracTRTExtensions_vs_eta");
64  book(m_fracTRTExtensions_vs_pt, "fracTRTExtensions_vs_pt");
65  book(m_fracTRTExtensions_vs_mu, "fracTRTExtensions_vs_mu");
66  book(m_fracTRTExtensions_vs_nvertices, "fracTRTExtensions_vs_nvertices");
67 
68  book(m_fracTRTExtensions_matched_vs_eta, "fracTRTExtensions_matched_vs_eta");
69  book(m_fracTRTExtensions_matched_vs_pt, "fracTRTExtensions_matched_vs_pt");
70 
71  book(m_chi2ndofTRTExtensions, "chi2ndofTRTExtensions");
72  book(m_chi2ndofNoTRTExtensions, "chi2ndofNoTRTExtensions");
73 
74  book(m_ptresTRTExtensions_vs_eta, "ptresTRTExtensions_vs_eta");
75  book(m_ptresTRTExtensions_vs_pt, "ptresTRTExtensions_vs_pt");
76  book(m_ptresNoTRTExtensions_vs_eta, "ptresNoTRTExtensions_vs_eta");
77  book(m_ptresNoTRTExtensions_vs_pt, "ptresNoTRTExtensions_vs_pt");
78 
79  book(m_reswidthTRTExtensions_vs_eta, "ptresolutionTRTExtensions_vs_eta");
80  book(m_resmeanTRTExtensions_vs_eta, "ptresmeanTRTExtensions_vs_eta");
81  book(m_reswidthTRTExtensions_vs_pt, "ptresolutionTRTExtensions_vs_pt");
82  book(m_resmeanTRTExtensions_vs_pt, "ptresmeanTRTExtensions_vs_pt");
83 
84  book(m_reswidthNoTRTExtensions_vs_eta, "ptresolutionNoTRTExtensions_vs_eta");
85  book(m_resmeanNoTRTExtensions_vs_eta, "ptresmeanNoTRTExtensions_vs_eta");
86  book(m_reswidthNoTRTExtensions_vs_pt, "ptresolutionNoTRTExtensions_vs_pt");
87  book(m_resmeanNoTRTExtensions_vs_pt, "ptresmeanNoTRTExtensions_vs_pt");
88 
89 
90  book(m_ptpullTRTExtensions_vs_eta, "ptpullTRTExtensions_vs_eta");
91  book(m_ptpullTRTExtensions_vs_pt, "ptpullTRTExtensions_vs_pt");
92  book(m_ptpullNoTRTExtensions_vs_eta, "ptpullNoTRTExtensions_vs_eta");
93  book(m_ptpullNoTRTExtensions_vs_pt, "ptpullNoTRTExtensions_vs_pt");
94 
95  book(m_pullwidthTRTExtensions_vs_eta, "ptpullwidthTRTExtensions_vs_eta");
96  book(m_pullmeanTRTExtensions_vs_eta, "ptpullmeanTRTExtensions_vs_eta");
97  book(m_pullwidthTRTExtensions_vs_pt, "ptpullwidthTRTExtensions_vs_pt");
98  book(m_pullmeanTRTExtensions_vs_pt, "ptpullmeanTRTExtensions_vs_pt");
99 
100  book(m_pullwidthNoTRTExtensions_vs_eta, "ptpullwidthNoTRTExtensions_vs_eta");
101  book(m_pullmeanNoTRTExtensions_vs_eta, "ptpullmeanNoTRTExtensions_vs_eta");
102  book(m_pullwidthNoTRTExtensions_vs_pt, "ptpullwidthNoTRTExtensions_vs_pt");
103  book(m_pullmeanNoTRTExtensions_vs_pt, "ptpullmeanNoTRTExtensions_vs_pt");
104 
105 }

◆ initMessaging()

void AthMessaging::initMessaging ( ) const
privateinherited

Initialize our message level and MessageSvc.

This method should only be called once.

Definition at line 39 of file AthMessaging.cxx.

40 {
42  m_lvl = m_imsg ?
43  static_cast<MSG::Level>( m_imsg.load()->outputLevel(m_nm) ) :
44  MSG::INFO;
45 }

◆ mBook()

template<class T >
void InDetPlotBase::mBook ( T &  pHisto,
const std::string &  histoIdentifier 
)
inlineprotectedinherited

book, for use by macro

Definition at line 81 of file InDetPlotBase.h.

81  {
82  return book(pHisto, histoIdentifier.substr(2));
83  }

◆ msg() [1/2]

MsgStream & AthMessaging::msg ( ) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 164 of file AthMessaging.h.

165 {
166  MsgStream* ms = m_msg_tls.get();
167  if (!ms) {
168  if (!m_initialized.test_and_set()) initMessaging();
169  ms = new MsgStream(m_imsg,m_nm);
170  m_msg_tls.reset( ms );
171  }
172 
173  ms->setLevel (m_lvl);
174  return *ms;
175 }

◆ msg() [2/2]

MsgStream & AthMessaging::msg ( const MSG::Level  lvl) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 179 of file AthMessaging.h.

180 { return msg() << lvl; }

◆ msgLvl()

bool AthMessaging::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Test the output level.

Parameters
lvlThe message level to test against
Returns
boolean Indicating if messages at given level will be printed
Return values
trueMessages at level "lvl" will be printed

Definition at line 151 of file AthMessaging.h.

152 {
153  if (!m_initialized.test_and_set()) initMessaging();
154  if (m_lvl <= lvl) {
155  msg() << lvl;
156  return true;
157  } else {
158  return false;
159  }
160 }

◆ RegisterSubPlot()

void PlotBase::RegisterSubPlot ( PlotBase pPlotBase)
inlineinherited

Definition at line 40 of file PlotBase.h.

40 {m_vSubNodes.push_back(pPlotBase);}

◆ retrieveBookedEfficiencies()

std::vector< EfficiencyData > PlotBase::retrieveBookedEfficiencies ( )
inherited

Retrieve all booked efficiency objects.

Definition at line 77 of file PlotBase.cxx.

77  {
78  std::vector<EfficiencyData> vBookedEfficiencies = m_vBookedEfficiencies;
79  for (const auto &subNode: m_vSubNodes) {
80  std::vector<EfficiencyData> subNodeHists = subNode->retrieveBookedEfficiencies();
81  vBookedEfficiencies.insert(vBookedEfficiencies.end(), subNodeHists.begin(), subNodeHists.end());
82  }
83  return vBookedEfficiencies;
84 }

◆ retrieveBookedHistograms()

std::vector< HistData > PlotBase::retrieveBookedHistograms ( )
inherited

Retrieve all booked histograms.

Definition at line 57 of file PlotBase.cxx.

57  {
58  std::vector<HistData> vBookedHistograms = m_vBookedHistograms;
59  for (const auto &subNode: m_vSubNodes) {
60  std::vector<HistData> subNodeHists = subNode->retrieveBookedHistograms();
61  vBookedHistograms.insert(vBookedHistograms.end(), subNodeHists.begin(), subNodeHists.end());
62  }
63  return vBookedHistograms;
64 }

◆ retrieveBookedTrees()

std::vector< TreeData > PlotBase::retrieveBookedTrees ( )
inherited

Retrieve all booked trees.

Definition at line 67 of file PlotBase.cxx.

67  {
68  std::vector<TreeData> vBookedTrees = m_vBookedTrees;
69  for (auto *subNode: m_vSubNodes) {
70  std::vector<TreeData> subNodeTrees = subNode->retrieveBookedTrees();
71  vBookedTrees.insert(vBookedTrees.end(), subNodeTrees.begin(), subNodeTrees.end());
72  }
73  return vBookedTrees;
74 }

◆ retrieveDefinition()

SingleHistogramDefinition InDetPlotBase::retrieveDefinition ( const std::string &  histoIdentifier,
const std::string &  folder = "default",
const std::string &  nameOverride = "" 
)
inherited

Retrieve a single histogram definition, given the unique string identifier.

Definition at line 154 of file InDetPlotBase.cxx.

154  {
155  SingleHistogramDefinition s; // invalid result
156 
157  if (not m_histoDefSvc) {
158  ISvcLocator* svcLoc = Gaudi::svcLocator();
159  StatusCode sc = svcLoc->service("HistogramDefinitionSvc", m_histoDefSvc);
160  if (sc.isFailure()) {
161  ATH_MSG_FATAL("failed to retrieve HistogramDefinitionSvc in " << __FILE__);
162  throw std::runtime_error("Could initialise the HistogramDefinitionSvc");
163  return s;
164  }
165  }
166  bool folderDefault = (folder.empty() or folder == "default");
167  s = m_histoDefSvc->definition(histoIdentifier, folder);
168  // "default" and empty string should be equivalent
169  if (folderDefault and s.empty()) {
170  const std::string otherDefault = (folder.empty()) ? ("default") : "";
171  s = m_histoDefSvc->definition(histoIdentifier, otherDefault);
172  }
173  if (s.empty()) {
174  ATH_MSG_WARNING("Histogram definition is empty for identifier " << histoIdentifier);
175  }
176  if (!nameOverride.empty()){
177  s.name = nameOverride;
178  }
179  return s;
180 }

◆ setDetailLevel()

void PlotBase::setDetailLevel ( int  iDetailLevel)
inherited

Definition at line 49 of file PlotBase.cxx.

49  {
50  for (auto *subNode: m_vSubNodes) {
51  subNode->setDetailLevel(iDetailLevel);
52  }
53  m_iDetailLevel = iDetailLevel;
54 }

◆ setLevel()

void AthMessaging::setLevel ( MSG::Level  lvl)
inherited

Change the current logging level.

Use this rather than msg().setLevel() for proper operation with MT.

Definition at line 28 of file AthMessaging.cxx.

29 {
30  m_lvl = lvl;
31 }

Member Data Documentation

◆ ATLAS_THREAD_SAFE

std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
mutableprivateinherited

Messaging initialized (initMessaging)

Definition at line 141 of file AthMessaging.h.

◆ m_chi2ndofNoTRTExtensions

TH1* InDetPerfPlot_TRTExtension::m_chi2ndofNoTRTExtensions
private

Definition at line 47 of file InDetPerfPlot_TRTExtension.h.

◆ m_chi2ndofTRTExtensions

TH1* InDetPerfPlot_TRTExtension::m_chi2ndofTRTExtensions
private

Definition at line 46 of file InDetPerfPlot_TRTExtension.h.

◆ m_fracTRTExtensions_matched_vs_eta

TEfficiency* InDetPerfPlot_TRTExtension::m_fracTRTExtensions_matched_vs_eta
private

Definition at line 43 of file InDetPerfPlot_TRTExtension.h.

◆ m_fracTRTExtensions_matched_vs_pt

TEfficiency* InDetPerfPlot_TRTExtension::m_fracTRTExtensions_matched_vs_pt
private

Definition at line 44 of file InDetPerfPlot_TRTExtension.h.

◆ m_fracTRTExtensions_vs_eta

TEfficiency* InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_eta
private

Definition at line 38 of file InDetPerfPlot_TRTExtension.h.

◆ m_fracTRTExtensions_vs_mu

TEfficiency* InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_mu
private

Definition at line 40 of file InDetPerfPlot_TRTExtension.h.

◆ m_fracTRTExtensions_vs_nvertices

TEfficiency* InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_nvertices
private

Definition at line 41 of file InDetPerfPlot_TRTExtension.h.

◆ m_fracTRTExtensions_vs_pt

TEfficiency* InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_pt
private

Definition at line 39 of file InDetPerfPlot_TRTExtension.h.

◆ m_histoDefSvc

IHistogramDefinitionSvc* InDetPlotBase::m_histoDefSvc
privateinherited

Definition at line 86 of file InDetPlotBase.h.

◆ m_iDetailLevel

int PlotBase::m_iDetailLevel
protectedinherited

Definition at line 100 of file PlotBase.h.

◆ m_imsg

std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr }
mutableprivateinherited

MessageSvc pointer.

Definition at line 135 of file AthMessaging.h.

◆ m_lvl

std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL }
mutableprivateinherited

Current logging level.

Definition at line 138 of file AthMessaging.h.

◆ m_msg_tls

boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls
mutableprivateinherited

MsgStream instance (a std::cout like with print-out levels)

Definition at line 132 of file AthMessaging.h.

◆ m_nm

std::string AthMessaging::m_nm
privateinherited

Message source name.

Definition at line 129 of file AthMessaging.h.

◆ m_ptpullNoTRTExtensions_vs_eta

TH2* InDetPerfPlot_TRTExtension::m_ptpullNoTRTExtensions_vs_eta
private

Definition at line 66 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptpullNoTRTExtensions_vs_pt

TH2* InDetPerfPlot_TRTExtension::m_ptpullNoTRTExtensions_vs_pt
private

Definition at line 67 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptpullTRTExtensions_vs_eta

TH2* InDetPerfPlot_TRTExtension::m_ptpullTRTExtensions_vs_eta
private

Definition at line 64 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptpullTRTExtensions_vs_pt

TH2* InDetPerfPlot_TRTExtension::m_ptpullTRTExtensions_vs_pt
private

Definition at line 65 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptresNoTRTExtensions_vs_eta

TH2* InDetPerfPlot_TRTExtension::m_ptresNoTRTExtensions_vs_eta
private

Definition at line 51 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptresNoTRTExtensions_vs_pt

TH2* InDetPerfPlot_TRTExtension::m_ptresNoTRTExtensions_vs_pt
private

Definition at line 52 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptresTRTExtensions_vs_eta

TH2* InDetPerfPlot_TRTExtension::m_ptresTRTExtensions_vs_eta
private

Definition at line 49 of file InDetPerfPlot_TRTExtension.h.

◆ m_ptresTRTExtensions_vs_pt

TH2* InDetPerfPlot_TRTExtension::m_ptresTRTExtensions_vs_pt
private

Definition at line 50 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullmeanNoTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_pullmeanNoTRTExtensions_vs_eta
private

Definition at line 75 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullmeanNoTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_pullmeanNoTRTExtensions_vs_pt
private

Definition at line 77 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullmeanTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_pullmeanTRTExtensions_vs_eta
private

Definition at line 70 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullmeanTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_pullmeanTRTExtensions_vs_pt
private

Definition at line 72 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullwidthNoTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_pullwidthNoTRTExtensions_vs_eta
private

Definition at line 74 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullwidthNoTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_pullwidthNoTRTExtensions_vs_pt
private

Definition at line 76 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullwidthTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_pullwidthTRTExtensions_vs_eta
private

Definition at line 69 of file InDetPerfPlot_TRTExtension.h.

◆ m_pullwidthTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_pullwidthTRTExtensions_vs_pt
private

Definition at line 71 of file InDetPerfPlot_TRTExtension.h.

◆ m_resmeanNoTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_resmeanNoTRTExtensions_vs_eta
private

Definition at line 60 of file InDetPerfPlot_TRTExtension.h.

◆ m_resmeanNoTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_resmeanNoTRTExtensions_vs_pt
private

Definition at line 62 of file InDetPerfPlot_TRTExtension.h.

◆ m_resmeanTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_resmeanTRTExtensions_vs_eta
private

Definition at line 55 of file InDetPerfPlot_TRTExtension.h.

◆ m_resmeanTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_resmeanTRTExtensions_vs_pt
private

Definition at line 57 of file InDetPerfPlot_TRTExtension.h.

◆ m_resolutionHelper

IDPVM::ResolutionHelper InDetPerfPlot_TRTExtension::m_resolutionHelper
private

Definition at line 34 of file InDetPerfPlot_TRTExtension.h.

◆ m_resolutionMethod

IDPVM::ResolutionHelper::methods InDetPerfPlot_TRTExtension::m_resolutionMethod
private

Definition at line 35 of file InDetPerfPlot_TRTExtension.h.

◆ m_reswidthNoTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_reswidthNoTRTExtensions_vs_eta
private

Definition at line 59 of file InDetPerfPlot_TRTExtension.h.

◆ m_reswidthNoTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_reswidthNoTRTExtensions_vs_pt
private

Definition at line 61 of file InDetPerfPlot_TRTExtension.h.

◆ m_reswidthTRTExtensions_vs_eta

TH1* InDetPerfPlot_TRTExtension::m_reswidthTRTExtensions_vs_eta
private

Definition at line 54 of file InDetPerfPlot_TRTExtension.h.

◆ m_reswidthTRTExtensions_vs_pt

TH1* InDetPerfPlot_TRTExtension::m_reswidthTRTExtensions_vs_pt
private

Definition at line 56 of file InDetPerfPlot_TRTExtension.h.

◆ m_sDirectory

std::string PlotBase::m_sDirectory
protectedinherited

Definition at line 99 of file PlotBase.h.

◆ m_vBookedEfficiencies

std::vector<EfficiencyData> PlotBase::m_vBookedEfficiencies
protectedinherited

Definition at line 98 of file PlotBase.h.

◆ m_vBookedHistograms

std::vector<HistData> PlotBase::m_vBookedHistograms
protectedinherited

Definition at line 96 of file PlotBase.h.

◆ m_vBookedTrees

std::vector<TreeData> PlotBase::m_vBookedTrees
protectedinherited

Definition at line 97 of file PlotBase.h.

◆ m_vSubNodes

std::vector<PlotBase*> PlotBase::m_vSubNodes
protectedinherited

Definition at line 95 of file PlotBase.h.


The documentation for this class was generated from the following files:
AthMessaging::m_lvl
std::atomic< MSG::Level > m_lvl
Current logging level.
Definition: AthMessaging.h:138
InDetPerfPlot_TRTExtension::m_ptresTRTExtensions_vs_pt
TH2 * m_ptresTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:50
PlotBase::constructPrefix
static std::string constructPrefix(std::string dir, bool prependDir)
Definition: PlotBase.cxx:287
SingleHistogramDefinition::nBinsX
unsigned int nBinsX
Definition: SingleHistogramDefinition.h:47
TH2::Fill
int Fill(double, double)
Definition: rootspy.cxx:382
WritePulseShapeToCool.yhi
yhi
Definition: WritePulseShapeToCool.py:153
replace
std::string replace(std::string s, const std::string &s2, const std::string &s3)
Definition: hcg.cxx:307
IDTPM::ndof
float ndof(const U &p)
Definition: TrackParametersHelper.h:127
PlotBase::m_iDetailLevel
int m_iDetailLevel
Definition: PlotBase.h:100
IDPVM::ResolutionHelper::iterRMS_convergence
@ iterRMS_convergence
Definition: InnerDetector/InDetValidation/InDetPhysValMonitoring/InDetPhysValMonitoring/ResolutionHelper.h:36
PlotBase::m_vBookedHistograms
std::vector< HistData > m_vBookedHistograms
Definition: PlotBase.h:96
PlotBase::Book1D
TH1F * Book1D(const std::string &name, const std::string &labels, int nBins, float start, float end, bool prependDir=true)
Book a TH1D histogram.
Definition: PlotBase.cxx:88
InDetPerfPlot_TRTExtension::m_chi2ndofTRTExtensions
TH1 * m_chi2ndofTRTExtensions
Definition: InDetPerfPlot_TRTExtension.h:46
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:76
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
InDetPlotBase::book
void book(Htype *&pHisto, const std::string &histoIdentifier, const std::string &nameOverride="", const std::string &folder="default")
Helper method to book histograms using an identifier string.
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:575
InDetPerfPlot_TRTExtension::m_pullmeanTRTExtensions_vs_eta
TH1 * m_pullmeanTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:70
TH2F
Definition: rootspy.cxx:420
IDPVM::ResolutionHelper::makeResolutions
void makeResolutions(const TH2 *h_input2D, TH1 *hwidth, TH1 *hmean, TH1 *hproj[], bool saveProjections, IDPVM::ResolutionHelper::methods theMethod=IDPVM::ResolutionHelper::iterRMS_convergence)
extract 1D resolution plots from a 2D "residual vs observable" histogram.
Definition: InnerDetector/InDetValidation/InDetPhysValMonitoring/src/ResolutionHelper.cxx:288
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
InDetPerfPlot_TRTExtension::m_resmeanTRTExtensions_vs_pt
TH1 * m_resmeanTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:57
InDetPerfPlot_TRTExtension::m_ptresNoTRTExtensions_vs_pt
TH2 * m_ptresNoTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:52
python.copyTCTOutput.sDir
sDir
Definition: copyTCTOutput.py:60
InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_nvertices
TEfficiency * m_fracTRTExtensions_vs_nvertices
Definition: InDetPerfPlot_TRTExtension.h:41
plotmaker.hist
hist
Definition: plotmaker.py:148
mergePhysValFiles.start
start
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:14
PlotBase::initializePlots
virtual void initializePlots()
Definition: PlotBase.h:90
PlotBase::m_sDirectory
std::string m_sDirectory
Definition: PlotBase.h:99
PlotBase::m_vBookedEfficiencies
std::vector< EfficiencyData > m_vBookedEfficiencies
Definition: PlotBase.h:98
tree
TChain * tree
Definition: tile_monitor.h:30
InDetPerfPlot_TRTExtension::m_resolutionHelper
IDPVM::ResolutionHelper m_resolutionHelper
Definition: InDetPerfPlot_TRTExtension.h:34
PlotBase::BookTEfficiency
TEfficiency * BookTEfficiency(const std::string &name, const std::string &labels, const int nBinsX, const float xlo, const float xhi, const bool prependDir=true)
Book a (1-D) TEfficiency histogram.
Definition: PlotBase.cxx:251
TProfile2D
Definition: rootspy.cxx:531
test_pyathena.pt
pt
Definition: test_pyathena.py:11
bin
Definition: BinsDiffFromStripMedian.h:43
PlotBase::Book2D
TH2F * Book2D(const std::string &name, const std::string &labels, int nBinsX, float startX, float endX, int nBinsY, float startY, float endY, bool prependDir=true)
Book a TH2D histogram.
Definition: PlotBase.cxx:117
athena.value
value
Definition: athena.py:122
xAOD::numberOfTRTHits
@ numberOfTRTHits
number of TRT hits [unit8_t].
Definition: TrackingPrimitives.h:275
SG::ConstAccessor< float >
InDetPerfPlot_TRTExtension::m_ptpullTRTExtensions_vs_eta
TH2 * m_ptpullTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:64
InDetPerfPlot_TRTExtension::m_resmeanNoTRTExtensions_vs_pt
TH1 * m_resmeanNoTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:62
InDetPerfPlot_TRTExtension::m_pullmeanNoTRTExtensions_vs_eta
TH1 * m_pullmeanNoTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:75
InDetPerfPlot_TRTExtension::m_pullwidthNoTRTExtensions_vs_pt
TH1 * m_pullwidthNoTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:76
InDetPerfPlot_TRTExtension::m_chi2ndofNoTRTExtensions
TH1 * m_chi2ndofNoTRTExtensions
Definition: InDetPerfPlot_TRTExtension.h:47
python.TrigEgammaMonitorHelper.TH2F
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:45
AthMessaging::m_imsg
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
Definition: AthMessaging.h:135
python.SystemOfUnits.ms
int ms
Definition: SystemOfUnits.py:132
InDetPerfPlot_TRTExtension::m_resmeanNoTRTExtensions_vs_eta
TH1 * m_resmeanNoTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:60
Athena::getMessageSvc
IMessageSvc * getMessageSvc(bool quiet=false)
Definition: getMessageSvc.cxx:20
PlotBase::BookTProfile2D
TProfile2D * BookTProfile2D(const std::string &name, const std::string &labels, const int nBinsX, const double xlo, const double xhi, const int nBinsY, const double ylo, const double yhi, bool prependDir=true, bool useRMS=false)
Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.
Definition: PlotBase.cxx:225
InDetPerfPlot_TRTExtension::m_fracTRTExtensions_matched_vs_pt
TEfficiency * m_fracTRTExtensions_matched_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:44
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
InDetPerfPlot_TRTExtension::m_reswidthNoTRTExtensions_vs_pt
TH1 * m_reswidthNoTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:61
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:200
InDetPerfPlot_TRTExtension::m_ptpullNoTRTExtensions_vs_eta
TH2 * m_ptpullNoTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:66
InDetPerfPlot_TRTExtension::m_ptpullTRTExtensions_vs_pt
TH2 * m_ptpullTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:65
InDetPerfPlot_TRTExtension::m_reswidthNoTRTExtensions_vs_eta
TH1 * m_reswidthNoTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:59
SingleHistogramDefinition::xAxis
IHistogramDefinitionSvc::axesLimits_t xAxis
Definition: SingleHistogramDefinition.h:50
InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_pt
TEfficiency * m_fracTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:39
beamspotnt.labels
list labels
Definition: bin/beamspotnt.py:1447
PlotBase::m_vSubNodes
std::vector< PlotBase * > m_vSubNodes
Definition: PlotBase.h:95
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
TH3::Fill
int Fill(double, double, double)
Definition: rootspy.cxx:453
InDetPerfPlot_TRTExtension::m_ptresTRTExtensions_vs_eta
TH2 * m_ptresTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:49
InDetPerfPlot_TRTExtension::m_pullwidthTRTExtensions_vs_eta
TH1 * m_pullwidthTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:69
WritePulseShapeToCool.xhi
xhi
Definition: WritePulseShapeToCool.py:152
python.TrigEgammaMonitorHelper.TProfile
def TProfile(*args, **kwargs)
Definition: TrigEgammaMonitorHelper.py:81
InDetPerfPlot_TRTExtension::m_pullwidthNoTRTExtensions_vs_eta
TH1 * m_pullwidthNoTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:74
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ChangeHistoRange.binsY
list binsY
Definition: ChangeHistoRange.py:59
chi2
double chi2(TH1 *h0, TH1 *h1)
Definition: comparitor.cxx:522
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
plotting.yearwise_efficiency.yval
float yval
Definition: yearwise_efficiency.py:43
TProfile2D::Fill
int Fill(double, double, double)
Definition: rootspy.cxx:541
InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_eta
TEfficiency * m_fracTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:38
InDetPerfPlot_TRTExtension::m_pullmeanTRTExtensions_vs_pt
TH1 * m_pullmeanTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:72
IHistogramDefinitionSvc::definition
virtual SingleHistogramDefinition definition(const std::string &name, const std::string &dirName="") const =0
Return a histogram definition, retrieved by histogram identifier (and directory name,...
drawFromPickle.tan
tan
Definition: drawFromPickle.py:36
WritePulseShapeToCool.xlo
xlo
Definition: WritePulseShapeToCool.py:133
TH1::Fill
int Fill(double)
Definition: rootspy.cxx:285
plotting.yearwise_efficiency.xval
float xval
Definition: yearwise_efficiency.py:42
InDetPerfPlot_TRTExtension::m_reswidthTRTExtensions_vs_pt
TH1 * m_reswidthTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:56
WritePulseShapeToCool.ylo
ylo
Definition: WritePulseShapeToCool.py:134
AthMessaging::msg
MsgStream & msg() const
The standard message stream.
Definition: AthMessaging.h:164
InDetPlotBase::m_histoDefSvc
IHistogramDefinitionSvc * m_histoDefSvc
Definition: InDetPlotBase.h:86
InDetPerfPlot_TRTExtension::m_pullmeanNoTRTExtensions_vs_pt
TH1 * m_pullmeanNoTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:77
SingleHistogramDefinition
Almost-a-struct for holding the single histogram definition.
Definition: SingleHistogramDefinition.h:17
beamspotman.dir
string dir
Definition: beamspotman.py:623
InDetPerfPlot_TRTExtension::m_fracTRTExtensions_vs_mu
TEfficiency * m_fracTRTExtensions_vs_mu
Definition: InDetPerfPlot_TRTExtension.h:40
InDetPerfPlot_TRTExtension::m_fracTRTExtensions_matched_vs_eta
TEfficiency * m_fracTRTExtensions_matched_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:43
dumpTgcDigiJitter.nBins
list nBins
Definition: dumpTgcDigiJitter.py:29
InDetPerfPlot_TRTExtension::m_ptpullNoTRTExtensions_vs_pt
TH2 * m_ptpullNoTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:67
InDetPerfPlot_TRTExtension::m_reswidthTRTExtensions_vs_eta
TH1 * m_reswidthTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:54
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
InDetPerfPlot_TRTExtension::m_pullwidthTRTExtensions_vs_pt
TH1 * m_pullwidthTRTExtensions_vs_pt
Definition: InDetPerfPlot_TRTExtension.h:71
pmontree.opt
opt
Definition: pmontree.py:16
TH3F
Definition: rootspy.cxx:495
TProfile
Definition: rootspy.cxx:515
InDetPlotBase::InDetPlotBase
InDetPlotBase(InDetPlotBase *pParent, const std::string &dirName)
Constructor taking parent node and directory name for plots.
Definition: InDetPlotBase.cxx:40
InDetPerfPlot_TRTExtension::m_resmeanTRTExtensions_vs_eta
TH1 * m_resmeanTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:55
InDetPerfPlot_TRTExtension::m_ptresNoTRTExtensions_vs_eta
TH2 * m_ptresNoTRTExtensions_vs_eta
Definition: InDetPerfPlot_TRTExtension.h:51
DiTauMassTools::MaxHistStrategyV2::e
e
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
TProfile::Fill
int Fill(double, double)
Definition: rootspy.cxx:523
TH1F
Definition: rootspy.cxx:320
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
AthMessaging::m_nm
std::string m_nm
Message source name.
Definition: AthMessaging.h:129
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
PlotBase::BookTProfile
TProfile * BookTProfile(const std::string &name, const std::string &labels, int nBinsX, float startX, float endX, float startY=-1, float endY=-1, bool prependDir=true, bool useRMS=false)
Book a TProfile histogram.
Definition: PlotBase.cxx:180
SingleHistogramDefinition::name
std::string name
Definition: SingleHistogramDefinition.h:44
CaloCondBlobAlgs_fillNoiseFromASCII.folder
folder
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:56
SingleHistogramDefinition::yAxis
IHistogramDefinitionSvc::axesLimits_t yAxis
Definition: SingleHistogramDefinition.h:51
SingleHistogramDefinition::isValid
bool isValid() const
Is the histogram definition valid.
Definition: SingleHistogramDefinition.cxx:104
xAOD::InDetExtensionProcessor
@ InDetExtensionProcessor
Tracks with InDetExtensionProcessor used.
Definition: TrackingPrimitives.h:91
ChangeHistoRange.binsX
list binsX
Definition: ChangeHistoRange.py:56
SingleHistogramDefinition::allTitles
std::string allTitles
Definition: SingleHistogramDefinition.h:56
python.TrigEgammaMonitorHelper.TH1F
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:24
AthMessaging::initMessaging
void initMessaging() const
Initialize our message level and MessageSvc.
Definition: AthMessaging.cxx:39
drawFromPickle.sin
sin
Definition: drawFromPickle.py:36
AthMessaging::m_msg_tls
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
Definition: AthMessaging.h:132
InDetPlotBase::fillHisto
static void fillHisto(TProfile *pTprofile, const float bin, const float weight, const float weight2=1.0)
Definition: InDetPlotBase.cxx:85
CaloNoise_fillDB.mu
mu
Definition: CaloNoise_fillDB.py:53
InDetPerfPlot_TRTExtension::m_resolutionMethod
IDPVM::ResolutionHelper::methods m_resolutionMethod
Definition: InDetPerfPlot_TRTExtension.h:35
GeV
#define GeV
Definition: CaloTransverseBalanceVecMon.cxx:30
PlotBase::finalizePlots
virtual void finalizePlots()
Definition: PlotBase.h:91
PlotBase::m_vBookedTrees
std::vector< TreeData > m_vBookedTrees
Definition: PlotBase.h:97
SingleHistogramDefinition::nBinsY
unsigned int nBinsY
Definition: SingleHistogramDefinition.h:48