|
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 actualMu, 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...
|
|
const 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]
TH1D * 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 94 of file PlotBase.cxx.
97 Bool_t oldstat = TH1::AddDirectoryStatus();
98 TH1::AddDirectory(
false);
100 TH1::AddDirectory(oldstat);
◆ Book1D() [2/2]
TH1D * 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 108 of file PlotBase.cxx.
110 Bool_t oldstat = TH1::AddDirectoryStatus();
111 TH1::AddDirectory(
false);
113 refHist->GetXaxis()->GetXbins()->GetArray());
115 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 TH2F histogram with variable x axis binning.
Definition at line 144 of file PlotBase.cxx.
147 Bool_t oldstat = TH2::AddDirectoryStatus();
148 TH2::AddDirectory(
false);
151 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 TH2F histogram.
Definition at line 123 of file PlotBase.cxx.
126 Bool_t oldstat = TH2::AddDirectoryStatus();
127 TH2::AddDirectory(
false);
130 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 138 of file PlotBase.cxx.
139 return Book2D(
name,
labels, refHist->GetNbinsX(), refHist->GetXaxis()->GetXmin(), refHist->GetXaxis()->GetXmax(),
140 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 TH3F histogram.
Definition at line 157 of file PlotBase.cxx.
160 Bool_t oldstat = TH3::AddDirectoryStatus();
161 TH3::AddDirectory(
false);
163 labels.c_str(), nBinsX, startX, endX, nBinsY, startY, endY, nBinsZ, startZ, endZ);
165 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 TH3F histogram using refHist as reference for number of bins and axis range.
Definition at line 171 of file PlotBase.cxx.
173 Bool_t oldstat = TH3::AddDirectoryStatus();
174 TH3::AddDirectory(
false);
176 refHist->GetXaxis()->GetXbins()->GetArray(), refHist->GetNbinsY(),
177 refHist->GetYaxis()->GetXbins()->GetArray(), refHist->GetNbinsZ(),
178 refHist->GetZaxis()->GetXbins()->GetArray());
179 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 257 of file PlotBase.cxx.
263 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 270 of file PlotBase.cxx.
274 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 204 of file PlotBase.cxx.
207 Bool_t oldstat = TProfile::AddDirectoryStatus();
208 TProfile::AddDirectory(
false);
211 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 186 of file PlotBase.cxx.
190 Bool_t oldstat = TProfile::AddDirectoryStatus();
191 TProfile::AddDirectory(
false);
192 std::string
opt = useRMS ?
"S" :
"";
193 if ((startY == -1) and (endY == -1)) {
198 TProfile::AddDirectory(oldstat);
◆ 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 231 of file PlotBase.cxx.
235 Bool_t oldstat = TProfile2D::AddDirectoryStatus();
236 TProfile2D::AddDirectory(
false);
237 std::string
opt = useRMS ?
"S" :
"";
239 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 245 of file PlotBase.cxx.
247 Bool_t oldstat = TProfile2D::AddDirectoryStatus();
248 TProfile2D::AddDirectory(
false);
249 std::string
opt = useRMS ?
"S" :
"";
251 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 217 of file PlotBase.cxx.
221 Bool_t oldstat = TProfile::AddDirectoryStatus();
222 TProfile::AddDirectory(
false);
225 TProfile::AddDirectory(oldstat);
◆ BookTree()
TTree * PlotBase::BookTree |
( |
const std::string & |
name, |
|
|
bool |
prependDir = true |
|
) |
| |
|
inherited |
Book a TTree.
Definition at line 281 of file PlotBase.cxx.
285 tree->SetAutoSave(0);
286 tree->SetAutoFlush(0);
287 tree->SetDirectory(
nullptr);
◆ constructPrefix()
std::string PlotBase::constructPrefix |
( |
std::string |
dir, |
|
|
bool |
prependDir |
|
) |
| |
|
staticprivateinherited |
◆ fill() [1/2]
Definition at line 579 of file InDetPerfPlot_VertexTruthMatching.cxx.
582 float diff_z=
vertex.z()-tvrt->
z();
591 if (accHasValidTime.isAvailable(
vertex) && accTime.isAvailable(
vertex) &&
592 accTimeResolution.isAvailable(
vertex)) {
594 if (
vertex.hasValidTime()) {
596 float err_time =
vertex.timeResolution();
606 if (recoVtxMatchTypeInfo.isAvailable(
vertex)) {
608 matchType = recoVtxMatchTypeInfo(
vertex);
609 ATH_MSG_DEBUG(
"VERTEX DECORATOR ======= " << matchType <<
", with nTRACKS === " <<
vertex.nTrackParticles() <<
", vertex index = " <<
vertex.index() <<
" AT (x, y, z) = (" <<
vertex.x() <<
", " <<
vertex.y() <<
", " <<
vertex.z() <<
")");
613 ATH_MSG_WARNING(
"VertexMatchType DECORATOR seems to be available, but may be broken ===========");
617 ATH_MSG_WARNING(
"VertexMatchType DECORATOR is NOT available ===========");
◆ fill() [2/2]
Definition at line 622 of file InDetPerfPlot_VertexTruthMatching.cxx.
627 int nTruthVertices = (
int)(truthHSVertices.size() + truthPUVertices.size());
628 int nRecoVertices = (
int)vertexContainer.
size()-1;
634 std::map<InDetVertexTruthMatchUtils::VertexMatchType, int> breakdown = {};
641 if (!recoHardScatter){
642 ATH_MSG_INFO(
"No recoHardScatter vertex - not filling vertex truth matching.");
651 if (!truthHSVertices.empty()) {
652 if (truthHSVertices.size() != 1) {
653 ATH_MSG_WARNING(
"Size of truth HS vertex vector is >1 -- only using the first one in the vector.");
655 truthHSVtx = truthHSVertices.at(0);
660 ATH_MSG_WARNING(
"Size of truth HS vertex vector is 0 -- assuming truth HS vertex to NOT be reconstructed.");
664 float localPUDensity =
getLocalPUDensity(truthHSVtx, truthHSVertices, truthPUVertices);
670 if (!bestRecoHSVtx_truth){
671 ATH_MSG_INFO(
"No bestRecoHS vertex - not filling vertex truth matching.");
681 bool truthHSVtxRecoed =
false;
683 float truthRecoRadialDiff2 = -1.;
687 truthRecoRadialDiff2 =
getRadialDiff2(bestRecoHSVtx_truth, truthHSVtx);
688 if (truthRecoRadialDiff2 < minTruthRecoRadialDiff2) {
689 truthHSVtxRecoed =
true;
690 minTruthRecoRadialDiff2 = truthRecoRadialDiff2;
695 float number_matched = 0;
696 float number_merged = 0;
697 float number_split = 0;
698 float number_fake = 0;
699 float number_matched_HS = 0;
700 float number_merged_HS = 0;
701 float number_split_HS = 0;
702 float number_fake_HS = 0;
703 float number_matched_PU = 0;
704 float number_merged_PU = 0;
705 float number_split_PU = 0;
706 float number_fake_PU = 0;
709 float vx_hs_mindz=9999.;
710 float min_fabs_dz = 9999.;
723 matchType = recoVtxMatchTypeInfo(*
vertex);
724 breakdown[matchType] += 1;
728 if(!matchVertex)
continue;
729 float residual_z = matchVertex->
z() -
vertex->z();
730 float residual_x = matchVertex->
x() -
vertex->x();
731 float residual_y = matchVertex->
y() -
vertex->y();
736 localPUDensity =
getLocalPUDensity(matchVertex, truthHSVertices, truthPUVertices);
772 float minpt = 20000 ;
780 float weighted_sumDZ = 0;
781 float weighted_deltaZ = 0;
782 float weighted_modsumDZ = 0;
783 float weighted_z_asym =0;
786 std::vector<float> track_deltaZ;
787 std::vector<float> track_deltaPt;
788 std::vector<float> track_deltaZ_weighted;
790 for (
size_t i = 0;
i <
vertex->nTrackParticles();
i++) {
791 trackTmp =
vertex->trackParticle(
i);
798 track_deltaZ.push_back(
deltaZ);
800 float trk_weight =
vertex->trackWeight(
i);
801 weighted_deltaZ =
deltaZ*trk_weight;
804 modsumDZ = modsumDZ + std::abs(
deltaZ);
805 weighted_sumDZ = weighted_sumDZ + weighted_deltaZ;
806 weighted_modsumDZ = weighted_modsumDZ + std::abs(weighted_deltaZ);
811 z_asym = sumDZ/modsumDZ;
813 if (weighted_modsumDZ >0) {
814 weighted_z_asym = weighted_sumDZ/weighted_modsumDZ;
820 mean_Dz=sumDZ/track_deltaZ.size();
821 double number_tracks =0;
822 number_tracks = track_deltaZ.size();
830 for (
auto i : track_deltaZ) {
832 z_zbar = (
i - mean_Dz);
833 z_var =(z_var + z_zbar*z_zbar);
834 z_skew =(z_skew + z_zbar*z_zbar*z_zbar);
835 z_kurt =(z_kurt + z_zbar*z_zbar*z_zbar*z_zbar);
838 z_var = z_var/(number_tracks -1);
839 z_sd = std::sqrt(z_var);
840 z_skew = z_skew/((number_tracks -1)*z_sd*z_sd*z_sd);
841 z_kurt = z_kurt/((number_tracks -1)*z_sd*z_sd*z_sd*z_sd);
847 if (
vertex == bestRecoHSVtx_truth) {
858 for (
const float& trkWeight :
vertex->trackWeights()) {
875 for (
const float& trkWeight :
vertex->trackWeights()) {
889 for (
const float& trkWeight :
vertex->trackWeights()) {
898 if (
vertex == bestRecoHSVtx_truth) {
907 for (
const float& trkWeight :
vertex->trackWeights()) {
923 for (
const float& trkWeight :
vertex->trackWeights()) {
937 for (
const float& trkWeight :
vertex->trackWeights()) {
946 if (
vertex == bestRecoHSVtx_truth) {
954 for (
const float& trkWeight :
vertex->trackWeights()) {
969 for (
const float& trkWeight :
vertex->trackWeights()) {
985 for (
const float& trkWeight :
vertex->trackWeights()) {
997 if (
vertex == bestRecoHSVtx_truth) {
1001 number_matched_PU++;
1003 if (sumPt > minpt) {
1009 if (
vertex == bestRecoHSVtx_truth) {
1015 if (sumPt > minpt) {
1021 if (
vertex == bestRecoHSVtx_truth) {
1027 if (sumPt > minpt) {
1033 if (
vertex == bestRecoHSVtx_truth) {
1039 if (sumPt > minpt) {
1049 if (
vertex == bestRecoHSVtx_truth) {
1084 if (sumPt > minpt) {
1104 float absd_hs_dz = std::abs(bestRecoHSVtx_truth->
z() -
vertex->z());
1105 if(bestRecoHSVtx_truth !=
vertex && absd_hs_dz < min_fabs_dz) {
1106 min_fabs_dz = absd_hs_dz;
1107 vx_hs_mindz = bestRecoHSVtx_truth->
z() -
vertex->z();
1110 for (
const auto& vertex2 : vertexContainer.
stdcont()) {
1112 if(vertex2 ==
vertex)
continue;
1136 if (!truthHSVertices.empty()) {
1137 if (truthHSVtxRecoed) {
1138 float residual_z = truthHSVtx->
z() - bestRecoHSVtx_truth->
z();
1139 float residual_r = std::sqrt(
std::pow(truthHSVtx->
x() - bestRecoHSVtx_truth->
x(), 2) +
std::pow(truthHSVtx->
y() - bestRecoHSVtx_truth->
y(), 2));
1140 float residual_x = truthHSVtx->
x() - bestRecoHSVtx_truth->
x();
1141 float residual_y = truthHSVtx->
y() - bestRecoHSVtx_truth->
y();
1152 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 142 of file InDetPlotBase.cxx.
143 if (eff2d and validArguments(xvalue, yvalue)) {
144 if(
weight==1.) eff2d->Fill(accepted, xvalue, yvalue);
145 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]
void InDetPlotBase::fillHisto |
( |
TProfile2D * |
pTprofile, |
|
|
const float |
xval, |
|
|
const float |
yval, |
|
|
const float |
weight, |
|
|
const float |
weight2 = 1.0 |
|
) |
| |
|
staticinherited |
◆ fillResoHist()
void InDetPerfPlot_VertexTruthMatching::fillResoHist |
( |
TH1 * |
resoHist, |
|
|
const TH2 * |
resoHist2D |
|
) |
| |
|
staticprivate |
Definition at line 480 of file InDetPerfPlot_VertexTruthMatching.cxx.
482 TH1* projHist =
nullptr;
484 TFitResultPtr fitResult;
487 double itr_rms = -1.;
490 for (
int i = 1;
i < resoHist2D->GetNbinsX() + 1;
i++) {
492 projHist = resoHist2D->ProjectionY(
"projectionY",
i,
i);
494 if (projHist->GetEntries() == 0.) {
495 resoHist->SetBinContent(
i, 0.);
496 resoHist->SetBinError(
i, 0.);
502 fitResult = projHist->Fit(
"gaus",
"QS0");
503 if (!fitResult.Get()) {
506 resoHist->SetBinContent(
i, 0.);
507 resoHist->SetBinError(
i, 0.);
510 mean = fitResult->Parameter(1);
511 rms = fitResult->Parameter(2);
517 fitResult = projHist->Fit(
"gaus",
"QS0");
518 if (!fitResult.Get()) {
523 itr_rms = fitResult->Parameter(2);
524 itr_rms_err = fitResult->ParError(2);
526 if ((fabs(itr_rms -
rms) < 0.0001) || (safety_counter == 5)) {
531 mean = fitResult->Parameter(1);
536 resoHist->SetBinContent(
i, itr_rms);
537 resoHist->SetBinError(
i, itr_rms_err);
◆ finalize()
void PlotBase::finalize |
( |
| ) |
|
|
inherited |
◆ finalizePlots()
void InDetPerfPlot_VertexTruthMatching::finalizePlots |
( |
| ) |
|
|
privatevirtual |
◆ getDirectory()
const std::string& PlotBase::getDirectory |
( |
| ) |
|
|
inlineinherited |
◆ getHSRecoVertexSumPt2()
Definition at line 411 of file InDetPerfPlot_VertexTruthMatching.cxx.
413 float sumPtMax = -1.;
416 for (
const auto& vtx : recoVertices.
stdcont()) {
419 for (
size_t i = 0;
i < vtx->nTrackParticles();
i++) {
420 trackTmp = vtx->trackParticle(
i);
425 if (sumPtTmp > sumPtMax) {
◆ getLocalPUDensity()
Definition at line 440 of file InDetPerfPlot_VertexTruthMatching.cxx.
441 float radialWindow2 =
std::pow(radialWindow, 2);
442 int nTracksInWindow = 0;
443 float localPUDensity;
445 for (
const auto& vtx : truthHSVertices) {
446 if (vtx != vtxOfInterest) {
448 if (radialDiff2 < radialWindow2) {
449 nTracksInWindow += 1;
453 for (
const auto& vtx : truthPUVertices) {
454 if (vtx != vtxOfInterest) {
456 if (radialDiff2 < radialWindow2) {
457 nTracksInWindow += 1;
461 localPUDensity = (
float)(nTracksInWindow) / (2 * radialWindow);
462 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 469 of file InDetPerfPlot_VertexTruthMatching.cxx.
470 float x = recoVtx->
x();
471 float y = recoVtx->
y();
472 float xErr2 = recoVtx->covariancePosition()(0, 0);
473 float yErr2 = recoVtx->covariancePosition()(1, 1);
474 float xyCov = recoVtx->covariancePosition()(0, 1);
476 return std::sqrt(
std::pow(
x, 2) / r2 * xErr2 +
std::pow(
y, 2) / r2 * yErr2 + 2 *
x *
y / r2 * xyCov);
◆ getTruthVertex()
Definition at line 542 of file InDetPerfPlot_VertexTruthMatching.cxx.
547 if (!truthMatchingInfos.isAvailable(*recoVtx)){
548 ATH_MSG_WARNING(
"TruthEventMatchingInfos DECORATOR not available -- returning nullptr!");
551 const std::vector<InDetVertexTruthMatchUtils::VertexTruthMatchInfo>& truthInfos = truthMatchingInfos(*recoVtx);
552 if (!truthInfos.empty()) {
556 if (truthEventLink.
isValid()) {
561 while(!truthVtx && i_vtx<n_vtx){
569 ATH_MSG_WARNING(
"TruthEventMatchingInfos DECORATOR yields empty vector -- returning nullptr!");
573 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 83 of file InDetPlotBase.h.
84 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 83 of file PlotBase.cxx.
86 std::vector<EfficiencyData> subNodeHists = subNode->retrieveBookedEfficiencies();
87 vBookedEfficiencies.insert(vBookedEfficiencies.end(), subNodeHists.begin(), subNodeHists.end());
89 return vBookedEfficiencies;
◆ retrieveBookedHistograms()
std::vector< HistData > PlotBase::retrieveBookedHistograms |
( |
| ) |
|
|
inherited |
Retrieve all booked histograms.
Definition at line 63 of file PlotBase.cxx.
66 std::vector<HistData> subNodeHists = subNode->retrieveBookedHistograms();
67 vBookedHistograms.insert(vBookedHistograms.end(), subNodeHists.begin(), subNodeHists.end());
69 return vBookedHistograms;
◆ retrieveBookedTrees()
std::vector< TreeData > PlotBase::retrieveBookedTrees |
( |
| ) |
|
|
inherited |
Retrieve all booked trees.
Definition at line 73 of file PlotBase.cxx.
76 std::vector<TreeData> subNodeTrees = subNode->retrieveBookedTrees();
77 vBookedTrees.insert(vBookedTrees.end(), subNodeTrees.begin(), subNodeTrees.end());
◆ retrieveDefinition()
Retrieve a single histogram definition, given the unique string identifier.
Definition at line 151 of file InDetPlotBase.cxx.
155 bool folderDefault = (
folder.empty() or
folder ==
"default");
158 if (folderDefault and
s.empty()) {
159 const std::string otherDefault = (
folder.empty()) ? (
"default") :
"";
163 ATH_MSG_WARNING(
"Histogram definition is empty for identifier " << histoIdentifier);
165 if (!nameOverride.empty()){
166 s.name = nameOverride;
◆ setDetailLevel()
void PlotBase::setDetailLevel |
( |
int |
iDetailLevel | ) |
|
|
inherited |
Definition at line 55 of file PlotBase.cxx.
57 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_resHelper_PUdensity_hsVxTruthLong
TH2* InDetPerfPlot_VertexTruthMatching::m_resHelper_PUdensity_hsVxTruthLong |
|
private |
◆ m_resHelper_PUdensity_hsVxTruthTransv
TH2* InDetPerfPlot_VertexTruthMatching::m_resHelper_PUdensity_hsVxTruthTransv |
|
private |
◆ m_resmean_vs_PUdensity_hsVxTruthLong
TH1* InDetPerfPlot_VertexTruthMatching::m_resmean_vs_PUdensity_hsVxTruthLong |
|
private |
◆ m_resmean_vs_PUdensity_hsVxTruthTransv
TH1* InDetPerfPlot_VertexTruthMatching::m_resmean_vs_PUdensity_hsVxTruthTransv |
|
private |
◆ m_resolution_vs_PUdensity_hsVxTruthLong
TH1* InDetPerfPlot_VertexTruthMatching::m_resolution_vs_PUdensity_hsVxTruthLong |
|
private |
◆ m_resolution_vs_PUdensity_hsVxTruthTransv
TH1* InDetPerfPlot_VertexTruthMatching::m_resolution_vs_PUdensity_hsVxTruthTransv |
|
private |
◆ 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_dist_vs_nReco
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff_dist_vs_nReco |
|
private |
◆ m_vx_hs_sel_eff_mu
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff_mu |
|
private |
◆ m_vx_hs_sel_eff_vs_nReco
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff_vs_nReco |
|
private |
◆ m_vx_hs_sel_eff_vs_ntruth
TEfficiency* InDetPerfPlot_VertexTruthMatching::m_vx_hs_sel_eff_vs_ntruth |
|
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_nTruth_vs_PUdensity
TH2* InDetPerfPlot_VertexTruthMatching::m_vx_nTruth_vs_PUdensity |
|
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
TH1 * m_resolution_vs_PUdensity_hsVxTruthTransv
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
TH1 * m_resolution_vs_PUdensity_hsVxTruthLong
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
TEfficiency * m_vx_hs_sel_eff_dist_vs_nReco
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 TH2F 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
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
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
TH2 * m_vx_nTruth_vs_PUdensity
TH1 * m_vx_track_weight_ALL_merged
TH1D * 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_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
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.
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
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
TH1 * m_resmean_vs_PUdensity_hsVxTruthLong
Class describing a signal truth event in the MC record.
TH1 * m_vx_track_weight_HS_matched
std::tuple< ElementLink< xAOD::TruthEventBaseContainer >, float, float > VertexTruthMatchInfo
TEfficiency * m_vx_hs_sel_eff_vs_nReco
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
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
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)
ServiceHandle< IHistogramDefinitionSvc > m_histoDefSvc
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
TH2 * m_resHelper_PUdensity_hsVxTruthLong
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.
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
TH2 * m_resHelper_PUdensity_hsVxTruthTransv
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
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
TEfficiency * m_vx_hs_sel_eff_mu
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
constexpr int pow(int base, int exp) noexcept
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
TH1 * m_resmean_vs_PUdensity_hsVxTruthTransv
const xAOD::TruthVertex * getTruthVertex(const xAOD::Vertex *recoVtx) const
TH1 * m_vx_sumpT_HS_matched