ATLAS Offline Software
Public Member Functions | Private Attributes | Friends | List of all members
DiTauMassTools::MissingMassInput Class Reference

#include <MissingMassInput.h>

Collaboration diagram for DiTauMassTools::MissingMassInput:

Public Member Functions

 MissingMassInput ()
 
 ~MissingMassInput ()
 
void ClearInput ()
 
void PrintInputInfo ()
 
void SetBeamEnergy (double val)
 
void SetMETresSyst (int val)
 
void SetMetScanParamsUE (double sumEt, double phi_scan=0.0, int data_code=0)
 
void SetNjet25 (int val)
 
void SetSumEt (double sumEt)
 
void SetVisTauVec (int i, const TLorentzVector &vec)
 
void SetVisTauType (int i, int tautype)
 
void SetMetVec (const TVector2 &vec)
 
void SetNprong (int i, int nprong)
 
void SetIsData (int val)
 
void SetMHtSigma1 (double val)
 
void SetMHtSigma2 (double val)
 
void SetMHtGaussFr (double val)
 
void SetMETScanScheme (int val)
 
void SetUseDefaults (int val)
 
void SetUseTailCleanup (bool val)
 
void SetUseVerbose (bool val)
 
void SetLFVmode (int val)
 

Private Attributes

TVector2 m_MetVec
 
TLorentzVector m_vistau1
 
TLorentzVector m_vistau2
 
int m_type_visTau1
 
int m_type_visTau2
 
int m_Nprong_tau1
 
int m_Nprong_tau2
 
int m_dataType
 
double m_METcovphi
 
double m_METsigmaP
 
double m_METsigmaL
 
double m_SumEt
 
std::vector< TLorentzVector > m_jet4vecs
 
int m_Njet25
 
double m_DelPhiTT
 
double m_MHtSigma1
 
double m_MHtSigma2
 
double m_MHtGaussFr
 
double m_HtOffset
 
double m_beamEnergy
 
int m_InputReorder
 
int m_METScanScheme
 
int m_METresSyst
 
bool m_fUseDefaults
 
bool m_fUseTailCleanup
 
bool m_fUseVerbose
 
TVector2 m_metVec
 
TLorentzVector m_tlv_tmp
 
double m_inputMEtX
 
double m_inputMEtY
 
double m_inputMEtT
 
double m_MEtX
 
double m_MEtY
 
double m_MEtT
 
double m_htOffset
 
int m_LFVmode
 
TauTypes::e m_tauTypes
 

Friends

class MissingMassCalculatorV2
 
class MissingMassProb
 

Detailed Description

Definition at line 19 of file MissingMassInput.h.

Constructor & Destructor Documentation

◆ MissingMassInput()

MissingMassInput::MissingMassInput ( )

Definition at line 14 of file MissingMassInput.cxx.

14  {
15 }

◆ ~MissingMassInput()

MissingMassInput::~MissingMassInput ( )

Definition at line 18 of file MissingMassInput.cxx.

18  {
19 }

Member Function Documentation

◆ ClearInput()

void MissingMassInput::ClearInput ( )

Definition at line 22 of file MissingMassInput.cxx.

22  {
23 
24  if(m_fUseVerbose == 1){ Info("DiTauMassTools", "MissingMassCalculator::ClearInput()"); }
25 
26  m_MetVec.Set(0.,0.);
27  m_vistau1.SetPtEtaPhiM(0.,0.,0.,0.);
28  m_vistau2.SetPtEtaPhiM(0.,0.,0.,0.);
29 
30  m_type_visTau1 = 0;
31  m_type_visTau2 = 0;
32  m_Nprong_tau1 = 0;
33  m_Nprong_tau2 = 0;
34  m_dataType = 0;
35  m_Njet25 = 0;
36 
37  m_METcovphi = 0.;
38  m_METsigmaP = 0.;
39  m_METsigmaL = 0.;
40  m_SumEt = 0.;
41  m_DelPhiTT = 0.;
42  m_MHtSigma1 = 0.;
43  m_MHtSigma2 = 0.;
44  m_MHtGaussFr = 0.;
45  m_HtOffset = 0.;
46 
47  m_jet4vecs.clear();
48 
49  m_LFVmode = -1;
50 
51  return;
52 }

◆ PrintInputInfo()

void MissingMassInput::PrintInputInfo ( )

Definition at line 56 of file MissingMassInput.cxx.

