|
ATLAS Offline Software
|
Go to the documentation of this file.
22 , m_name(
name.c_str())
45 , m_fixedVal1(fixedVal1)
46 , m_fixedVal2(fixedVal2)
68 return StatusCode::FAILURE;
74 const double sqrtS = uncTool.
getSqrtS();
75 const double kinLimit1 = sqrtS > 0 ? (sqrtS/2.) / cosh(
m_fixedVal1) : 1e99;
76 const double kinLimit2 = sqrtS > 0 ? (sqrtS/2.) / cosh(
m_fixedVal2) : 1e99;
78 std::cout <<
"Initializing for Pt with fixedVal1, fixedVal2 " <<
m_fixedVal1 <<
" " <<
m_fixedVal2 << std::endl;
79 std::cout <<
"Corresponding to kinematic limits " << kinLimit1 <<
" " << kinLimit2 << std::endl;
87 return StatusCode::FAILURE;
91 return StatusCode::FAILURE;
98 const double valX =
m_corrMat->GetXaxis()->GetBinCenter(
binX);
103 const double valY =
m_corrMat->GetYaxis()->GetBinCenter(
binY);
106 if (valX > kinLimit1 || valY > kinLimit2 ) {
124 return StatusCode::FAILURE;
127 return StatusCode::SUCCESS;
134 return StatusCode::FAILURE;
140 const double sqrtS = uncTool.
getSqrtS();
141 const double kinLimit1 = sqrtS > 0 ? acosh((sqrtS/2.) /
m_fixedVal1) : 1e99;
142 const double kinLimit2 = sqrtS > 0 ? acosh((sqrtS/2.) /
m_fixedVal2) : 1e99;
149 return StatusCode::FAILURE;
153 return StatusCode::FAILURE;
160 const double valX =
m_corrMat->GetXaxis()->GetBinCenter(
binX);
165 const double valY =
m_corrMat->GetYaxis()->GetBinCenter(
binY);
168 if (valX > kinLimit1 || valY > kinLimit2) {
184 return StatusCode::FAILURE;
187 return StatusCode::SUCCESS;
203 return StatusCode::FAILURE;
207 bool scalesFourVec =
false;
212 scalesFourVec =
true;
217 ATH_MSG_ERROR(
"No components scale the four-vector for the CorrelationMatrix: " <<
m_name.Data());
218 return StatusCode::FAILURE;
221 return StatusCode::SUCCESS;
240 return StatusCode::SUCCESS;
259 return StatusCode::SUCCESS;
283 if (
config.Contains(
"_2011/"))
289 else if (
config.Contains(
"_2012/") ||
config.Contains(
"_2015/Prerec"))
292 sigmaMu = 5.593*1.11;
295 else if (
config.Contains(
"_2015"))
301 else if (
config.Contains(
"_2016"))
313 return StatusCode::FAILURE;
319 return StatusCode::SUCCESS;
325 matrix->GetZaxis()->SetRangeUser(-1,1);
336 double covariance = 0;
std::vector< double > getUniformBins(const size_t numBins, const double minVal, const double maxVal)
StatusCode checkInitialization(const JetUncertaintiesTool &uncTool) const
CorrelationMatrix(const TString &name, const int numBins, const double minVal, const double maxVal, const double fixedVal1, const double fixedVal2)
Helper class to provide type-safe access to aux data.
std::vector< double > getLogBins(const size_t numBins, const double minVal, const double maxVal)
EventInfoContainer_v1 EventInfoContainer
Define the latest version of the container.
double getCovariance(const JetUncertaintiesTool &uncTool, const xAOD::Jet *jet1, const xAOD::Jet *jet2) const
virtual StatusCode initializeForEta(const JetUncertaintiesTool &uncTool)
virtual StatusCode initializeForPt(const JetUncertaintiesTool &uncTool)
void setJetP4(const JetFourMom_t &p4)
#define JESUNC_ERROR_CODE
Temporary container used until we have I/O for AuxStoreInternal.
#define JESUNC_SAFE_DELETE(T)
double getCorrelation(const JetUncertaintiesTool &uncTool) const
xAOD::EventInfoContainer * m_eInfos
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual ~CorrelationMatrix()
void clear()
Erase all the elements in the collection.
Auxiliary information about the pileup events.
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
Class describing the basic event information.
#define JESUNC_NO_DEFAULT_CONSTRUCTOR
#define ATH_MSG_WARNING(x)
xAOD::JetContainer * m_jets
StatusCode setDefaultProperties(const JetUncertaintiesTool &uncTool)
JetContainer_v1 JetContainer
Definition of the current "jet container version".
const T * at(size_type n) const
Access an element, as an rvalue.
TH2D * buildMatrix(const std::vector< double > &bins) const
xAOD::EventInfo * m_eInfo