 |
ATLAS Offline Software
|
Go to the documentation of this file.
11 #ifndef JETCALIBTOOLS_ETAJESCALIBSTEP_H
12 #define JETCALIBTOOLS_ETAJESCALIBSTEP_H 1
45 double getLogPolN(
const double *factors,
double x)
const;
53 double getJES(
const double X,
const double Y=0,
const double Emax=-1)
const;
59 double getLowPtJES(
double E_uncorr,
double eta_det)
const ;
64 Gaudi::Property<std::string>
m_jetInScale {
this,
"InScale",
"JetPileupScaleMomentum",
"Starting jet scale"};
65 Gaudi::Property<std::string>
m_jetOutScale {
this,
"OutScale",
"JetEtaJESScaleMomentum",
"Ending jet scale"};
68 Gaudi::Property< std::string >
m_constantFileName {
this,
"CalibConstantFile",
"/afs/cern.ch/work/s/stapiaar/JetDev4/athena/JetToolHelpers/data/file_JES.config",
"text file containing constants" };
70 Gaudi::Property< std::string >
m_jetAlgo {
this,
"JetAlgo",
"AntiKt4EMPFlow",
"jet collection" };
71 Gaudi::Property< float >
m_minPt_JES = {
this,
"MinPtForETAJES",15,
"min pT"};
72 Gaudi::Property< bool >
m_freezeJESatHighE = {
this,
"FreezeJEScorrectionatHighE",
false,
" freeze at high e"};
73 Gaudi::Property< float >
m_lowPtExtrap = {
this,
"LowPtJESExtrapolationMethod", 0,
" low pt etrap"};
74 Gaudi::Property< float >
m_lowPtMinR = {
this,
"LowPtJESExtrapolationMinimumResponse", 0.25,
" low pt etrap min"};
77 Gaudi::Property< float >
m_maxE_EtaCorr = {
this,
"MaxEForEtaCorr" ,2500. ,
""};
79 Gaudi::Property< std::string >
m_histoFileName {
this,
"HistoFile",
"none",
"root file containing histos for spline calib" };
80 Gaudi::Property< bool >
m_useSpline = {
this,
"UseSpline",
false,
" use spline"};
83 Gaudi::Property<std::vector<double> >
m_etaBins {
this,
"EtaBins", {} ,
""};
85 ToolHandle<JetHelper::IVarTool>
m_vartoolE{
this,
"VarToolE",
"VarTool",
"InputVariable instance E (or pT?)" };
87 ToolHandle<JetHelper::IVarTool>
m_vartoolEta{
this,
"VarToolEta",
"VarTool",
"InputVariable instance eta (or rapididty?)" };
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
static const unsigned int s_nEtaBins
double m_JES_MinPt_Slopes[s_nEtaBins]
Gaudi::Property< std::string > m_constantFileName
name of the text file
double getSplineSlope(const int ieta, const double minE) const
double m_etaCorrFactors[s_nEtaBins][s_nParMax]
int getEtaBin(double eta_det) const
void loadSplineHists(const std::string &fileName, const std::string &etajes_name)
Gaudi::Property< std::string > m_jetInScale
bool readMCJESFromHists()
Gaudi::Property< float > m_minPt_EtaCorr
std::vector< std::unique_ptr< TH1 > > m_etajesFactors
double m_JES_MinPt_E[s_nEtaBins]
Gaudi::Property< std::string > m_jetOutScale
Gaudi::Property< std::vector< double > > m_etaBins
Eta bins if other than 0.1 steps from -4.5 to 4.5.
Gaudi::Property< float > m_lowPtExtrap
setSAddress setEtaMS setDirPhiMS setDirZMS setBarrelRadius setEndcapAlpha setEndcapRadius setInterceptInner setEtaMap etaBin
double getLogPolNSlope(const double *factors, double x) const
double m_energyFreezeJES[s_nEtaBins]
::StatusCode StatusCode
StatusCode definition for legacy code.
double getEtaCorr(double X, double Y=0) const
return Eta correction
virtual StatusCode calibrate(xAOD::JetContainer &) const override
Apply calibration to a jet container.
Gaudi::Property< bool > m_freezeJESatHighE
EtaJESCalibStep(const std::string &name="EtaJESCalibStep")
ToolHandle< JetHelper::IVarTool > m_vartoolEta
interface for xAOD::jet variable to be defined by user, this must correspond to jet Eta in currect ve...
double getLowPtJES(double E_uncorr, double eta_det) const
deal with low pt jets
Gaudi::Property< float > m_lowPtMinR
Gaudi::Property< std::string > m_histoFileName
Gaudi::Property< float > m_minPt_JES
double getEmaxJES(const double Y) const
return Emax
Gaudi::Property< bool > m_useSpline
double m_JES_MinPt_R[s_nEtaBins]
double getLogPolN(const double *factors, double x) const
static const unsigned int s_nParMax
Gaudi::Property< float > m_maxE_EtaCorr
double m_JESFactors[s_nEtaBins][s_nParMax]
double getSplineCorr(const int etaBin, double E) const
double getJES(const double X, const double Y=0, const double Emax=-1) const
return MCJES calibration factor
Gaudi::Property< std::string > m_jetAlgo
jet collection to be calibrated
ToolHandle< JetHelper::IVarTool > m_vartoolE