56  {
57  if(m_fUseVerbose!=1) return;
58 
59  Info("DiTauMassTools", "%s", ("met_x="+std::to_string(m_MetVec.Px())+" met_y="+std::to_string(m_MetVec.Py())+" MET="+std::to_string(m_MetVec.Mod())+" met_phi="+std::to_string(m_MetVec.Phi())).c_str());
60  Info("DiTauMassTools", "%s", ("sumEt="+std::to_string(m_SumEt)+" METsigmaP="+std::to_string(m_METsigmaP)+" METsigmaL="+std::to_string(m_METsigmaL)+" METcovphi="+std::to_string(m_METcovphi)).c_str());
61  //Info("DiTauMassTools", "%s", (" Njet25="+std::to_string(Njet25)+" allowUseHT="+std::to_string(prob->GetAllowUseHT())+" useHT="+std::to_string(prob->GetUseHT())).c_str());
62 
63  Info("DiTauMassTools", "%s", ("MHtSigma1="+std::to_string(m_MHtSigma1)+" MHtSigma2="+std::to_string(m_MHtSigma2)
64  +" MHtGaussFr="+std::to_string(m_MHtGaussFr)
65  +" HtOffset="+std::to_string(m_HtOffset)).c_str());
66 
67  Info("DiTauMassTools", "%s", ("1st visible tau: type="+std::to_string(m_type_visTau1)+" Nprong="+std::to_string(m_Nprong_tau1)+" P="+std::to_string(m_vistau1.P())+" Pt="+std::to_string(m_vistau1.Pt())
68  +" Eta="+std::to_string(m_vistau1.Eta())+" Phi="+std::to_string(m_vistau1.Phi())+" M="+std::to_string(m_vistau1.M())).c_str());
69  Info("DiTauMassTools", "%s", ("2nd visible tau: type="+std::to_string(m_type_visTau2)+" Nprong="+std::to_string(m_Nprong_tau2)+" P="+std::to_string(m_vistau2.P())+" Pt="+std::to_string(m_vistau2.Pt())
70  +" Eta="+std::to_string(m_vistau2.Eta())+" Phi="+std::to_string(m_vistau2.Phi())+" M="+std::to_string(m_vistau2.M())).c_str());
71 
72  if(m_jet4vecs.size()>0)
73  {
74  for(unsigned int i=0; i<m_jet4vecs.size(); i++)
75  {
76  Info("DiTauMassTools", "%s", ("Printing jets: jet "+std::to_string(i)+" E="+std::to_string(m_jet4vecs[i].E())+" Pt="
77  +std::to_string(m_jet4vecs[i].Pt())+" Phi="+std::to_string(m_jet4vecs[i].Phi())+" Eta="+std::to_string(m_jet4vecs[i].Eta())).c_str());
78  }
79  }
80  return;
81 }

◆ SetBeamEnergy()

void DiTauMassTools::MissingMassInput::SetBeamEnergy ( double  val)
inline

Definition at line 28 of file MissingMassInput.h.

28 { m_beamEnergy=val; } // beam energy

◆ SetIsData()

void MissingMassInput::SetIsData ( int  val)

Definition at line 135 of file MissingMassInput.cxx.

135  {
136  if(val==0 || val==1) m_dataType = val;
137  return;
138 }

◆ SetLFVmode()

void DiTauMassTools::MissingMassInput::SetLFVmode ( int  val)
inline

Definition at line 45 of file MissingMassInput.h.

45 { m_LFVmode=val; }

◆ SetMETresSyst()

void DiTauMassTools::MissingMassInput::SetMETresSyst ( int  val)
inline

Definition at line 29 of file MissingMassInput.h.

29 { m_METresSyst=val; } // MET resolution systematics: +/-1 sigma

◆ SetMetScanParamsUE()

void MissingMassInput::SetMetScanParamsUE ( double  sumEt,
double  phi_scan = 0.0,
int  data_code = 0 
)

Definition at line 87 of file MissingMassInput.cxx.

87  {
88  m_METcovphi = phi_scan;
89  if(sumEt>2.0*m_beamEnergy) sumEt = sumEt/1000.0; // it's likely that sumEt was entered in MeV; this fix won't work only for a very small fraction of events
90  double sigma = 1.0;
91  double sigmaSyst = 0.10; // 10% systematics for now (be conservative)
92  double METresScale = 0.7; // using inclusive number for winter 2012
93  if(data_code==1) METresScale=0.7; // use the same for data & MC
94  METresScale = METresScale*(1.0+m_METresSyst*sigmaSyst);
95  // MET resolution can't be perfect in presence of other objects (i.e., electrons, jets, taus), so assume minSumEt = 5.0 for now
96  sigma = sumEt>pow(3.0/METresScale,2) ? METresScale*sqrt(sumEt) : 3.0; // assume that MET resolution can't be better than 3 GeV
99  m_SumEt = sumEt;
100  m_dataType = data_code; // Sasha added on 09/26/11
101  return;
102 }

