1 #ifndef TtSemiLepKinFitter_h 2 #define TtSemiLepKinFitter_h 6 #include "TLorentzVector.h" 51 const std::vector<edm::ParameterSet>*
bResolutions =
nullptr,
52 const std::vector<edm::ParameterSet>* lepResolutions =
nullptr,
53 const std::vector<edm::ParameterSet>* metResolutions =
nullptr,
60 template <
class LeptonType>
63 int fit(
const TLorentzVector& p4HadP,
64 const TLorentzVector& p4HadQ,
65 const TLorentzVector& p4HadB,
66 const TLorentzVector& p4LepB,
67 const TLorentzVector& p4Lepton,
68 const TLorentzVector& p4Neutrino,
69 const int leptonCharge,
72 int fit(
const TLorentzVector& p4HadP,
73 const TLorentzVector& p4HadQ,
74 const TLorentzVector& p4HadB,
75 const TLorentzVector& p4LepB,
76 const TLorentzVector& p4Lepton,
77 const TLorentzVector& p4Neutrino,
78 const TMatrixD& covHadP,
79 const TMatrixD& covHadQ,
80 const TMatrixD& covHadB,
81 const TMatrixD& covLepB,
82 const TMatrixD& covLepton,
83 const TMatrixD& covNeutrino,
84 const int leptonCharge);
155 template <
class LeptonType>
169 const TLorentzVector p4HadP(hadP.
px(), hadP.
py(), hadP.
pz(), hadP.
energy());
170 const TLorentzVector p4HadQ(hadQ.
px(), hadQ.
py(), hadQ.
pz(), hadQ.
energy());
171 const TLorentzVector p4HadB(hadB.
px(), hadB.
py(), hadB.
pz(), hadB.
energy());
172 const TLorentzVector p4LepB(lepB.
px(), lepB.
py(), lepB.
pz(), lepB.
energy());
173 const TLorentzVector p4Lepton(lepton.px(), lepton.py(), lepton.pz(), lepton.energy());
174 const TLorentzVector p4Neutrino(neutrino.
px(), neutrino.
py(), 0, neutrino.
et());
Analysis-level MET class.
const pat::Particle fittedHadP() const
return hadronic light quark candidate
TAbsFitParticle * hadB_
input particles
Param
supported parameterizations
const std::vector< edm::ParameterSet > * udscResolutions_
resolutions
TAbsFitParticle * neutrino_
const pat::Particle fittedNeutrino() const
return neutrino candidate
const pat::Particle fittedLepB() const
return leptonic b quark candidate
double px() const final
x coordinate of momentum vector
bool constrainSumPt_
internally use simple boolean for this constraint to reduce the per-event computing time ...
jetEnergyResolutionScaleFactors
TMatrixD setupMatrix(const pat::PATObject< T > &object, const TopKinFitter::Param param, const std::string &resolutionProvider="")
return covariance matrix for a PAT object
TFitConstraintEp * sumPyConstr_
pat::Particle fittedHadP_
pat::Particle fittedLepB_
Param lepParam_
lepton parametrization
pat::Particle fittedHadB_
output particles
const std::vector< edm::ParameterSet > * bResolutions_
TAbsFitParticle * lepton_
int fit(const std::vector< pat::Jet > &jets, const pat::Lepton< LeptonType > &leps, const pat::MET &met)
kinematic fit interface for PAT objects
void setupJets()
initialize jet inputs
const std::vector< edm::ParameterSet > * lepResolutions_
void printSetup() const
print fitter setup
double et() const final
transverse energy
double pz() const final
z coordinate of momentum vector
pat::Particle fittedLepton_
Analysis-level lepton class.
const std::vector< double > * jetEnergyResolutionScaleFactors_
scale factors for the jet energy resolution
double energy() const final
energy
jetEnergyResolutionEtaBinning
Param jetParam_
jet parametrization
const pat::Particle fittedHadB() const
return hadronic b quark candidate
TtSemiLepKinFitter()
default constructor
std::map< Constraint, TFitConstraintM * > massConstr_
supported constraints
Param metParam_
met parametrization
CovarianceMatrix * covM_
object used to construct the covariance matrices for the individual particles
pat::Particle fittedHadQ_
TtSemiEvtSolution addKinFitInfo(TtSemiEvtSolution *asol)
add kin fit information to the old event solution (in for legacy reasons)
~TtSemiLepKinFitter()
default destructor
void setupConstraints()
initialize constraints
std::vector< Constraint > constrList_
vector of constraints to be used
void setupLeptons()
initialize lepton inputs
TFitConstraintEp * sumPxConstr_
Analysis-level particle class.
double py() const final
y coordinate of momentum vector
Analysis-level calorimeter jet class.
const pat::Particle fittedHadQ() const
return hadronic light quark candidate
const pat::Particle fittedLepton() const
return lepton candidate
void setupFitter()
setup fitter
pat::Particle fittedNeutrino_
const std::vector< double > * jetEnergyResolutionEtaBinning_
TKinFitter * fitter_
kinematic fitter
Constraint
supported constraints
const std::vector< edm::ParameterSet > * metResolutions_