|
|
Go to the documentation of this file.
23 udscResolutions_(nullptr),
24 bResolutions_(nullptr),
25 lepResolutions_(nullptr),
26 metResolutions_(nullptr),
27 jetEnergyResolutionScaleFactors_(nullptr),
28 jetEnergyResolutionEtaBinning_(nullptr),
46 const std::vector<edm::ParameterSet>* lepResolutions,
47 const std::vector<edm::ParameterSet>* metResolutions,
59 lepResolutions_(lepResolutions),
60 metResolutions_(metResolutions),
78 for (std::map<Constraint, TFitConstraintM*>::iterator it =
massConstr_.begin(); it !=
massConstr_.end(); ++it)
85 std::stringstream constr;
89 constr <<
" * hadronic W-mass (" <<
mW_ <<
" GeV) \n";
92 constr <<
" * leptonic W-mass (" <<
mW_ <<
" GeV) \n";
95 constr <<
" * hadronic t-mass (" <<
mTop_ <<
" GeV) \n";
98 constr <<
" * leptonic t-mass (" <<
mTop_ <<
" GeV) \n";
101 constr <<
" * neutrino mass (0 GeV) \n";
104 constr <<
" * equal t-masses \n";
107 constr <<
" * summed transverse momentum \n";
112 <<
"+++++++++++ TtSemiLepKinFitter Setup ++++++++++++ \n"
113 <<
" Parametrization: \n"
117 <<
" Constraints: \n"
118 << constr.str() <<
" Max(No iterations): " <<
maxNrIter_ <<
"\n"
120 <<
" Max(F) : " <<
maxF_ <<
"\n"
121 <<
"+++++++++++++++++++++++++++++++++++++++++++++++++ \n";
125 TMatrixD empty3x3(3, 3);
126 TMatrixD empty4x4(4, 4);
150 TMatrixD empty3x3(3, 3);
238 const TLorentzVector& p4HadQ,
239 const TLorentzVector& p4HadB,
240 const TLorentzVector& p4LepB,
241 const TLorentzVector& p4Lepton,
242 const TLorentzVector& p4Neutrino,
243 const int leptonCharge,
270 const TLorentzVector& p4HadQ,
271 const TLorentzVector& p4HadB,
272 const TLorentzVector& p4LepB,
273 const TLorentzVector& p4Lepton,
274 const TLorentzVector& p4Neutrino,
275 const TMatrixD& covHadP,
276 const TMatrixD& covHadQ,
277 const TMatrixD& covHadB,
278 const TMatrixD& covLepB,
279 const TMatrixD& covLepton,
280 const TMatrixD& covNeutrino,
281 const int leptonCharge) {
354 std::vector<pat::Jet>
jets;
362 if (fitsol.
getDecay() ==
"electron")
bool constrainSumPt_
internally use simple boolean for this constraint to reduce the per-event computing time
void setFitLepl(const pat::Particle &aFitLepl)
pat::Muon getCalLepm() const
TKinFitter * fitter_
kinematic fitter
const pat::Particle fittedNeutrino() const
return neutrino candidate
int maxNrIter_
maximal allowed number of iterations to be used for the fit
pat::Particle fittedHadP_
Param jetParam_
jet parametrization
pat::Jet getCalHadb() const
pat::Jet getCalHadp() const
const pat::Particle fittedHadB() const
return hadronic b quark candidate
const std::vector< edm::ParameterSet > * bResolutions_
Param metParam_
met parametrization
void setFitHadq(const pat::Particle &aFitHadq)
const std::vector< edm::ParameterSet > * metResolutions_
int fit(const std::vector< pat::Jet > &jets, const pat::Lepton< LeptonType > &leps, const pat::MET &met)
kinematic fit interface for PAT objects
void setFitHadb(const pat::Particle &aFitHadb)
TtSemiEvtSolution addKinFitInfo(TtSemiEvtSolution *asol)
add kin fit information to the old event solution (in for legacy reasons)
const std::vector< edm::ParameterSet > * lepResolutions_
std::vector< Constraint > constrList_
vector of constraints to be used
std::string param(const Param ¶m) const
convert Param to human readable form
pat::Particle fittedHadQ_
void setupFitter()
setup fitter
~TtSemiLepKinFitter()
default destructor
void setupConstraints()
initialize constraints
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
void setConstraint(Double_t constraint)
pat::Particle fittedNeutrino_
const std::vector< double > * jetEnergyResolutionEtaBinning_
pat::Jet getCalHadq() const
double fitProb() const
return fit probability
pat::MET getCalLepn() const
void setFitLepb(const pat::Particle &aFitLepb)
math::Error< 5 >::type CovarianceMatrix
TtSemiLepKinFitter()
default constructor
double mW_
W mass value used for constraints.
const pat::Particle fittedLepton() const
return lepton candidate
void printSetup() const
print fitter setup
const pat::Particle fittedHadQ() const
return hadronic light quark candidate
CovarianceMatrix * covM_
object used to construct the covariance matrices for the individual particles
void setFitHadp(const pat::Particle &aFitHadp)
const std::vector< edm::ParameterSet > * udscResolutions_
resolutions
pat::Electron getCalLepe() const
TFitConstraintEp * sumPxConstr_
double maxDeltaS_
maximal allowed chi2 (not normalized to degrees of freedom)
TAbsFitParticle * neutrino_
const pat::Particle fittedHadP() const
return hadronic light quark candidate
const TLorentzVector * getCurr4Vec()
XYZPointD XYZPoint
point in space with cartesian internal representation
virtual void setCovMatrix(const TMatrixD *theCovMatrix)
TAbsFitParticle * lepton_
pat::Jet getCalLepb() const
void setupJets()
initialize jet inputs
const pat::Particle fittedLepB() const
return leptonic b quark candidate
std::string getDecay() const
jetEnergyResolutionEtaBinning
jetEnergyResolutionScaleFactors
pat::Particle fittedLepton_
double mTop_
top mass value used for constraints
void addConstraint(TAbsFitConstraint *constraint)
void addParticles(TAbsFitParticle *p1, TAbsFitParticle *p2=nullptr, TAbsFitParticle *p3=nullptr, TAbsFitParticle *p4=nullptr, TAbsFitParticle *p5=nullptr, TAbsFitParticle *p6=nullptr, TAbsFitParticle *p7=nullptr, TAbsFitParticle *p8=nullptr, TAbsFitParticle *p9=nullptr, TAbsFitParticle *p10=nullptr)
void setProbChi2(double c)
void setFitLepn(const pat::Particle &aFitLepn)
Param lepParam_
lepton parametrization
double maxF_
maximal allowed distance from constraints
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
void addMeasParticle(TAbsFitParticle *particle)
TAbsFitParticle * hadB_
input particles
const std::vector< double > * jetEnergyResolutionScaleFactors_
scale factors for the jet energy resolution
TMatrixD setupMatrix(const pat::PATObject< T > &object, const TopKinFitter::Param param, const std::string &resolutionProvider="")
return covariance matrix for a PAT object
TFitConstraintEp * sumPyConstr_
void setupLeptons()
initialize lepton inputs
Param
supported parameterizations
leptonType
BASIC VERSION WITH ONLY MAIN LEPTON ID CRITERIA.
pat::Particle fittedLepB_
virtual void setIni4Vec(const TLorentzVector *pini)=0
Analysis-level particle class.
std::map< Constraint, TFitConstraintM * > massConstr_
supported constraints
pat::Particle fittedHadB_
output particles