◆ SetMETScanScheme()

void DiTauMassTools::MissingMassInput::SetMETScanScheme ( int  val)
inline

Definition at line 41 of file MissingMassInput.h.

◆ SetMetVec()

void MissingMassInput::SetMetVec ( const TVector2 &  vec)

Definition at line 128 of file MissingMassInput.cxx.

128  {
129  m_MetVec = vec;
130  return;
131 }

◆ SetMHtGaussFr()

void DiTauMassTools::MissingMassInput::SetMHtGaussFr ( double  val)
inline

Definition at line 40 of file MissingMassInput.h.

40 { m_MHtGaussFr=val; }

◆ SetMHtSigma1()

void DiTauMassTools::MissingMassInput::SetMHtSigma1 ( double  val)
inline

Definition at line 38 of file MissingMassInput.h.

38 { m_MHtSigma1=val; }

◆ SetMHtSigma2()

void DiTauMassTools::MissingMassInput::SetMHtSigma2 ( double  val)
inline

Definition at line 39 of file MissingMassInput.h.

39 { m_MHtSigma2=val; }

◆ SetNjet25()

void MissingMassInput::SetNjet25 ( int  val)

Definition at line 105 of file MissingMassInput.cxx.

105  {
106  if(val>-1) m_Njet25 = val;
107  return;
108 }

◆ SetNprong()

void MissingMassInput::SetNprong ( int  i,
int  nprong 
)

Definition at line 140 of file MissingMassInput.cxx.

140  {
141  if(i==0) m_Nprong_tau1 = nprong;
142  if(i==1) m_Nprong_tau2 = nprong;
143  return;
144 }

◆ SetSumEt()

void MissingMassInput::SetSumEt ( double  sumEt)

Definition at line 110 of file MissingMassInput.cxx.

110  {
111  m_SumEt = sumEt;
112  return;
113 }

◆ SetUseDefaults()

void DiTauMassTools::MissingMassInput::SetUseDefaults ( int  val)
inline

Definition at line 42 of file MissingMassInput.h.

◆ SetUseTailCleanup()

void DiTauMassTools::MissingMassInput::SetUseTailCleanup ( bool  val)
inline

Definition at line 43 of file MissingMassInput.h.

◆ SetUseVerbose()

void DiTauMassTools::MissingMassInput::SetUseVerbose ( bool  val)
inline

Definition at line 44 of file MissingMassInput.h.

44 { m_fUseVerbose=val; }

◆ SetVisTauType()

void MissingMassInput::SetVisTauType ( int  i,
int  tautype 
)

Definition at line 115 of file MissingMassInput.cxx.

115  {
116  if(i==0) m_type_visTau1 = tautype;
117  if(i==1) m_type_visTau2 = tautype;
118  return;
119 }

◆ SetVisTauVec()

void MissingMassInput::SetVisTauVec ( int  i,
const TLorentzVector &  vec 
)

Definition at line 121 of file MissingMassInput.cxx.

121  {
122  if(m_fUseVerbose==1) { Info("DiTauMassTools", "%s", ("Seting input "+std::to_string(i)+" to pT="+std::to_string(vec.Pt())).c_str()); }
123  if(i==0) m_vistau1 = vec;
124  if(i==1) m_vistau2 = vec;
125  return;
126 }

Friends And Related Function Documentation

◆ MissingMassCalculatorV2

friend class MissingMassCalculatorV2
friend

Definition at line 47 of file MissingMassInput.h.

◆ MissingMassProb

friend class MissingMassProb
friend

Definition at line 48 of file MissingMassInput.h.

Member Data Documentation

◆ m_beamEnergy

double DiTauMassTools::MissingMassInput::m_beamEnergy
private

Definition at line 70 of file MissingMassInput.h.

◆ m_dataType

int DiTauMassTools::MissingMassInput::m_dataType
private

Definition at line 58 of file MissingMassInput.h.

◆ m_DelPhiTT

double DiTauMassTools::MissingMassInput::m_DelPhiTT
private

Definition at line 65 of file MissingMassInput.h.

◆ m_fUseDefaults

bool DiTauMassTools::MissingMassInput::m_fUseDefaults
private

Definition at line 74 of file MissingMassInput.h.

◆ m_fUseTailCleanup

bool DiTauMassTools::MissingMassInput::m_fUseTailCleanup
private

Definition at line 75 of file MissingMassInput.h.

◆ m_fUseVerbose

bool DiTauMassTools::MissingMassInput::m_fUseVerbose
private

Definition at line 76 of file MissingMassInput.h.

