ATLAS Offline Software
PhysicsAnalysis
TauID
DiTauMassTools
DiTauMassTools
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.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
// Asg wrapper around the MissingMassCalculator
6
// author Michael Huebner <michael.huebner@no.spam.cern.ch>
7
#ifndef DITAUMASSTOOLS_HELPERFUNCTIONS_H
8
#define DITAUMASSTOOLS_HELPERFUNCTIONS_H
9
10
// Framework includes
11
12
// EDM include(s)
13
#include "
xAODTau/TauJet.h
"
14
15
// local include(s)
16
#include "TH1F.h"
17
#include "TF1.h"
18
#include "TKey.h"
19
#include "TDirectory.h"
20
#include "TROOT.h"
21
22
namespace
DiTauMassTools
{
23
24
namespace
MaxHistStrategyV2
25
{
26
enum
e
{
MAXBIN
=0,
MAXBINWINDOW
,
SLIDINGWINDOW
,
FIT
,
MAXMAXHISTSTRATEGY
};
27
}
28
29
namespace
HistInfoV2
30
{
31
enum
e
{
PROB
=0,
INTEGRAL
,
CHI2
,
DISCRI
,
TANTHETA
,
TANTHETAW
,
FITLENGTH
,
RMS
,
RMSVSDISCRI
,
MEANBIN
,
MAXHISTINFO
};
32
}
33
34
namespace
MMCCalibrationSetV2
35
{
36
enum
e
{
MMC2015HIGHMASS
=0,
UPGRADE
,
LFVMMC2012
,
MMC2016MC15C
,
MMC2019
,
MAXMMCCALIBRATIONSET
};
37
const
std::string
name
[
MAXMMCCALIBRATIONSET
]={
"MMC2015HIGHMASS"
,
"UPGRADE"
,
"LFVMMC2012"
,
"MMC2016MC15C"
,
"MMC2019"
};
38
}
39
40
namespace
MMCFitMethodV2
41
{
42
enum
e
{
MAXW
=0,
MLM
,
MLNU3P
,
MAX
};
43
const
std::string
name
[
MAX
]={
"MAXW=MaximumWeight"
,
"MLM=MostLikelyMass"
,
"MLNU3P=MostLikelyNeUtrino3Momentum"
};
44
const
std::string
shortName
[
MAX
]={
"MAXW"
,
"MLM"
,
"MLNU3P"
};
45
}
46
47
namespace
TauTypes
48
{
49
enum
e
{
ll
=0,
lh
,
hh
};
50
}
51
52
// define ignore template to suppress warnings in MissingMassProb
53
// see source file of MissingMassProb for further reasoning
54
template
<
typename
T>
void
ignore
(T &&){}
55
56
int
getFirstBinBelowMax
(
const
std::shared_ptr<TH1F>&
hist
,
double
max
,
double
targetVal);
57
int
getFirstBinAboveMax
(
const
std::shared_ptr<TH1F>&
hist
,
double
max
,
double
targetVal);
58
double
Angle
(
const
TLorentzVector & vec1,
const
TLorentzVector &
vec2
);
59
bool
updateDouble
(
const
double
in,
double
&
out
) ;
60
void
fastSinCos
(
const
double
&
phi
,
double
& sinPhi,
double
& cosPhi);
61
double
fixPhiRange
(
const
double
&
phi
);
62
double
MaxDelPhi
(
int
tau_type,
double
Pvis,
double
dRmax_tau);
63
int
getLFVMode
(
const
xAOD::IParticle
* p1,
const
xAOD::IParticle
* p2,
int
mmcType1,
int
mmcType2);
64
int
mmcType
(
const
xAOD::IParticle
*
part
);
// returns particle type as required by MMC
65
double
mT
(
const
TLorentzVector &
vec
,
const
TVector2 & met_vec);
66
void
readInParams
(TDirectory*
dir
,
MMCCalibrationSetV2::e
aset, std::vector<TF1*>& lep_numass, std::vector<TF1*>& lep_angle, std::vector<TF1*>& lep_ratio, std::vector<TF1*>& had_angle, std::vector<TF1*>& had_ratio);
67
}
// namespace DiTauMassTools
68
69
#endif // not DITAUMASSTOOLS_HELPERFUNCTIONS_H
LArG4FSStartPointFilter.part
part
Definition:
LArG4FSStartPointFilter.py:21
DiTauMassTools::Angle
double Angle(const TLorentzVector &vec1, const TLorentzVector &vec2)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:46
D3PDMakerTestInstan::vec2
std::vector< D3PDTest::MyVec2 > vec2
Definition:
D3PDMakerTestDict.h:14
DiTauMassTools::TauTypes::lh
@ lh
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:49
max
#define max(a, b)
Definition:
cfImp.cxx:41
phi
Scalar phi() const
phi method
Definition:
AmgMatrixBasePlugin.h:64
DiTauMassTools::HistInfoV2::TANTHETAW
@ TANTHETAW
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::mT
double mT(const TLorentzVector &vec, const TVector2 &met_vec)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:209
DiTauMassTools::TauTypes::hh
@ hh
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:49
DiTauMassTools::readInParams
void readInParams(TDirectory *dir, MMCCalibrationSetV2::e aset, std::vector< TF1 * > &lep_numass, std::vector< TF1 * > &lep_angle, std::vector< TF1 * > &lep_ratio, std::vector< TF1 * > &had_angle, std::vector< TF1 * > &had_ratio)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:218
DiTauMassTools::HistInfoV2::FITLENGTH
@ FITLENGTH
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
plotmaker.hist
hist
Definition:
plotmaker.py:148
vec
std::vector< size_t > vec
Definition:
CombinationsGeneratorTest.cxx:12
DiTauMassTools::MaxHistStrategyV2::MAXMAXHISTSTRATEGY
@ MAXMAXHISTSTRATEGY
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition:
Event/xAOD/xAODBase/xAODBase/IParticle.h:40
DiTauMassTools::fastSinCos
void fastSinCos(const double &phi, double &sinPhi, double &cosPhi)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:74
DiTauMassTools::updateDouble
bool updateDouble(const double in, double &out)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:107
DiTauMassTools::MMCFitMethodV2::name
const std::string name[MAX]
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:43
DiTauMassTools::HistInfoV2::e
e
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::HistInfoV2::CHI2
@ CHI2
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCFitMethodV2::MAXW
@ MAXW
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:42
DiTauMassTools::ignore
void ignore(T &&)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:54
DiTauMassTools
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:22
DiTauMassTools::MaxDelPhi
double MaxDelPhi(int tau_type, double Pvis, double dRmax_tau)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:41
DiTauMassTools::MaxHistStrategyV2::MAXBINWINDOW
@ MAXBINWINDOW
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::MMCFitMethodV2::e
e
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:42
DiTauMassTools::HistInfoV2::MAXHISTINFO
@ MAXHISTINFO
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCCalibrationSetV2::MMC2015HIGHMASS
@ MMC2015HIGHMASS
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::MaxHistStrategyV2::FIT
@ FIT
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::MMCCalibrationSetV2::LFVMMC2012
@ LFVMMC2012
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::getLFVMode
int getLFVMode(const xAOD::IParticle *p1, const xAOD::IParticle *p2, int mmcType1, int mmcType2)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:115
DiTauMassTools::MMCCalibrationSetV2::MMC2016MC15C
@ MMC2016MC15C
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::TauTypes::e
e
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:49
DiTauMassTools::MMCFitMethodV2::MLNU3P
@ MLNU3P
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:42
DiTauMassTools::mmcType
int mmcType(const xAOD::IParticle *part)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:172
DiTauMassTools::MMCCalibrationSetV2::UPGRADE
@ UPGRADE
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::HistInfoV2::RMSVSDISCRI
@ RMSVSDISCRI
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCCalibrationSetV2::MAXMMCCALIBRATIONSET
@ MAXMMCCALIBRATIONSET
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
beamspotman.dir
string dir
Definition:
beamspotman.py:623
DiTauMassTools::HistInfoV2::MEANBIN
@ MEANBIN
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCFitMethodV2::MLM
@ MLM
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:42
DiTauMassTools::fixPhiRange
double fixPhiRange(const double &phi)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:53
test_pythinning.out
out
Definition:
test_pythinning.py:94
DiTauMassTools::HistInfoV2::DISCRI
@ DISCRI
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCCalibrationSetV2::e
e
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::MaxHistStrategyV2::e
e
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::HistInfoV2::INTEGRAL
@ INTEGRAL
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCFitMethodV2::shortName
const std::string shortName[MAX]
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:44
DiTauMassTools::HistInfoV2::PROB
@ PROB
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
TauJet.h
DiTauMassTools::MaxHistStrategyV2::SLIDINGWINDOW
@ SLIDINGWINDOW
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::HistInfoV2::RMS
@ RMS
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MMCCalibrationSetV2::MMC2019
@ MMC2019
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::HistInfoV2::TANTHETA
@ TANTHETA
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:31
DiTauMassTools::MaxHistStrategyV2::MAXBIN
@ MAXBIN
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::getFirstBinBelowMax
int getFirstBinBelowMax(const std::shared_ptr< TH1F > &hist, double max, double targetVal)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:28
DiTauMassTools::MMCCalibrationSetV2::name
const std::string name[MAXMMCCALIBRATIONSET]
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:37
DiTauMassTools::getFirstBinAboveMax
int getFirstBinAboveMax(const std::shared_ptr< TH1F > &hist, double max, double targetVal)
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/Root/HelperFunctions.cxx:15
DiTauMassTools::TauTypes::ll
@ ll
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:49
DiTauMassTools::MMCFitMethodV2::MAX
@ MAX
Definition:
PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:42
Generated on Sun May 19 2024 21:16:29 for ATLAS Offline Software by
1.8.18