|
ATLAS Offline Software
|
class holding plots for truth matched vertices
More...
#include <InDetPerfPlot_VertexTruthMatching.h>
|
| InDetPerfPlot_VertexTruthMatching (InDetPlotBase *pParent, const std::string &dirName, const int detailLevel=10) |
|
void | fill (const xAOD::Vertex &vertex, const xAOD::TruthVertex *tvrt=0, float weight=1.0) |
|
void | fill (const xAOD::Vertex *recoHardScatter, const xAOD::VertexContainer &vertexContainer, const std::vector< const xAOD::TruthVertex * > &truthHSVertices, const std::vector< const xAOD::TruthVertex * > &truthPUVertices, float weight=1.0) |
|
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< HistData > | retrieveBookedHistograms () |
| Retrieve all booked histograms. More...
|
|
std::vector< TreeData > | retrieveBookedTrees () |
| Retrieve all booked trees. More...
|
|
std::vector< EfficiencyData > | retrieveBookedEfficiencies () |
| 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 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) |
|
|
template<class T > |
void | mBook (T &pHisto, const std::string &histoIdentifier) |
| book, for use by macro More...
|
|
class holding plots for truth matched vertices
Definition at line 41 of file InDetPerfPlot_VertexTruthMatching.h.
◆ InDetPerfPlot_VertexTruthMatching()
InDetPerfPlot_VertexTruthMatching::InDetPerfPlot_VertexTruthMatching |
( |
InDetPlotBase * |
pParent, |
|
|
const std::string & |
dirName, |
|
|
const int |
detailLevel = 10 |
|
) |
| |
◆ 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
-
pHisto | Pointer to the histogram to be booked (assumed to be initialized to nullptr) |
histoIdentifier | Identifier (looked up in the XML file) |
nameOverride | Allows 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. |
folder | Folder to place the plot (if any) |
◆ book() [2/6]
◆ book() [3/6]
◆ book() [4/6]
◆ book() [5/6]
◆ book() [6/6]
◆ 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.
91 Bool_t oldstat = TH1::AddDirectoryStatus();
92 TH1::AddDirectory(
false);
94 TH1::AddDirectory(oldstat);
◆ 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.
104 Bool_t oldstat = TH1::AddDirectoryStatus();
105 TH1::AddDirectory(
false);
107 refHist->GetXaxis()->GetXbins()->GetArray());
109 TH1::AddDirectory(oldstat);
◆ 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.
141 Bool_t oldstat = TH2::AddDirectoryStatus();
142 TH2::AddDirectory(
false);
145 TH2::AddDirectory(oldstat);
◆ 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.
120 Bool_t oldstat = TH2::AddDirectoryStatus();
121 TH2::AddDirectory(
false);
124 TH2::AddDirectory(oldstat);
◆ 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.
133 return Book2D(
name,
labels, refHist->GetNbinsX(), refHist->GetXaxis()->GetXmin(), refHist->GetXaxis()->GetXmax(),
134 refHist->GetNbinsY(), refHist->GetYaxis()->GetXmin(), refHist->GetYaxis()->GetXmax(), prependDir);
◆ 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.
154 Bool_t oldstat = TH3::AddDirectoryStatus();
155 TH3::AddDirectory(
false);
157 labels.c_str(), nBinsX, startX, endX, nBinsY, startY, endY, nBinsZ, startZ, endZ);
159 TH3::AddDirectory(oldstat);
◆ 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.
167 Bool_t oldstat = TH3::AddDirectoryStatus();
168 TH3::AddDirectory(
false);
170 refHist->GetXaxis()->GetXbins()->GetArray(), refHist->GetNbinsY(),
171 refHist->GetYaxis()->GetXbins()->GetArray(), refHist->GetNbinsZ(),
172 refHist->GetZaxis()->GetXbins()->GetArray());
173 TH3::AddDirectory(oldstat);
◆ 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.
257 hist->SetDirectory(
nullptr);
◆ 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.
268 hist->SetDirectory(
nullptr);
◆ 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.
201 Bool_t oldstat = TProfile::AddDirectoryStatus();
202 TProfile::AddDirectory(
false);
205 TProfile::AddDirectory(oldstat);
◆ 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.
184 Bool_t oldstat = TProfile::AddDirectoryStatus();
185 TProfile::AddDirectory(
false);
186 std::string
opt = useRMS ?
"S" :
"";
187 if ((startY == -1) and (endY == -1)) {
192 TProfile::AddDirectory(oldstat);
◆ BookTProfile2D() [1/2]
Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.
Definition at line 225 of file PlotBase.cxx.
229 Bool_t oldstat = TProfile2D::AddDirectoryStatus();
230 TProfile2D::AddDirectory(
false);
231 std::string
opt = useRMS ?
"S" :
"";
233 TProfile2D::AddDirectory(oldstat);
◆ 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.
241 Bool_t oldstat = TProfile2D::AddDirectoryStatus();
242 TProfile2D::AddDirectory(
false);
243 std::string
opt = useRMS ?
"S" :
"";
245 TProfile2D::AddDirectory(oldstat);
◆ 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.
215 Bool_t oldstat = TProfile::AddDirectoryStatus();
216 TProfile::AddDirectory(
false);
219 TProfile::AddDirectory(oldstat);
◆ BookTree()
TTree * PlotBase::BookTree |
( |
const std::string & |
name, |
|
|
bool |
prependDir = true |
|
) |
| |
|
inherited |
Book a TTree.
Definition at line 275 of file PlotBase.cxx.
279 tree->SetAutoSave(0);
280 tree->SetAutoFlush(0);
281 tree->SetDirectory(
nullptr);
◆ constructPrefix()
std::string PlotBase::constructPrefix |
( |
std::string |
dir, |
|
|
bool |
prependDir |
|
) |
| |
|
staticprivateinherited |
◆ fill() [1/2]
Definition at line 560 of file InDetPerfPlot_VertexTruthMatching.cxx.
563 float diff_z=
vertex.z()-tvrt->
z();
572 if (accHasValidTime.isAvailable(
vertex) && accTime.isAvailable(
vertex) &&
573 accTimeResolution.isAvailable(
vertex)) {
575 if (
vertex.hasValidTime()) {
577 float err_time =
vertex.timeResolution();
587 if (recoVtxMatchTypeInfo.isAvailable(
vertex)) {
589 matchType = recoVtxMatchTypeInfo(
vertex);
590 ATH_MSG_DEBUG(
"VERTEX DECORATOR ======= " << matchType <<
", with nTRACKS === " <<
vertex.nTrackParticles() <<
", vertex index = " <<
vertex.index() <<
" AT (x, y, z) = (" <<
vertex.x() <<
", " <<
vertex.y() <<
", " <<
vertex.z() <<
")");
594 ATH_MSG_WARNING(
"VertexMatchType DECORATOR seems to be available, but may be broken ===========");
598 ATH_MSG_WARNING(
"VertexMatchType DECORATOR is NOT available ===========");
◆ fill() [2/2]
Definition at line 603 of file InDetPerfPlot_VertexTruthMatching.cxx.
608 int nTruthVertices = (
int)(truthHSVertices.size() + truthPUVertices.size());
609 int nRecoVertices = (
int)vertexContainer.
size();
615 std::map<InDetVertexTruthMatchUtils::VertexMatchType, int> breakdown = {};
622 if (!recoHardScatter){
623 ATH_MSG_INFO(
"No recoHardScatter vertex - not filling vertex truth matching.");
631 if (!truthHSVertices.empty()) {
632 if (truthHSVertices.size() != 1) {
633 ATH_MSG_WARNING(
"Size of truth HS vertex vector is >1 -- only using the first one in the vector.");
635 truthHSVtx = truthHSVertices.at(0);
639 ATH_MSG_WARNING(
"Size of truth HS vertex vector is 0 -- assuming truth HS vertex to NOT be reconstructed.");
644 float localPUDensity =
getLocalPUDensity(truthHSVtx, truthHSVertices, truthPUVertices);
649 if (!bestRecoHSVtx_truth){
650 ATH_MSG_INFO(
"No bestRecoHS vertex - not filling vertex truth matching.");
655 if (!bestRecoHSVtx_truth){
656 ATH_MSG_INFO(
"No bestRecoHS vertex - not filling vertex truth matching.");
663 ATH_MSG_INFO(
"No truth HS - not filling vertex truth matching.");
670 bool truthHSVtxRecoed =
false;
672 float truthRecoRadialDiff2 = -1.;
676 truthRecoRadialDiff2 =
getRadialDiff2(bestRecoHSVtx_truth, truthHSVtx);
677 if (truthRecoRadialDiff2 < minTruthRecoRadialDiff2) {
678 truthHSVtxRecoed =
true;
679 minTruthRecoRadialDiff2 = truthRecoRadialDiff2;
684 float number_matched = 0;
685 float number_merged = 0;
686 float number_split = 0;
687 float number_fake = 0;
688 float number_matched_HS = 0;
689 float number_merged_HS = 0;
690 float number_split_HS = 0;
691 float number_fake_HS = 0;
692 float number_matched_PU = 0;
693 float number_merged_PU = 0;
694 float number_split_PU = 0;
695 float number_fake_PU = 0;
698 float vx_hs_mindz=9999.;
699 float min_fabs_dz = 9999.;
712 matchType = recoVtxMatchTypeInfo(*
vertex);
713 breakdown[matchType] += 1;
717 if(!matchVertex)
continue;
718 float residual_z = matchVertex->
z() -
vertex->z();
719 float residual_x = matchVertex->
x() -
vertex->x();
720 float residual_y = matchVertex->
y() -
vertex->y();
725 localPUDensity =
getLocalPUDensity(matchVertex, truthHSVertices, truthPUVertices);
761 float minpt = 20000 ;
769 float weighted_sumDZ = 0;
770 float weighted_deltaZ = 0;
771 float weighted_modsumDZ = 0;
772 float weighted_z_asym =0;
775 std::vector<float> track_deltaZ;
776 std::vector<float> track_deltaPt;
777 std::vector<float> track_deltaZ_weighted;
779 for (
size_t i = 0;
i <
vertex->nTrackParticles();
i++) {
780 trackTmp =
vertex->trackParticle(
i);
787 track_deltaZ.push_back(
deltaZ);
789 float trk_weight =
vertex->trackWeight(
i);
790 weighted_deltaZ =
deltaZ*trk_weight;
793 modsumDZ = modsumDZ + std::abs(
deltaZ);
794 weighted_sumDZ = weighted_sumDZ + weighted_deltaZ;
795 weighted_modsumDZ = weighted_modsumDZ + std::abs(weighted_deltaZ);
800 z_asym = sumDZ/modsumDZ;
802 if (weighted_modsumDZ >0) {
803 weighted_z_asym = weighted_sumDZ/weighted_modsumDZ;
809 mean_Dz=sumDZ/track_deltaZ.size();
810 double number_tracks =0;
811 number_tracks = track_deltaZ.size();
819 for (
auto i : track_deltaZ) {
821 z_zbar = (
i - mean_Dz);
822 z_var =(z_var + z_zbar*z_zbar);
823 z_skew =(z_skew + z_zbar*z_zbar*z_zbar);
824 z_kurt =(z_kurt + z_zbar*z_zbar*z_zbar*z_zbar);
827 z_var = z_var/(number_tracks -1);
828 z_sd = std::sqrt(z_var);
829 z_skew = z_skew/((number_tracks -1)*z_sd*z_sd*z_sd);
830 z_kurt = z_kurt/((number_tracks -1)*z_sd*z_sd*z_sd*z_sd);
836 if (
vertex == bestRecoHSVtx_truth) {
847 for (
const float& trkWeight :
vertex->trackWeights()) {
864 for (
const float& trkWeight :
vertex->trackWeights()) {
878 for (
const float& trkWeight :
vertex->trackWeights()) {
887 if (
vertex == bestRecoHSVtx_truth) {
896 for (
const float& trkWeight :
vertex->trackWeights()) {
912 for (
const float& trkWeight :
vertex->trackWeights()) {
926 for (
const float& trkWeight :
vertex->trackWeights()) {
935 if (
vertex == bestRecoHSVtx_truth) {
943 for (
const float& trkWeight :
vertex->trackWeights()) {
958 for (
const float& trkWeight :
vertex->trackWeights()) {
974 for (
const float& trkWeight :
vertex->trackWeights()) {
986 if (
vertex == bestRecoHSVtx_truth) {
998 if (
vertex == bestRecoHSVtx_truth) {
1004 if (sumPt > minpt) {
1010 if (
vertex == bestRecoHSVtx_truth) {
1016 if (sumPt > minpt) {
1022 if (
vertex == bestRecoHSVtx_truth) {
1028 if (sumPt > minpt) {
1038 if (
vertex == bestRecoHSVtx_truth) {
1073 if (sumPt > minpt) {
1093 float absd_hs_dz = std::abs(bestRecoHSVtx_truth->
z() -
vertex->z());
1094 if(bestRecoHSVtx_truth !=
vertex && absd_hs_dz < min_fabs_dz) {
1095 min_fabs_dz = absd_hs_dz;
1096 vx_hs_mindz = bestRecoHSVtx_truth->
z() -
vertex->z();
1099 for (
const auto& vertex2 : vertexContainer.
stdcont()) {
1101 if(vertex2 ==
vertex)
continue;
1125 if (!truthHSVertices.empty()) {
1126 if (truthHSVtxRecoed) {
1127 float residual_z = truthHSVtx->
z() - bestRecoHSVtx_truth->
z();
1128 float residual_r = std::sqrt(
std::pow(truthHSVtx->
x() - bestRecoHSVtx_truth->
x(), 2) +
std::pow(truthHSVtx->
y() - bestRecoHSVtx_truth->
y(), 2));
1129 float residual_x = truthHSVtx->
x() - bestRecoHSVtx_truth->
x();
1130 float residual_y = truthHSVtx->
y() - bestRecoHSVtx_truth->
y();
1140 const AmgSymMatrix(3)& covariance = bestRecoHSVtx_truth->covariancePosition();
◆ 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.
146 if (eff2d and validArguments(xvalue, yvalue)) {
147 if(
weight==1.) eff2d->Fill(accepted, xvalue, yvalue);
148 else eff2d->FillWeighted(accepted,
weight, xvalue, yvalue);
◆ fillHisto() [2/9]
void InDetPlotBase::fillHisto |
( |
TEfficiency * |
pTeff, |
|
|
const float |
value, |
|
|
const bool |
accepted, |
|
|
float |
weight |
|
) |
| |
|
staticinherited |
◆ fillHisto() [3/9]
void InDetPlotBase::fillHisto |
( |
TH1 * |
pTh1, |
|
|
const float |
value |
|
) |
| |
|
staticinherited |
◆ fillHisto() [4/9]
void InDetPlotBase::fillHisto |
( |
TH1 * |
pTh1, |
|
|
const float |
value, |
|
|
const float |
weight |
|
) |
| |
|
staticinherited |
◆ fillHisto() [5/9]
void InDetPlotBase::fillHisto |
( |
TH2 * |
pTh2, |
|
|
const float |
xval, |
|
|
const float |
yval |
|
) |
| |
|
staticinherited |
◆ fillHisto() [6/9]
void InDetPlotBase::fillHisto |
( |
TH2 * |
pTh2, |
|
|
const float |
xval, |
|
|
const float |
yval, |
|
|
const float |
weight |
|
) |
| |
|
staticinherited |
◆ fillHisto() [7/9]
void InDetPlotBase::fillHisto |
( |
TH3 * |
pTh3, |
|
|
const float |
xval, |
|
|
const float |
yval, |
|
|
const float |
zval |
|
) |
| |
|
staticinherited |
◆ fillHisto() [8/9]
void InDetPlotBase::fillHisto |
( |
TProfile * |
pTprofile, |
|
|
const float |
bin, |
|
|
const float |
weight, |
|
|
const float |
weight2 = 1.0 |
|
) |
| |
|
staticinherited |
◆ fillHisto() [9/9]
◆ fillResoHist()
void InDetPerfPlot_VertexTruthMatching::fillResoHist |
( |
TH1 * |
resoHist, |
|
|
const TH2 * |
resoHist2D |
|
) |
| |
|
staticprivate |
Definition at line 461 of file InDetPerfPlot_VertexTruthMatching.cxx.
463 TH1* projHist =
nullptr;
465 TFitResultPtr fitResult;
468 double itr_rms = -1.;
471 for (
int i = 1;
i < resoHist2D->GetNbinsX() + 1;
i++) {
473 projHist = resoHist2D->ProjectionY(
"projectionY",
i,
i);
475 if (projHist->GetEntries() == 0.) {
476 resoHist->SetBinContent(
i, 0.);
477 resoHist->SetBinError(
i, 0.);
483 fitResult = projHist->Fit(
"gaus",
"QS0");
484 if (!fitResult.Get()) {
487 resoHist->SetBinContent(
i, 0.);
488 resoHist->SetBinError(
i, 0.);
491 mean = fitResult->Parameter(1);
492 rms = fitResult->Parameter(2);
498 fitResult = projHist->Fit(
"gaus",
"QS0");
499 if (!fitResult.Get()) {
504 itr_rms = fitResult->Parameter(2);
505 itr_rms_err = fitResult->ParError(2);
507 if ((fabs(itr_rms -
rms) < 0.0001) || (safety_counter == 5)) {
512 mean = fitResult->Parameter(1);
517 resoHist->SetBinContent(
i, itr_rms);
518 resoHist->SetBinError(
i, itr_rms_err);
◆ finalize()
void PlotBase::finalize |
( |
| ) |
|
|
inherited |
◆ finalizePlots()
void InDetPerfPlot_VertexTruthMatching::finalizePlots |
( |
| ) |
|
|
privatevirtual |
◆ getDirectory()
std::string PlotBase::getDirectory |
( |
| ) |
|
|
inlineinherited |
◆ getHSRecoVertexSumPt2()
Definition at line 392 of file InDetPerfPlot_VertexTruthMatching.cxx.
394 float sumPtMax = -1.;
397 for (
const auto& vtx : recoVertices.
stdcont()) {
400 for (
size_t i = 0;
i < vtx->nTrackParticles();
i++) {
401 trackTmp = vtx->trackParticle(
i);
406 if (sumPtTmp > sumPtMax) {
◆ getLocalPUDensity()
Definition at line 421 of file InDetPerfPlot_VertexTruthMatching.cxx.
422 float radialWindow2 =
std::pow(radialWindow, 2);
423 int nTracksInWindow = 0;
424 float localPUDensity;
426 for (
const auto& vtx : truthHSVertices) {
427 if (vtx != vtxOfInterest) {
429 if (radialDiff2 < radialWindow2) {
430 nTracksInWindow += 1;
434 for (
const auto& vtx : truthPUVertices) {
435 if (vtx != vtxOfInterest) {
437 if (radialDiff2 < radialWindow2) {
438 nTracksInWindow += 1;
442 localPUDensity = (
float)(nTracksInWindow) / (2 * radialWindow);
443 return localPUDensity;
◆ getRadialDiff2()
template<typename U , typename V >
float InDetPerfPlot_VertexTruthMatching::getRadialDiff2 |
( |
const U * |
vtx1, |
|
|
const V * |
vtx2 |
|
) |
| const |
|
private |
◆ getRecoLongitudinalReso()
float InDetPerfPlot_VertexTruthMatching::getRecoLongitudinalReso |
( |
const xAOD::Vertex * |
recoVtx | ) |
|
|
staticprivate |
◆ getRecoTransverseReso()
float InDetPerfPlot_VertexTruthMatching::getRecoTransverseReso |
( |
const xAOD::Vertex * |
recoVtx | ) |
|
|
staticprivate |
Definition at line 450 of file InDetPerfPlot_VertexTruthMatching.cxx.
451 float x = recoVtx->
x();
452 float y = recoVtx->
y();
453 float xErr2 = recoVtx->covariancePosition()(0, 0);
454 float yErr2 = recoVtx->covariancePosition()(1, 1);
455 float xyCov = recoVtx->covariancePosition()(0, 1);
457 return std::sqrt(
std::pow(
x, 2) / r2 * xErr2 +
std::pow(
y, 2) / r2 * yErr2 + 2 *
x *
y / r2 * xyCov);
◆ getTruthVertex()
Definition at line 523 of file InDetPerfPlot_VertexTruthMatching.cxx.
528 if (!truthMatchingInfos.isAvailable(*recoVtx)){
529 ATH_MSG_WARNING(
"TruthEventMatchingInfos DECORATOR not available -- returning nullptr!");
532 const std::vector<InDetVertexTruthMatchUtils::VertexTruthMatchInfo>& truthInfos = truthMatchingInfos(*recoVtx);
533 if (!truthInfos.empty()) {
537 if (truthEventLink.
isValid()) {
542 while(!truthVtx && i_vtx<n_vtx){
550 ATH_MSG_WARNING(
"TruthEventMatchingInfos DECORATOR yields empty vector -- returning nullptr!");
554 ATH_MSG_WARNING(
"TruthEventMatchingInfos DECORATOR yields empty vector -- returning nullptr!");
◆ initialize()
void PlotBase::initialize |
( |
| ) |
|
|
inherited |
◆ initializePlots()
void InDetPerfPlot_VertexTruthMatching::initializePlots |
( |
| ) |
|
|
privatevirtual |
◆ 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.
◆ 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.
82 return book(pHisto, histoIdentifier.substr(2));
◆ 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.
◆ 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
-
lvl | The message level to test against |
- Returns
- boolean Indicating if messages at given level will be printed
- Return values
-
true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
◆ RegisterSubPlot()
void PlotBase::RegisterSubPlot |
( |
PlotBase * |
pPlotBase | ) |
|
|
inlineinherited |
◆ retrieveBookedEfficiencies()
std::vector< EfficiencyData > PlotBase::retrieveBookedEfficiencies |
( |
| ) |
|
|
inherited |
Retrieve all booked efficiency objects.
Definition at line 77 of file PlotBase.cxx.
80 std::vector<EfficiencyData> subNodeHists = subNode->retrieveBookedEfficiencies();
81 vBookedEfficiencies.insert(vBookedEfficiencies.end(), subNodeHists.begin(), subNodeHists.end());
83 return vBookedEfficiencies;
◆ retrieveBookedHistograms()
std::vector< HistData > PlotBase::retrieveBookedHistograms |
( |
| ) |
|
|
inherited |
Retrieve all booked histograms.
Definition at line 57 of file PlotBase.cxx.
60 std::vector<HistData> subNodeHists = subNode->retrieveBookedHistograms();
61 vBookedHistograms.insert(vBookedHistograms.end(), subNodeHists.begin(), subNodeHists.end());
63 return vBookedHistograms;
◆ retrieveBookedTrees()
std::vector< TreeData > PlotBase::retrieveBookedTrees |
( |
| ) |
|
|
inherited |
Retrieve all booked trees.
Definition at line 67 of file PlotBase.cxx.
70 std::vector<TreeData> subNodeTrees = subNode->retrieveBookedTrees();
71 vBookedTrees.insert(vBookedTrees.end(), subNodeTrees.begin(), subNodeTrees.end());
◆ retrieveDefinition()
Retrieve a single histogram definition, given the unique string identifier.
Definition at line 154 of file InDetPlotBase.cxx.
158 ISvcLocator* svcLoc = Gaudi::svcLocator();
160 if (
sc.isFailure()) {
161 ATH_MSG_FATAL(
"failed to retrieve HistogramDefinitionSvc in " << __FILE__);
162 throw std::runtime_error(
"Could initialise the HistogramDefinitionSvc");
166 bool folderDefault = (
folder.empty() or
folder ==
"default");
169 if (folderDefault and
s.empty()) {
170 const std::string otherDefault = (
folder.empty()) ? (
"default") :
"";
174 ATH_MSG_WARNING(
"Histogram definition is empty for identifier " << histoIdentifier);
176 if (!nameOverride.empty()){
177 s.name = nameOverride;
◆ setDetailLevel()
void PlotBase::setDetailLevel |
( |
int |
iDetailLevel | ) |
|
|
inherited |
Definition at line 49 of file PlotBase.cxx.
51 subNode->setDetailLevel(iDetailLevel);
◆ setLevel()
void AthMessaging::setLevel |
( |
MSG::Level |
lvl | ) |
|
|
inherited |
◆ ATLAS_THREAD_SAFE
std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
|
mutableprivateinherited |
◆ m_cutMinTruthRecoRadialDiff
float InDetPerfPlot_VertexTruthMatching::m_cutMinTruthRecoRadialDiff = 0.1 |
|
private |
◆ m_detailLevel
int InDetPerfPlot_VertexTruthMatching::m_detailLevel |
|
private |
◆ m_histoDefSvc
◆ m_iDetailLevel
int PlotBase::m_iDetailLevel |
|
protectedinherited |
◆ m_imsg
std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr } |
|
mutableprivateinherited |
◆ m_lvl
std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL } |
|
mutableprivateinherited |
◆ 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 |
◆ m_sDirectory
std::string PlotBase::m_sDirectory |
|
protectedinherited |
◆ m_vBookedEfficiencies
◆ m_vBookedHistograms
std::vector<HistData> PlotBase::m_vBookedHistograms |
|
protectedinherited |
◆ m_vBookedTrees
std::vector<TreeData> PlotBase::m_vBookedTrees |
|
protectedinherited |
◆ m_vSubNodes
std::vector<PlotBase*> PlotBase::m_vSubNodes |
|
protectedinherited |
◆ m_vx_all_dz
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_dz |
|
private |
◆ m_vx_all_truth_x_pull_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_x_pull_vs_nTrk |
|
private |
◆ m_vx_all_truth_x_pull_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_x_pull_vs_PU |
|
private |
◆ m_vx_all_truth_x_res_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_x_res_vs_nTrk |
|
private |
◆ m_vx_all_truth_x_res_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_x_res_vs_PU |
|
private |
◆ m_vx_all_truth_y_pull_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_y_pull_vs_nTrk |
|
private |
◆ m_vx_all_truth_y_pull_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_y_pull_vs_PU |
|
private |
◆ m_vx_all_truth_y_res_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_y_res_vs_nTrk |
|
private |
◆ m_vx_all_truth_y_res_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_y_res_vs_PU |
|
private |
◆ m_vx_all_truth_z_pull_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_z_pull_vs_nTrk |
|
private |
◆ m_vx_all_truth_z_pull_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_z_pull_vs_PU |
|
private |
◆ m_vx_all_truth_z_res_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_z_res_vs_nTrk |
|
private |
◆ m_vx_all_truth_z_res_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_all_truth_z_res_vs_PU |
|
private |
◆ m_vx_all_x_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_x_pull |
|
private |
◆ m_vx_all_x_res
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_x_res |
|
private |
◆ m_vx_all_y_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_y_pull |
|
private |
◆ m_vx_all_y_res
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_y_res |
|
private |
◆ m_vx_all_z_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_z_pull |
|
private |
◆ m_vx_all_z_res
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_all_z_res |
|
private |
◆ m_vx_chi2Over_ndf_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_ALL_matched |
|
private |
◆ m_vx_chi2Over_ndf_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_ALL_merged |
|
private |
◆ m_vx_chi2Over_ndf_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_ALL_split |
|
private |
◆ m_vx_chi2Over_ndf_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_HS_matched |
|
private |
◆ m_vx_chi2Over_ndf_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_HS_merged |
|
private |
◆ m_vx_chi2Over_ndf_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_HS_split |
|
private |
◆ m_vx_chi2Over_ndf_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_matched |
|
private |
◆ m_vx_chi2Over_ndf_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_merged |
|
private |
◆ m_vx_chi2Over_ndf_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_chi2Over_ndf_split |
|
private |
◆ m_vx_hs_classification
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_classification {} |
|
private |
◆ m_vx_hs_mindz
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_mindz |
|
private |
◆ m_vx_hs_reco_eff
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_reco_eff |
|
private |
◆ m_vx_hs_reco_eff_vs_ntruth
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_reco_eff_vs_ntruth |
|
private |
◆ m_vx_hs_reco_long_reso
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_hs_reco_long_reso |
|
private |
◆ m_vx_hs_reco_sel_eff
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_reco_sel_eff |
|
private |
◆ m_vx_hs_reco_sel_eff_vs_ntruth
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_reco_sel_eff_vs_ntruth |
|
private |
◆ m_vx_hs_reco_trans_reso
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_hs_reco_trans_reso |
|
private |
◆ m_vx_hs_sel_eff
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff |
|
private |
◆ m_vx_hs_sel_eff_dist
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff_dist |
|
private |
◆ m_vx_hs_sel_eff_vs_ntruth
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff_vs_ntruth |
|
private |
◆ m_vx_hs_truth_long_reso
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_long_reso |
|
private |
◆ m_vx_hs_truth_long_reso_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_long_reso_vs_PU |
|
private |
◆ m_vx_hs_truth_trans_reso
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_trans_reso |
|
private |
◆ m_vx_hs_truth_trans_reso_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_trans_reso_vs_PU |
|
private |
◆ m_vx_hs_truth_x_pull_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_x_pull_vs_nTrk |
|
private |
◆ m_vx_hs_truth_x_pull_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_x_pull_vs_PU |
|
private |
◆ m_vx_hs_truth_x_res_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_x_res_vs_nTrk |
|
private |
◆ m_vx_hs_truth_x_res_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_x_res_vs_PU |
|
private |
◆ m_vx_hs_truth_y_pull_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_y_pull_vs_nTrk |
|
private |
◆ m_vx_hs_truth_y_pull_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_y_pull_vs_PU |
|
private |
◆ m_vx_hs_truth_y_res_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_y_res_vs_nTrk |
|
private |
◆ m_vx_hs_truth_y_res_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_y_res_vs_PU |
|
private |
◆ m_vx_hs_truth_z_pull_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_z_pull_vs_nTrk |
|
private |
◆ m_vx_hs_truth_z_pull_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_z_pull_vs_PU |
|
private |
◆ m_vx_hs_truth_z_res_vs_nTrk
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_z_res_vs_nTrk |
|
private |
◆ m_vx_hs_truth_z_res_vs_PU
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_hs_truth_z_res_vs_PU |
|
private |
◆ m_vx_hs_x_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_x_pull |
|
private |
◆ m_vx_hs_x_res
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_x_res |
|
private |
◆ m_vx_hs_y_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_y_pull |
|
private |
◆ m_vx_hs_y_res
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_y_res |
|
private |
◆ m_vx_hs_z_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_z_pull |
|
private |
◆ m_vx_hs_z_res
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_hs_z_res |
|
private |
◆ m_vx_normalised_track_weight_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_ALL_matched |
|
private |
◆ m_vx_normalised_track_weight_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_ALL_merged |
|
private |
◆ m_vx_normalised_track_weight_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_ALL_split |
|
private |
◆ m_vx_normalised_track_weight_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_HS_matched |
|
private |
◆ m_vx_normalised_track_weight_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_HS_merged |
|
private |
◆ m_vx_normalised_track_weight_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_HS_split |
|
private |
◆ m_vx_normalised_track_weight_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_matched |
|
private |
◆ m_vx_normalised_track_weight_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_merged |
|
private |
◆ m_vx_normalised_track_weight_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_normalised_track_weight_split |
|
private |
◆ m_vx_nReco_vs_nTruth_clean
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_clean |
|
private |
◆ m_vx_nReco_vs_nTruth_dummy
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_dummy |
|
private |
◆ m_vx_nReco_vs_nTruth_fake
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_fake |
|
private |
◆ m_vx_nReco_vs_nTruth_highpu
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_highpu |
|
private |
◆ m_vx_nReco_vs_nTruth_hssplit
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_hssplit |
|
private |
◆ m_vx_nReco_vs_nTruth_inclusive
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_inclusive |
|
private |
◆ m_vx_nReco_vs_nTruth_lowpu
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_lowpu |
|
private |
◆ m_vx_nReco_vs_nTruth_matched
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_matched |
|
private |
◆ m_vx_nReco_vs_nTruth_merged
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_merged |
|
private |
◆ m_vx_nReco_vs_nTruth_none
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_none |
|
private |
◆ m_vx_nReco_vs_nTruth_split
TProfile* InDetPerfPlot_VertexTruthMatching::m_vx_nReco_vs_nTruth_split |
|
private |
◆ m_vx_ntracks_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_ALL_matched |
|
private |
◆ m_vx_ntracks_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_ALL_merged |
|
private |
◆ m_vx_ntracks_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_ALL_split |
|
private |
◆ m_vx_ntracks_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_HS_matched |
|
private |
◆ m_vx_ntracks_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_HS_merged |
|
private |
◆ m_vx_ntracks_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_HS_split |
|
private |
◆ m_vx_ntracks_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_matched |
|
private |
◆ m_vx_ntracks_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_merged |
|
private |
◆ m_vx_ntracks_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_ntracks_split |
|
private |
◆ m_vx_nTruth
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nTruth |
|
private |
◆ m_vx_nVertices_ALL_fake
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_ALL_fake |
|
private |
◆ m_vx_nVertices_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_ALL_matched |
|
private |
◆ m_vx_nVertices_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_ALL_merged |
|
private |
◆ m_vx_nVertices_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_ALL_split |
|
private |
◆ m_vx_nVertices_fake
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_fake |
|
private |
◆ m_vx_nVertices_HS_fake
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_HS_fake |
|
private |
◆ m_vx_nVertices_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_HS_matched |
|
private |
◆ m_vx_nVertices_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_HS_merged |
|
private |
◆ m_vx_nVertices_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_HS_split |
|
private |
◆ m_vx_nVertices_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_matched |
|
private |
◆ m_vx_nVertices_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_merged |
|
private |
◆ m_vx_nVertices_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_nVertices_split |
|
private |
◆ m_vx_PUdensity
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_PUdensity |
|
private |
◆ m_vx_sumpT_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_ALL_matched |
|
private |
◆ m_vx_sumpT_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_ALL_merged |
|
private |
◆ m_vx_sumpT_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_ALL_split |
|
private |
◆ m_vx_sumpT_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_HS_matched |
|
private |
◆ m_vx_sumpT_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_HS_merged |
|
private |
◆ m_vx_sumpT_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_HS_split |
|
private |
◆ m_vx_sumpT_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_matched |
|
private |
◆ m_vx_sumpT_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_merged |
|
private |
◆ m_vx_sumpT_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_sumpT_split |
|
private |
◆ m_vx_time_diff
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_time_diff {} |
|
private |
◆ m_vx_time_diff_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_time_diff_pull {} |
|
private |
◆ m_vx_track_weight_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_ALL_matched |
|
private |
◆ m_vx_track_weight_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_ALL_merged |
|
private |
◆ m_vx_track_weight_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_ALL_split |
|
private |
◆ m_vx_track_weight_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_HS_matched |
|
private |
◆ m_vx_track_weight_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_HS_merged |
|
private |
◆ m_vx_track_weight_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_HS_split |
|
private |
◆ m_vx_track_weight_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_matched |
|
private |
◆ m_vx_track_weight_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_merged |
|
private |
◆ m_vx_track_weight_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_track_weight_split |
|
private |
◆ m_vx_type_truth
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_type_truth {} |
|
private |
◆ m_vx_z0_kurtosis_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_ALL_matched |
|
private |
◆ m_vx_z0_kurtosis_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_ALL_merged |
|
private |
◆ m_vx_z0_kurtosis_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_ALL_split |
|
private |
◆ m_vx_z0_kurtosis_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_HS_matched |
|
private |
◆ m_vx_z0_kurtosis_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_HS_merged |
|
private |
◆ m_vx_z0_kurtosis_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_HS_split |
|
private |
◆ m_vx_z0_kurtosis_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_matched |
|
private |
◆ m_vx_z0_kurtosis_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_merged |
|
private |
◆ m_vx_z0_kurtosis_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_kurtosis_split |
|
private |
◆ m_vx_z0_skewness_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_ALL_matched |
|
private |
◆ m_vx_z0_skewness_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_ALL_merged |
|
private |
◆ m_vx_z0_skewness_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_ALL_split |
|
private |
◆ m_vx_z0_skewness_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_HS_matched |
|
private |
◆ m_vx_z0_skewness_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_HS_merged |
|
private |
◆ m_vx_z0_skewness_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_HS_split |
|
private |
◆ m_vx_z0_skewness_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_matched |
|
private |
◆ m_vx_z0_skewness_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_merged |
|
private |
◆ m_vx_z0_skewness_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z0_skewness_split |
|
private |
◆ m_vx_z_asym_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_ALL_matched |
|
private |
◆ m_vx_z_asym_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_ALL_merged |
|
private |
◆ m_vx_z_asym_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_ALL_split |
|
private |
◆ m_vx_z_asym_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_HS_matched |
|
private |
◆ m_vx_z_asym_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_HS_merged |
|
private |
◆ m_vx_z_asym_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_HS_split |
|
private |
◆ m_vx_z_asym_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_matched |
|
private |
◆ m_vx_z_asym_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_merged |
|
private |
◆ m_vx_z_asym_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_split |
|
private |
◆ m_vx_z_asym_weighted_ALL_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_ALL_matched |
|
private |
◆ m_vx_z_asym_weighted_ALL_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_ALL_merged |
|
private |
◆ m_vx_z_asym_weighted_ALL_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_ALL_split |
|
private |
◆ m_vx_z_asym_weighted_HS_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_HS_matched |
|
private |
◆ m_vx_z_asym_weighted_HS_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_HS_merged |
|
private |
◆ m_vx_z_asym_weighted_HS_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_HS_split |
|
private |
◆ m_vx_z_asym_weighted_matched
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_matched |
|
private |
◆ m_vx_z_asym_weighted_merged
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_merged |
|
private |
◆ m_vx_z_asym_weighted_split
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_asym_weighted_split |
|
private |
◆ m_vx_z_diff
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_diff {} |
|
private |
◆ m_vx_z_diff_pull
TH1* InDetPerfPlot_VertexTruthMatching::m_vx_z_diff_pull {} |
|
private |
The documentation for this class was generated from the following files:
TH1 * m_vx_chi2Over_ndf_merged
TH1 * m_vx_z0_kurtosis_matched
std::atomic< MSG::Level > m_lvl
Current logging level.
TH1 * m_vx_chi2Over_ndf_HS_split
static std::string constructPrefix(std::string dir, bool prependDir)
virtual double pt() const override final
The transverse momentum ( ) of the particle.
TH1 * m_vx_track_weight_ALL_matched
std::string replace(std::string s, const std::string &s2, const std::string &s3)
TH1 * m_vx_z0_skewness_HS_split
TH1 * m_vx_z0_kurtosis_split
TH1 * m_vx_z0_kurtosis_HS_merged
float x() const
Returns the x position.
TH1 * m_vx_track_weight_HS_split
TH1 * m_vx_z_asym_weighted_HS_merged
TH1 * m_vx_z0_kurtosis_HS_split
TH1 * m_vx_hs_classification
hardscatter classification
std::vector< HistData > m_vBookedHistograms
TH2 * m_vx_hs_truth_z_res_vs_nTrk
TH1F * Book1D(const std::string &name, const std::string &labels, int nBins, float start, float end, bool prependDir=true)
Book a TH1D histogram.
TH1 * m_vx_z0_skewness_HS_matched
TH2 * m_vx_all_truth_y_res_vs_nTrk
void mean(std::vector< double > &bins, std::vector< double > &values, const std::vector< std::string > &files, const std::string &histname, const std::string &tplotname, const std::string &label="")
TH1 * m_vx_z_asym_HS_merged
TProfile * m_vx_nReco_vs_nTruth_matched
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
TH1 * m_vx_z0_kurtosis_ALL_merged
TH1 * m_vx_z0_skewness_matched
TH2 * m_vx_all_truth_z_res_vs_PU
TH2 * m_vx_hs_truth_x_res_vs_nTrk
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.
TH2 * m_vx_hs_truth_y_pull_vs_nTrk
float getRadialDiff2(const U *vtx1, const V *vtx2) const
float getLocalPUDensity(const xAOD::TruthVertex *vtxOfInterest, const std::vector< const xAOD::TruthVertex * > &truthHSVertices, const std::vector< const xAOD::TruthVertex * > &truthPUVertices, const float radialWindow=2.0) const
const xAOD::Vertex * bestHardScatterMatch(const xAOD::VertexContainer &vxContainer)
Helper class to provide type-safe access to aux data.
float m_cutMinTruthRecoRadialDiff
TH1 * m_vx_nVertices_ALL_matched
TProfile * m_vx_nReco_vs_nTruth_highpu
TH1 * m_vx_z_asym_ALL_matched
TH1 * m_vx_ntracks_ALL_matched
TH1 * m_vx_track_weight_matched
TH1 * m_vx_normalised_track_weight_HS_matched
TProfile * m_vx_nReco_vs_nTruth_clean
TH1 * m_vx_z_asym_weighted_split
virtual void initializePlots()
std::vector< EfficiencyData > m_vBookedEfficiencies
TH1 * m_vx_normalised_track_weight_merged
TH1 * m_vx_z_asym_weighted_ALL_split
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.
HardScatterType classifyHardScatter(const xAOD::VertexContainer &vxContainer)
TH1 * m_vx_time_diff
vertex time
TH2 * m_vx_hs_truth_x_pull_vs_PU
TH2 * m_vx_all_truth_z_pull_vs_PU
TH2 * m_vx_hs_truth_z_pull_vs_nTrk
float z0() const
Returns the parameter.
TEfficiency * m_vx_hs_reco_eff
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.
TH1 * m_vx_nVertices_HS_matched
TH2 * m_vx_hs_truth_x_res_vs_PU
TH2 * m_vx_all_truth_y_pull_vs_nTrk
TH1 * m_vx_sumpT_HS_split
TH2 * m_vx_hs_truth_long_reso_vs_PU
TH1 * m_vx_ntracks_ALL_merged
TH1 * m_vx_normalised_track_weight_ALL_matched
TProfile * m_vx_hs_reco_trans_reso
TEfficiency * m_vx_hs_reco_eff_vs_ntruth
TH1 * m_vx_chi2Over_ndf_split
TH1 * m_vx_hs_truth_long_reso
TEfficiency * m_vx_hs_sel_eff_vs_ntruth
TH1 * m_vx_z_asym_weighted_merged
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
@ NoVtx
Dummy vertex. TrackParticle was not used in vertex fit.
bool isValid() const
Test to see if the link can be dereferenced.
#define AmgSymMatrix(dim)
TH1 * m_vx_chi2Over_ndf_HS_matched
IMessageSvc * getMessageSvc(bool quiet=false)
float y() const
Vertex y displacement.
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.
TH2 * m_vx_hs_truth_x_pull_vs_nTrk
float t() const
Vertex time.
TH2 * m_vx_all_truth_x_pull_vs_nTrk
TH2 * m_vx_hs_truth_y_res_vs_PU
TH1 * m_vx_track_weight_ALL_merged
TH1 * m_vx_z0_skewness_HS_merged
TH1 * m_vx_z0_skewness_split
TH1 * m_vx_z0_skewness_merged
TH1 * m_vx_nVertices_HS_fake
TH1 * m_vx_z0_skewness_ALL_matched
TH1 * m_vx_normalised_track_weight_matched
TProfile * m_vx_nReco_vs_nTruth_dummy
TH1 * m_vx_z_asym_ALL_merged
IHistogramDefinitionSvc::axesLimits_t xAxis
TH1 * m_vx_z0_kurtosis_HS_matched
TH1 * m_vx_type_truth
truth type
std::vector< PlotBase * > m_vSubNodes
TH2 * m_vx_hs_truth_trans_reso_vs_PU
TProfile * m_vx_nReco_vs_nTruth_lowpu
TH1 * m_vx_nVertices_ALL_split
TH1 * m_vx_z_asym_weighted_ALL_matched
Exception — Attempt to retrieve nonexistent aux data item.
int Fill(double, double, double)
Helper class to provide type-safe access to aux data.
TH1 * m_vx_z0_kurtosis_ALL_split
TH1 * m_vx_nVertices_HS_merged
TH1 * m_vx_normalised_track_weight_HS_merged
def TProfile(*args, **kwargs)
TH1 * m_vx_chi2Over_ndf_matched
TH2 * m_vx_all_truth_y_res_vs_PU
::StatusCode StatusCode
StatusCode definition for legacy code.
TH1 * m_vx_track_weight_HS_merged
TProfile * m_vx_nReco_vs_nTruth_inclusive
vertex reco efficiency
TH1 * m_vx_chi2Over_ndf_ALL_matched
TH1 * m_vx_nVertices_matched
TH1 * m_vx_normalised_track_weight_HS_split
TH1 * m_vx_chi2Over_ndf_HS_merged
TH1 * m_vx_nVertices_split
TH1 * m_vx_z_asym_weighted_ALL_merged
Class describing a signal truth event in the MC record.
int Fill(double, double, double)
TH1 * m_vx_track_weight_HS_matched
std::tuple< ElementLink< xAOD::TruthEventBaseContainer >, float, float > VertexTruthMatchInfo
TH1 * m_vx_nVertices_ALL_fake
void fill(const xAOD::Vertex &vertex, const xAOD::TruthVertex *tvrt=0, float weight=1.0)
TH2 * m_vx_all_truth_x_res_vs_nTrk
TH1 * m_vx_track_weight_split
virtual SingleHistogramDefinition definition(const std::string &name, const std::string &dirName="") const =0
Return a histogram definition, retrieved by histogram identifier (and directory name,...
float z() const
Returns the z position.
TH1 * m_vx_z_asym_weighted_HS_matched
TProfile * m_vx_hs_reco_long_reso
TH1 * m_vx_z_asym_ALL_split
TH2 * m_vx_hs_truth_z_res_vs_PU
MsgStream & msg() const
The standard message stream.
TH2 * m_vx_all_truth_z_res_vs_nTrk
IHistogramDefinitionSvc * m_histoDefSvc
TH1 * m_vx_chi2Over_ndf_ALL_split
TH1 * m_vx_ntracks_ALL_split
TH2 * m_vx_all_truth_x_pull_vs_PU
TH2 * m_vx_all_truth_x_res_vs_PU
Almost-a-struct for holding the single histogram definition.
bool trackPt(const xAOD::TauJet &, const xAOD::TauTrack &track, double &out)
ElementLink implementation for ROOT usage.
TH1 * m_vx_normalised_track_weight_split
Class describing a truth vertex in the MC record.
TH1 * m_vx_chi2Over_ndf_ALL_merged
TProfile * m_vx_nReco_vs_nTruth_merged
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 ...
TEfficiency * m_vx_hs_reco_sel_eff
TH1 * m_vx_sumpT_ALL_split
TH1 * m_vx_z0_skewness_ALL_merged
TH2 * m_vx_hs_truth_z_pull_vs_PU
InDetPlotBase(InDetPlotBase *pParent, const std::string &dirName)
Constructor taking parent node and directory name for plots.
TH1 * m_vx_hs_truth_trans_reso
TEfficiency * m_vx_hs_sel_eff
TH2 * m_vx_hs_truth_y_res_vs_nTrk
float x() const
Vertex x displacement.
TH1 * m_vx_ntracks_HS_split
TH1 * m_vx_sumpT_HS_merged
TProfile * m_vx_nReco_vs_nTruth_hssplit
const PtrVector & stdcont() const
Return the underlying std::vector of the container.
size_t nTruthVertices() const
Get the number of truth vertices.
TH1 * m_vx_nVertices_ALL_merged
TH1 * m_vx_ntracks_matched
TH1 * m_vx_ntracks_merged
TH1 * m_vx_normalised_track_weight_ALL_merged
TProfile * m_vx_nReco_vs_nTruth_split
Class describing a Vertex.
TH1 * m_vx_z_asym_weighted_HS_split
#define ATH_MSG_WARNING(x)
TProfile * m_vx_nReco_vs_nTruth_none
TH1 * m_vx_z0_kurtosis_ALL_matched
float z() const
Vertex longitudinal distance along the beam line form the origin.
std::string m_nm
Message source name.
float y() const
Returns the y position.
TProfile * m_vx_nReco_vs_nTruth_fake
TH1 * m_vx_z_asym_HS_matched
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.
TH2 * m_vx_all_truth_z_pull_vs_nTrk
IHistogramDefinitionSvc::axesLimits_t yAxis
bool isValid() const
Is the histogram definition valid.
TH1 * m_vx_nVertices_fake
TH1 * m_vx_ntracks_HS_merged
TH1 * m_vx_track_weight_merged
TH1 * m_vx_nVertices_merged
TH1 * m_vx_nVertices_HS_split
TEfficiency * m_vx_hs_reco_sel_eff_vs_ntruth
TH1 * m_vx_z_asym_HS_split
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
TEfficiency * m_vx_hs_sel_eff_dist
Class describing a TrackParticle.
TH1 * m_vx_track_weight_ALL_split
TH2 * m_vx_hs_truth_y_pull_vs_PU
void initMessaging() const
Initialize our message level and MessageSvc.
TH2 * m_vx_all_truth_y_pull_vs_PU
static float getRecoLongitudinalReso(const xAOD::Vertex *recoVtx)
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
static void fillHisto(TProfile *pTprofile, const float bin, const float weight, const float weight2=1.0)
TH1 * m_vx_sumpT_ALL_merged
TH1 * m_vx_sumpT_ALL_matched
static float getRecoTransverseReso(const xAOD::Vertex *recoVtx)
TH1 * m_vx_z0_kurtosis_merged
TH1 * m_vx_z0_skewness_ALL_split
size_type size() const noexcept
Returns the number of elements in the collection.
virtual void finalizePlots()
const TruthVertex * truthVertex(size_t index) const
Get a pointer to one of the truth vertices.
std::vector< TreeData > m_vBookedTrees
TH1 * m_vx_normalised_track_weight_ALL_split
TH1 * m_vx_time_diff_pull
TH1 * m_vx_z_asym_matched
TH1 * m_vx_z_asym_weighted_matched
static void fillResoHist(TH1 *resoHist, const TH2 *resoHist2D)
TH1 * m_vx_ntracks_HS_matched
const xAOD::TruthVertex * getTruthVertex(const xAOD::Vertex *recoVtx) const
TH1 * m_vx_sumpT_HS_matched