◆ m_HtOffset

double DiTauMassTools::MissingMassInput::m_HtOffset
private

Definition at line 69 of file MissingMassInput.h.

◆ m_htOffset

double DiTauMassTools::MissingMassInput::m_htOffset
private

Definition at line 81 of file MissingMassInput.h.

◆ m_inputMEtT

double DiTauMassTools::MissingMassInput::m_inputMEtT
private

Definition at line 79 of file MissingMassInput.h.

◆ m_inputMEtX

double DiTauMassTools::MissingMassInput::m_inputMEtX
private

Definition at line 79 of file MissingMassInput.h.

◆ m_inputMEtY

double DiTauMassTools::MissingMassInput::m_inputMEtY
private

Definition at line 79 of file MissingMassInput.h.

◆ m_InputReorder

int DiTauMassTools::MissingMassInput::m_InputReorder
private

Definition at line 71 of file MissingMassInput.h.

◆ m_jet4vecs

std::vector<TLorentzVector> DiTauMassTools::MissingMassInput::m_jet4vecs
private

Definition at line 63 of file MissingMassInput.h.

◆ m_LFVmode

int DiTauMassTools::MissingMassInput::m_LFVmode
private

Definition at line 82 of file MissingMassInput.h.

◆ m_METcovphi

double DiTauMassTools::MissingMassInput::m_METcovphi
private

Definition at line 59 of file MissingMassInput.h.

◆ m_METresSyst

int DiTauMassTools::MissingMassInput::m_METresSyst
private

Definition at line 73 of file MissingMassInput.h.

◆ m_METScanScheme

int DiTauMassTools::MissingMassInput::m_METScanScheme
private

Definition at line 72 of file MissingMassInput.h.

◆ m_METsigmaL

double DiTauMassTools::MissingMassInput::m_METsigmaL
private

Definition at line 61 of file MissingMassInput.h.

◆ m_METsigmaP

double DiTauMassTools::MissingMassInput::m_METsigmaP
private

Definition at line 60 of file MissingMassInput.h.

◆ m_MEtT

double DiTauMassTools::MissingMassInput::m_MEtT
private

Definition at line 80 of file MissingMassInput.h.

◆ m_MetVec

TVector2 DiTauMassTools::MissingMassInput::m_MetVec
private

Definition at line 51 of file MissingMassInput.h.

◆ m_metVec

TVector2 DiTauMassTools::MissingMassInput::m_metVec
private

Definition at line 77 of file MissingMassInput.h.

◆ m_MEtX

double DiTauMassTools::MissingMassInput::m_MEtX
private

Definition at line 80 of file MissingMassInput.h.

◆ m_MEtY

double DiTauMassTools::MissingMassInput::m_MEtY
private

Definition at line 80 of file MissingMassInput.h.

◆ m_MHtGaussFr

double DiTauMassTools::MissingMassInput::m_MHtGaussFr
private

Definition at line 68 of file MissingMassInput.h.

◆ m_MHtSigma1

double DiTauMassTools::MissingMassInput::m_MHtSigma1
private

Definition at line 66 of file MissingMassInput.h.

◆ m_MHtSigma2

double DiTauMassTools::MissingMassInput::m_MHtSigma2
private

Definition at line 67 of file MissingMassInput.h.

◆ m_Njet25

int DiTauMassTools::MissingMassInput::m_Njet25
private

Definition at line 64 of file MissingMassInput.h.

◆ m_Nprong_tau1

int DiTauMassTools::MissingMassInput::m_Nprong_tau1
private

Definition at line 56 of file MissingMassInput.h.

◆ m_Nprong_tau2

int DiTauMassTools::MissingMassInput::m_Nprong_tau2
private

Definition at line 57 of file MissingMassInput.h.

◆ m_SumEt

double DiTauMassTools::MissingMassInput::m_SumEt
private

Definition at line 62 of file MissingMassInput.h.

◆ m_tauTypes

TauTypes::e DiTauMassTools::MissingMassInput::m_tauTypes
private

Definition at line 83 of file MissingMassInput.h.

◆ m_tlv_tmp

TLorentzVector DiTauMassTools::MissingMassInput::m_tlv_tmp
private

Definition at line 78 of file MissingMassInput.h.

◆ m_type_visTau1

int DiTauMassTools::MissingMassInput::m_type_visTau1
private

Definition at line 54 of file MissingMassInput.h.

◆ m_type_visTau2

int DiTauMassTools::MissingMassInput::m_type_visTau2
private

Definition at line 55 of file MissingMassInput.h.

◆ m_vistau1

TLorentzVector DiTauMassTools::MissingMassInput::m_vistau1
private

