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_Vertex Class Reference

class holding general plots for xAOD::Vertex More...

#include <InDetPerfPlot_Vertex.h>

Inheritance diagram for InDetPerfPlot_Vertex:
Collaboration diagram for InDetPerfPlot_Vertex:

Public Member Functions

 InDetPerfPlot_Vertex (InDetPlotBase *pParent, const std::string &dirName)
 
void fill (const xAOD::Vertex &vertex, 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 ()
 
virtual 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

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...
 
Position of vertex

Position x

TH1m_vx_x {}
 
TH1m_vx_y {}
 Position y. More...
 
TH1m_vx_z {}
 Position z. More...
 
TH1m_vx_time {}
 Time. More...
 
Errors of vertex

Error x

TH1m_vx_err_x {}
 
TH1m_vx_err_y {}
 Error y. More...
 
TH1m_vx_err_z {}
 Error z. More...
 
TH1m_vx_err_time {}
 Error time. More...
 
Vertex quality and type

chi^2/ndf

TH1m_vx_chi2_over_ndf {}
 
TH1m_vx_type {}
 type More...
 
Track properties

Number of tracks at vertex

TH1m_vx_nTracks {}
 
TH1m_vx_track_weights {}
 Distribution of tracks' weights. More...
 
TH1m_vx_track_pt {}
 Tracks pT (iDetailLevel >= 100) More...
 
TH1m_vx_track_eta {}
 Tracks eta (iDetailLevel >= 100) More...
 
TH1m_vx_track_nSiHits {}
 Tracks silicon hits (iDetailLevel >= 100) More...
 
TH1m_vx_track_nSiHoles {}
 Tracks silicon holes (iDetailLevel >= 100) More...
 
TH1m_vx_track_d0 {}
 Tracks d0 (iDetailLevel >= 100) More...
 
TH1m_vx_track_err_d0 {}
 Tracks d0 error (iDetailLevel >= 100) More...
 
TH1m_vx_track_z0 {}
 Tracks z0 (iDetailLevel >= 100) More...
 
TH1m_vx_track_err_z0 {}
 Tracks z0 error (iDetailLevel >= 100) More...
 

Detailed Description

class holding general plots for xAOD::Vertex

Definition at line 24 of file InDetPerfPlot_Vertex.h.

Constructor & Destructor Documentation

◆ InDetPerfPlot_Vertex()

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

Definition at line 24 of file InDetPerfPlot_Vertex.cxx.

24  :
25  InDetPlotBase(pParent, sDir) {
26  // nop
27 }

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()

void InDetPerfPlot_Vertex::fill ( const xAOD::Vertex vertex,
float  weight 
)

This should not be run on formats with a slimmed track record. However, people may do so - so we catch the potential invalid links to prevent a (useless) athena exception message.

currently, the PlotBase classes have no athena message stream. TODO: This should be improved in the future (requires changes to all validation packages)

Definition at line 62 of file InDetPerfPlot_Vertex.cxx.

62  {
63  // fill position plots
67 
68  static const SG::AuxElement::Accessor<uint8_t> accHasValidTime("hasValidTime");
69  static const SG::AuxElement::Accessor<float> accTime("time");
70  if (accHasValidTime.isAvailable(vertex) && accTime.isAvailable(vertex)) {
71  if (vertex.hasValidTime()) {
72  fillHisto(m_vx_time, vertex.time(), weight);
73  }
74  }
75 
76  // fill error plots
77  const AmgSymMatrix(3)& covariance = vertex.covariancePosition();
78  fillHisto(m_vx_err_x, Amg::error(covariance, 0), weight);
79  fillHisto(m_vx_err_y, Amg::error(covariance, 1), weight);
80  fillHisto(m_vx_err_z, Amg::error(covariance, 2), weight);
81 
82  static const SG::AuxElement::Accessor<float> accTimeResolution("timeResolution");
83  if (accHasValidTime.isAvailable(vertex) && accTimeResolution.isAvailable(vertex)) {
84  if (vertex.hasValidTime()) {
85  fillHisto(m_vx_err_time, vertex.timeResolution(), weight);
86  }
87  }
88 
89  // fill vertex quality and type
90  fillHisto(m_vx_type, vertex.vertexType(), weight);
91 
92  float ndf = vertex.numberDoF();
93  if (ndf != 0) {
94  fillHisto(m_vx_chi2_over_ndf, vertex.chiSquared() / ndf, weight);
95  } else {
97  }
98 
99  // fill vertex tracks properties
100  int nTracks = vertex.nTrackParticles();
101  fillHisto(m_vx_nTracks, nTracks, weight);
102  for (const float& trackWeight : vertex.trackWeights()) {
103  fillHisto(m_vx_track_weights, trackWeight, weight);
104  }
105 
106  // fill expert plots: tracks properties at vertex
107  if (m_iDetailLevel >= 100) {
108  // loop over tracks at vertex
109  for (const auto& elTrk : vertex.trackParticleLinks()) {
113  if (!elTrk.isValid()){
116  std::cerr << "Invalid track link on vertex. Vertex track plots will be unreliable. Please check your input format. "<<std::endl;
117  continue;
118  }
119  const xAOD::TrackParticle* trk = *elTrk;
120  fillHisto(m_vx_track_pt, trk->pt() / Gaudi::Units::GeV, weight); // MeV -> GeV
122  const xAOD::ParametersCovMatrix_t covTrk = trk->definingParametersCovMatrix();
123  fillHisto(m_vx_track_d0, trk->d0(), weight);
125  fillHisto(m_vx_track_z0, trk->z0() - vertex.z(), weight);
127  bool successfulRetrieval(false);
128  uint8_t iPixHits, iSctHits, iPixHoles, iSctHoles;
129  successfulRetrieval = trk->summaryValue(iPixHits, xAOD::numberOfPixelHits);
130  successfulRetrieval &= trk->summaryValue(iSctHits, xAOD::numberOfSCTHits);
131  if (successfulRetrieval) {
132  fillHisto(m_vx_track_nSiHits, iPixHits + iSctHits, weight);
133  }
134  successfulRetrieval = trk->summaryValue(iPixHoles, xAOD::numberOfPixelHoles);
135  successfulRetrieval &= trk->summaryValue(iSctHoles, xAOD::numberOfSCTHoles);
136  if (successfulRetrieval) {
137  fillHisto(m_vx_track_nSiHoles, iPixHoles + iSctHoles, weight);
138  }
139  }
140  }
141 }

◆ 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()

virtual void PlotBase::finalizePlots ( )
inlineprivatevirtualinherited

◆ 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_Vertex::initializePlots ( )
privatevirtual

Reimplemented from PlotBase.

Definition at line 30 of file InDetPerfPlot_Vertex.cxx.

30  {
31  book(m_vx_x,"vx_x");
32  book(m_vx_y,"vx_y");
33  book(m_vx_z,"vx_z");
34  book(m_vx_time,"vx_time");
35 
36  book(m_vx_err_x,"vx_err_x");
37  book(m_vx_err_y,"vx_err_y");
38  book(m_vx_err_z,"vx_err_z");
39  book(m_vx_err_time,"vx_err_time");
40 
41  book(m_vx_chi2_over_ndf,"vx_chi2_over_ndf");
42  book(m_vx_type,"vx_type");
43 
44  book(m_vx_nTracks,"vx_nTracks");
45  book(m_vx_track_weights,"vx_track_weights");
46 
47 
48 
49  if (m_iDetailLevel >= 100) {
50  book(m_vx_track_pt,"vx_track_pt");
51  book(m_vx_track_eta,"vx_track_eta");
52  book(m_vx_track_nSiHits,"vx_track_nSiHits");
53  book(m_vx_track_nSiHoles,"vx_track_nSiHoles");
54  book(m_vx_track_d0,"vx_track_d0");
55  book(m_vx_track_err_d0,"vx_track_err_d0");
56  book(m_vx_track_z0,"vx_track_z0");
57  book(m_vx_track_err_z0,"vx_track_err_z0");
58  }
59 }

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

◆ m_vx_chi2_over_ndf

TH1* InDetPerfPlot_Vertex::m_vx_chi2_over_ndf {}
private

Definition at line 55 of file InDetPerfPlot_Vertex.h.

◆ m_vx_err_time

TH1* InDetPerfPlot_Vertex::m_vx_err_time {}
private

Error time.

Definition at line 49 of file InDetPerfPlot_Vertex.h.

◆ m_vx_err_x

TH1* InDetPerfPlot_Vertex::m_vx_err_x {}
private

Definition at line 43 of file InDetPerfPlot_Vertex.h.

◆ m_vx_err_y

TH1* InDetPerfPlot_Vertex::m_vx_err_y {}
private

Error y.

Definition at line 45 of file InDetPerfPlot_Vertex.h.

◆ m_vx_err_z

TH1* InDetPerfPlot_Vertex::m_vx_err_z {}
private

Error z.

Definition at line 47 of file InDetPerfPlot_Vertex.h.

◆ m_vx_nTracks

TH1* InDetPerfPlot_Vertex::m_vx_nTracks {}
private

Definition at line 63 of file InDetPerfPlot_Vertex.h.

◆ m_vx_time

TH1* InDetPerfPlot_Vertex::m_vx_time {}
private

Time.

Definition at line 38 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_d0

TH1* InDetPerfPlot_Vertex::m_vx_track_d0 {}
private

Tracks d0 (iDetailLevel >= 100)

Definition at line 75 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_err_d0

TH1* InDetPerfPlot_Vertex::m_vx_track_err_d0 {}
private

Tracks d0 error (iDetailLevel >= 100)

Definition at line 77 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_err_z0

TH1* InDetPerfPlot_Vertex::m_vx_track_err_z0 {}
private

Tracks z0 error (iDetailLevel >= 100)

Definition at line 81 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_eta

TH1* InDetPerfPlot_Vertex::m_vx_track_eta {}
private

Tracks eta (iDetailLevel >= 100)

Definition at line 69 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_nSiHits

TH1* InDetPerfPlot_Vertex::m_vx_track_nSiHits {}
private

Tracks silicon hits (iDetailLevel >= 100)

Definition at line 71 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_nSiHoles

TH1* InDetPerfPlot_Vertex::m_vx_track_nSiHoles {}
private

Tracks silicon holes (iDetailLevel >= 100)

Definition at line 73 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_pt

TH1* InDetPerfPlot_Vertex::m_vx_track_pt {}
private

Tracks pT (iDetailLevel >= 100)

Definition at line 67 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_weights

TH1* InDetPerfPlot_Vertex::m_vx_track_weights {}
private

Distribution of tracks' weights.

Definition at line 65 of file InDetPerfPlot_Vertex.h.

◆ m_vx_track_z0

TH1* InDetPerfPlot_Vertex::m_vx_track_z0 {}
private

Tracks z0 (iDetailLevel >= 100)

Definition at line 79 of file InDetPerfPlot_Vertex.h.

◆ m_vx_type

TH1* InDetPerfPlot_Vertex::m_vx_type {}
private

type

Definition at line 57 of file InDetPerfPlot_Vertex.h.

◆ m_vx_x

TH1* InDetPerfPlot_Vertex::m_vx_x {}
private

Definition at line 32 of file InDetPerfPlot_Vertex.h.

◆ m_vx_y

TH1* InDetPerfPlot_Vertex::m_vx_y {}
private

Position y.

Definition at line 34 of file InDetPerfPlot_Vertex.h.

◆ m_vx_z

TH1* InDetPerfPlot_Vertex::m_vx_z {}
private

Position z.

Definition at line 36 of file InDetPerfPlot_Vertex.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
covarianceTool.ndf
ndf
Definition: covarianceTool.py:678
PlotBase::constructPrefix
static std::string constructPrefix(std::string dir, bool prependDir)
Definition: PlotBase.cxx:287
xAOD::TrackParticle_v1::pt
virtual double pt() const override final
The transverse momentum ( ) of the particle.
Definition: TrackParticle_v1.cxx:73
SingleHistogramDefinition::nBinsX
unsigned int nBinsX
Definition: SingleHistogramDefinition.h:47
TH2::Fill
int Fill(double, double)
Definition: rootspy.cxx:382
xAOD::numberOfPixelHoles
@ numberOfPixelHoles
number of pixel layers on track with absence of hits [unit8_t].
Definition: TrackingPrimitives.h:261
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
PlotBase::m_iDetailLevel
int m_iDetailLevel
Definition: PlotBase.h:100
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
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
InDetPerfPlot_Vertex::m_vx_track_nSiHoles
TH1 * m_vx_track_nSiHoles
Tracks silicon holes (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:73
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
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:66
TH2F
Definition: rootspy.cxx:420
python.copyTCTOutput.sDir
sDir
Definition: copyTCTOutput.py:60
xAOD::TrackParticle_v1::eta
virtual double eta() const override final
The pseudorapidity ( ) of the particle.
Definition: TrackParticle_v1.cxx:77
plotmaker.hist
hist
Definition: plotmaker.py:148
InDetPerfPlot_Vertex::m_vx_track_d0
TH1 * m_vx_track_d0
Tracks d0 (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:75
xAOD::TrackParticle_v1::summaryValue
bool summaryValue(uint8_t &value, const SummaryType &information) const
Accessor for TrackSummary values.
Definition: TrackParticle_v1.cxx:736
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_Vertex::m_vx_track_z0
TH1 * m_vx_track_z0
Tracks z0 (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:79
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
InDetPerfPlot_Vertex::m_vx_type
TH1 * m_vx_type
type
Definition: InDetPerfPlot_Vertex.h:57
InDetPerfPlot_Vertex::m_vx_y
TH1 * m_vx_y
Position y.
Definition: InDetPerfPlot_Vertex.h:34
bin
Definition: BinsDiffFromStripMedian.h:43
xAOD::TrackParticle_v1::z0
float z0() const
Returns the parameter.
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
InDetPerfPlot_Vertex::m_vx_track_err_z0
TH1 * m_vx_track_err_z0
Tracks z0 error (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:81
athena.value
value
Definition: athena.py:122
xAOD::numberOfPixelHits
@ numberOfPixelHits
these are the pixel hits, including the b-layer [unit8_t].
Definition: TrackingPrimitives.h:259
InDetPerfPlot_Vertex::m_vx_track_pt
TH1 * m_vx_track_pt
Tracks pT (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:67
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
AmgSymMatrix
#define AmgSymMatrix(dim)
Definition: EventPrimitives.h:52
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
xAOD::TrackParticle_v1::d0
float d0() const
Returns the parameter.
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:200
SingleHistogramDefinition::xAxis
IHistogramDefinitionSvc::axesLimits_t xAxis
Definition: SingleHistogramDefinition.h:50
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
WritePulseShapeToCool.xhi
xhi
Definition: WritePulseShapeToCool.py:152
InDetPerfPlot_Vertex::m_vx_nTracks
TH1 * m_vx_nTracks
Definition: InDetPerfPlot_Vertex.h:63
python.TrigEgammaMonitorHelper.TProfile
def TProfile(*args, **kwargs)
Definition: TrigEgammaMonitorHelper.py:81
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
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_Vertex::m_vx_err_time
TH1 * m_vx_err_time
Error time.
Definition: InDetPerfPlot_Vertex.h:49
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,...
WritePulseShapeToCool.xlo
xlo
Definition: WritePulseShapeToCool.py:133
xAOD::numberOfSCTHoles
@ numberOfSCTHoles
number of SCT holes [unit8_t].
Definition: TrackingPrimitives.h:270
TH1::Fill
int Fill(double)
Definition: rootspy.cxx:285
plotting.yearwise_efficiency.xval
float xval
Definition: yearwise_efficiency.py:42
InDetPerfPlot_Vertex::m_vx_track_err_d0
TH1 * m_vx_track_err_d0
Tracks d0 error (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:77
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
SingleHistogramDefinition
Almost-a-struct for holding the single histogram definition.
Definition: SingleHistogramDefinition.h:17
InDetPerfPlot_Vertex::m_vx_track_nSiHits
TH1 * m_vx_track_nSiHits
Tracks silicon hits (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:71
InDetPerfPlot_Vertex::m_vx_track_weights
TH1 * m_vx_track_weights
Distribution of tracks' weights.
Definition: InDetPerfPlot_Vertex.h:65
beamspotman.dir
string dir
Definition: beamspotman.py:623
dumpTgcDigiJitter.nBins
list nBins
Definition: dumpTgcDigiJitter.py:29
xAOD::TrackParticle_v1::definingParametersCovMatrix
const ParametersCovMatrix_t definingParametersCovMatrix() const
Returns the 5x5 symmetric matrix containing the defining parameters covariance matrix.
Definition: TrackParticle_v1.cxx:246
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
pmontree.opt
opt
Definition: pmontree.py:16
Amg::error
double error(const Amg::MatrixX &mat, int index)
return diagonal error of the matrix caller should ensure the matrix is symmetric and the index is in ...
Definition: EventPrimitivesHelpers.h:40
InDetPerfPlot_Vertex::m_vx_time
TH1 * m_vx_time
Time.
Definition: InDetPerfPlot_Vertex.h:38
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_Vertex::m_vx_err_z
TH1 * m_vx_err_z
Error z.
Definition: InDetPerfPlot_Vertex.h:47
Trk::vertex
@ vertex
Definition: MeasurementType.h:21
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
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
InDetPerfPlot_Vertex::m_vx_chi2_over_ndf
TH1 * m_vx_chi2_over_ndf
Definition: InDetPerfPlot_Vertex.h:55
InDetPerfPlot_Vertex::m_vx_x
TH1 * m_vx_x
Definition: InDetPerfPlot_Vertex.h:32
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::numberOfSCTHits
@ numberOfSCTHits
number of hits in SCT [unit8_t].
Definition: TrackingPrimitives.h:268
InDetPerfPlot_Vertex::m_vx_err_x
TH1 * m_vx_err_x
Definition: InDetPerfPlot_Vertex.h:43
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
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
AthMessaging::initMessaging
void initMessaging() const
Initialize our message level and MessageSvc.
Definition: AthMessaging.cxx:39
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
GeV
#define GeV
Definition: CaloTransverseBalanceVecMon.cxx:30
InDetPerfPlot_Vertex::m_vx_track_eta
TH1 * m_vx_track_eta
Tracks eta (iDetailLevel >= 100)
Definition: InDetPerfPlot_Vertex.h:69
PlotBase::finalizePlots
virtual void finalizePlots()
Definition: PlotBase.h:91
InDetPerfPlot_Vertex::m_vx_err_y
TH1 * m_vx_err_y
Error y.
Definition: InDetPerfPlot_Vertex.h:45
PlotBase::m_vBookedTrees
std::vector< TreeData > m_vBookedTrees
Definition: PlotBase.h:97
SingleHistogramDefinition::nBinsY
unsigned int nBinsY
Definition: SingleHistogramDefinition.h:48
InDetPerfPlot_Vertex::m_vx_z
TH1 * m_vx_z
Position z.
Definition: InDetPerfPlot_Vertex.h:36