ATLAS Offline Software
Loading...
Searching...
No Matches
MissingMassOutput.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5// Class handling the output of the MissingMassCalculator
6// author Michael Huebner <michael.huebner@no.spam.cern.ch>
7
8#ifndef DITAUMASSTOOLS_MISSINGMASSOUTPUT_H
9#define DITAUMASSTOOLS_MISSINGMASSOUTPUT_H
10
11// local include(s):
13#include "Math/Vector4D.h"
14
15// ROOT include(s):
16#include <TH1.h>
17#include <memory> //shared_ptr
18
19namespace DiTauMassTools{
20 using ROOT::Math::PtEtaPhiMVector;
21 using ROOT::Math::XYVector;
22
24
26
27 public:
30
31 int GetFitStatus() const; // return fit status
32 double GetFittedMass(int fitcode) const; // returns fitted Mass
33 double GetFittedMassErrorUp(int fitcode) const; // returns upper error on fitted Mass
34 double GetFittedMassErrorLow(int fitcode) const; // returns lower error on fitted Mass
35 std::shared_ptr<TH1F> GetMassHistogram() const; // return mass histogram
36 std::shared_ptr<TH1F> GetMassHistogramNoWeight() const; // return mass histogram without weights
37 int GetNTrials() const;// total number of point scanned
38 int GetNSuccesses() const;// total number of point with at least 1 solutions
39 int GetNSolutions() const;// total number of solutions
40 double GetSumW() const; // sum of weights
41 double GetAveSolRMS() const; // ave RMS of solutions (for one event)
42
43 double GetRms2Mpv() const; // returns RMS/MPV according to histogram method
44 PtEtaPhiMVector GetNeutrino4vec(int fitcode, int ind) const; // returns neutrino 4-vec
45 double GetFitSignificance(int fitcode) const; // returns fit significance
46 PtEtaPhiMVector GetTau4vec(int fitcode, int ind) const; // returns full tau 4-vec
47 PtEtaPhiMVector GetResonanceVec(int fitcode) const; // returns 4-vec for resonance
48 XYVector GetFittedMetVec(int fitcode) const; // returns 2-vec for fitted MET
49
51
52 private:
53 void ClearOutput(bool fUseVerbose);
59 PtEtaPhiMVector m_nuvec1[MMCFitMethod::MAX]{};
60 PtEtaPhiMVector m_objvec1[MMCFitMethod::MAX]{};
61 PtEtaPhiMVector m_nuvec2[MMCFitMethod::MAX]{};
62 PtEtaPhiMVector m_objvec2[MMCFitMethod::MAX]{};
63 PtEtaPhiMVector m_totalvec[MMCFitMethod::MAX]{};
65 double m_RMS2MPV{};
66 std::shared_ptr<TH1F> m_hMfit_all;
67 std::shared_ptr<TH1F> m_hMfit_allNoWeight;
68 int m_NTrials{};
71 double m_SumW{};
72 double m_AveSolRMS{};
73};
74} // namespace DiTauMassTools
75
76#endif
PtEtaPhiMVector m_objvec2[MMCFitMethod::MAX]
double GetFittedMassErrorUp(int fitcode) const
PtEtaPhiMVector m_nuvec1[MMCFitMethod::MAX]
PtEtaPhiMVector GetTau4vec(int fitcode, int ind) const
PtEtaPhiMVector GetNeutrino4vec(int fitcode, int ind) const
std::shared_ptr< TH1F > m_hMfit_allNoWeight
std::shared_ptr< TH1F > GetMassHistogramNoWeight() const
XYVector m_FittedMetVec[MMCFitMethod::MAX]
double m_FittedMassUpperError[MMCFitMethod::MAX]
double GetFittedMassErrorLow(int fitcode) const
std::shared_ptr< TH1F > m_hMfit_all
PtEtaPhiMVector m_totalvec[MMCFitMethod::MAX]
double m_FittedMassLowerError[MMCFitMethod::MAX]
PtEtaPhiMVector m_nuvec2[MMCFitMethod::MAX]
double m_FittedMass[MMCFitMethod::MAX]
XYVector GetFittedMetVec(int fitcode) const
std::shared_ptr< TH1F > GetMassHistogram() const
PtEtaPhiMVector m_objvec1[MMCFitMethod::MAX]
double GetFitSignificance(int fitcode) const
PtEtaPhiMVector GetResonanceVec(int fitcode) const
double m_FitSignificance[MMCFitMethod::MAX]
double GetFittedMass(int fitcode) const