Definition at line 52 of file MissingMassInput.h.

◆ m_vistau2

TLorentzVector DiTauMassTools::MissingMassInput::m_vistau2
private

Definition at line 53 of file MissingMassInput.h.


The documentation for this class was generated from the following files:
pdg_comparison.sigma
sigma
Definition: pdg_comparison.py:324
DiTauMassTools::MissingMassInput::m_METsigmaP
double m_METsigmaP
Definition: MissingMassInput.h:60
DiTauMassTools::MissingMassInput::m_METScanScheme
int m_METScanScheme
Definition: MissingMassInput.h:72
DiTauMassTools::MissingMassInput::m_MHtGaussFr
double m_MHtGaussFr
Definition: MissingMassInput.h:68
conifer::pow
constexpr int pow(int x)
Definition: conifer.h:20
DiTauMassTools::MissingMassInput::m_MHtSigma1
double m_MHtSigma1
Definition: MissingMassInput.h:66
DiTauMassTools::MissingMassInput::m_METsigmaL
double m_METsigmaL
Definition: MissingMassInput.h:61
Phi
@ Phi
Definition: RPCdef.h:8
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:12
ZDCMsg::Info
@ Info
Definition: ZDCMsg.h:20
DiTauMassTools::MissingMassInput::m_jet4vecs
std::vector< TLorentzVector > m_jet4vecs
Definition: MissingMassInput.h:63
DiTauMassTools::MissingMassInput::m_METcovphi
double m_METcovphi
Definition: MissingMassInput.h:59
CxxUtils::vec
typename vecDetail::vec_typedef< T, N >::type vec
Define a nice alias for the vectorized type.
Definition: vec.h:207
DiTauMassTools::MissingMassInput::m_Njet25
int m_Njet25
Definition: MissingMassInput.h:64
DiTauMassTools::MissingMassInput::m_SumEt
double m_SumEt
Definition: MissingMassInput.h:62
DiTauMassTools::MissingMassInput::m_Nprong_tau2
int m_Nprong_tau2
Definition: MissingMassInput.h:57
lumiFormat.i
int i
Definition: lumiFormat.py:92
DiTauMassTools::MissingMassInput::m_MHtSigma2
double m_MHtSigma2
Definition: MissingMassInput.h:67
DiTauMassTools::MissingMassInput::m_Nprong_tau1
int m_Nprong_tau1
Definition: MissingMassInput.h:56
DiTauMassTools::MissingMassInput::m_vistau1
TLorentzVector m_vistau1
Definition: MissingMassInput.h:52
DiTauMassTools::MissingMassInput::m_dataType
int m_dataType
Definition: MissingMassInput.h:58
DiTauMassTools::MissingMassInput::m_fUseVerbose
bool m_fUseVerbose
Definition: MissingMassInput.h:76
DiTauMassTools::MissingMassInput::m_HtOffset
double m_HtOffset
Definition: MissingMassInput.h:69
DiTauMassTools::MissingMassInput::m_type_visTau2
int m_type_visTau2
Definition: MissingMassInput.h:55
DiTauMassTools::MissingMassInput::m_DelPhiTT
double m_DelPhiTT
Definition: MissingMassInput.h:65
VP1PartSpect::E
@ E
Definition: VP1PartSpectFlags.h:21
ActsTrk::to_string
std::string to_string(const DetectorType &type)
Definition: GeometryDefs.h:34
DiTauMassTools::MissingMassInput::m_MetVec
TVector2 m_MetVec
Definition: MissingMassInput.h:51
DiTauMassTools::MissingMassInput::m_fUseTailCleanup
bool m_fUseTailCleanup
Definition: MissingMassInput.h:75
Prompt::Def::Pt
@ Pt
Definition: VarHolder.h:76
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
DiTauMassTools::MissingMassInput::m_vistau2
TLorentzVector m_vistau2
Definition: MissingMassInput.h:53
DiTauMassTools::MissingMassInput::m_type_visTau1
int m_type_visTau1
Definition: MissingMassInput.h:54
DiTauMassTools::MissingMassInput::m_METresSyst
int m_METresSyst
Definition: MissingMassInput.h:73
DiTauMassTools::MissingMassInput::m_beamEnergy
double m_beamEnergy
Definition: MissingMassInput.h:70
DiTauMassTools::MissingMassInput::m_fUseDefaults
bool m_fUseDefaults
Definition: MissingMassInput.h:74
DiTauMassTools::MissingMassInput::m_LFVmode
int m_LFVmode
Definition: MissingMassInput.h:82
Eta
@ Eta
Definition: RPCdef.h:8