|
ATLAS Offline Software
|
Go to the documentation of this file.
12 const std::string &decName_negLogSigma2):
13 m_decName_z(decName_z),
14 m_decName_negLogSigma2(decName_negLogSigma2){
21 throw std::runtime_error(
"DipzLikelihood::checkedRatio dividing by 0");
28 const std::string &decName)
const
32 if (!(
ip->getAttribute(decName, momentValue))) {
33 throw std::runtime_error(
"Impossible to retrieve decorator \'" +
34 decName +
"\' for jet hypo");
44 double sigma_squared =
47 double muoversigmasq =
50 return acml + muoversigmasq;
55 double sigma_squared =
60 return acml + oneoversigmasq;
69 double dipz_negLogSigmaSq =
72 double sigma_squared =
std::exp(-1 * dipz_negLogSigmaSq);
76 + 0.5 * dipz_negLogSigmaSq
79 return acml + logterm;
90 return this->calcNum(sum, jp);});
96 return this->calcDenom(sum, jp);});
105 return this->calcLogTerm(sum, jp, zhat);});
112 const std::string &decName_negLogSigma2):
113 m_likelihoodCalculator(decName_z, decName_negLogSigma2) {
const std::string m_decName_negLogSigma2
DipzLikelihood(const std::string &decName_z, const std::string &decName_negLogSigma2)
double getDipzMLPLDecValue(const pHypoJet &ip, const std::string &decName) const
bool accumulate(AccumulateMap &map, std::vector< module_t > const &modules, FPGATrackSimMatrixAccumulator const &acc)
Accumulates an accumulator (e.g.
bool operator()(const HypoJetVector &, const HypoJetVector &)
DipzLikelihood m_likelihoodCalculator
double checkedRatio(double num, double den) const
double calcLogTerm(double acmlt, const pHypoJet &ip, double zhat) const
double calcNum(double acmlt, const pHypoJet &ip) const
std::shared_ptr< const HypoJet::IJet > pHypoJet
std::vector< pHypoJet > HypoJetVector
double calcDenom(double acmlt, const pHypoJet &ip) const
const std::string m_decName_z
double operator()(const HypoJetVector &) const
constexpr int pow(int base, int exp) noexcept
DipzLikelihoodCmp(const std::string &decName_z, const std::string &decName_negLogSigma2)