Go to the documentation of this file. 1 #ifndef TtFullHadKinFitter_h
2 #define TtFullHadKinFitter_h
6 #include "TLorentzVector.h"
48 const std::vector<edm::ParameterSet>*
bResolutions =
nullptr,
60 const std::vector<edm::ParameterSet>*
bResolutions =
nullptr,
67 int fit(
const std::vector<pat::Jet>&
jets);
165 unsigned int jetParam,
199 unsigned int jetParam,
224 std::list<TtFullHadKinFitter::KinFitResult>
fit(
const std::vector<pat::Jet>&
jets);
228 bool doBTagging(
const std::vector<pat::Jet>&
jets,
const unsigned int& bJetCounter, std::vector<int>& combi);
237 std::vector<TtFullHadKinFitter::Constraint>
constraints(
const std::vector<unsigned int>& configParameters);
Param jetParam_
jet parametrization
int fit(const std::vector< pat::Jet > &jets)
kinematic fit interface
int maxNComb_
maximal number of combinations to be written to the event
void setOutput(int maxNComb)
set number of combinations of output
double maxDeltaS_
maximal chi2 equivalent
pat::Particle fittedLightQ_
void setMatchInvalidity(bool invalidMatch)
set the validity of a match
bool invalidMatch_
match is invalid
TKinFitter * fitter_
kinematic fitter
std::vector< int > match_
the combination that should be used
TtHadEvtSolution addKinFitInfo(TtHadEvtSolution *asol)
add kin fit information to the old event solution (in for legacy reasons)
CovarianceMatrix * covM_
get object resolutions and put them into a matrix
void setupFitter()
setup fitter
const pat::Particle fittedB() const
return fitted b quark candidate
TAbsFitParticle * lightQBar_
std::vector< double > jetEnergyResolutionEtaBinning_
TAbsFitParticle * b_
input particles
unsigned int jetParam_
numbering of different possible jet parametrizations
const pat::Particle fittedLightP() const
return fitted light quark candidate
void setBTagging(bool useBTagging, unsigned int bTags, std::string bTagAlgo, double minBTagValueBJet, double maxBTagValueNonBJet)
set all parameters for b-tagging
double mTop_
top mass value used for constraints
bool doBTagging(const std::vector< pat::Jet > &jets, const unsigned int &bJetCounter, std::vector< int > &combi)
void setupJets()
initialize jet inputs
TtFullHadKinFitter::Constraint constraint(unsigned int configParameter)
double mW_
W mass value used for constraints.
void setMatch(const std::vector< int > &match)
set match to be used
std::vector< Constraint > constraints_
vector of constraints to be used
std::list< TtFullHadKinFitter::KinFitResult > fit(const std::vector< pat::Jet > &jets)
do the fitting and return fit result
std::vector< edm::ParameterSet > bResolutions_
Analysis-level calorimeter jet class.
void setJEC(std::string jetCorrectionLevel)
set jec level
std::vector< double > jetEnergyResolutionScaleFactors_
scale factors for the jet energy resolution
std::map< Constraint, TFitConstraintM * > massConstr_
supported constraints
TtFullHadKinFitter * fitter
kinematic fit interface
double maxF_
maximal deviation for contstraints
const std::vector< edm::ParameterSet > * udscResolutions_
resolutions
const pat::Particle fittedLightPBar() const
return fitted light quark candidate
void printSetup() const
print fitter setup
unsigned int maxNrIter_
maximal number of iterations to be performed for the fit
Constraint
supported constraints
bool useOnlyMatch_
fit or only a certain combination
TAbsFitParticle * lightPBar_
std::string jetCorrectionLevel_
correction level for jets
pat::Jet corJet(const pat::Jet &jet, const std::string &quarkType)
helper function to construct the proper corrected jet for its corresponding quarkType
pat::Particle fittedB_
output particles
const pat::Particle fittedLightQBar() const
return fitted light quark candidate
const std::vector< double > * jetEnergyResolutionScaleFactors_
scale factors for the jet energy resolution
const pat::Particle fittedBBar() const
return fitted b quark candidate
const std::vector< double > * jetEnergyResolutionEtaBinning_
std::string bTagAlgo_
input tag for b-tagging algorithm
std::pair< typename Association::data_type::first_type, double > match(Reference key, Association association, bool bestMatchByMaxValue)
Generic matching function.
const std::vector< edm::ParameterSet > * bResolutions_
KinFit()
default constructor
std::vector< TtFullHadKinFitter::Constraint > constraints(const std::vector< unsigned int > &configParameters)
std::vector< unsigned > constraints_
numbering of different possible kinematic constraints
unsigned int bTags_
minimal number of b-jets
TAbsFitParticle * lightQ_
pat::Particle fittedLightPBar_
std::vector< int > JetCombi
pat::Particle fittedLightP_
jetEnergyResolutionEtaBinning
jetEnergyResolutionScaleFactors
~KinFit()
default destructor
void setFitter(int maxNJets, unsigned int maxNrIter, double maxDeltaS, double maxF, unsigned int jetParam, const std::vector< unsigned > &constraints, double mW, double mTop)
set parameters for fitter
void setResolutions(const std::vector< edm::ParameterSet > &udscResolutions, const std::vector< edm::ParameterSet > &bResolutions, const std::vector< double > &jetEnergyResolutionScaleFactors, const std::vector< double > &jetEnergyResolutionEtaBinning)
set resolutions
std::vector< TtFullHadKinFitter::Constraint > intToConstraint(const std::vector< unsigned int > &constraints)
used to convert vector of int's to vector of constraints (just used in TtFullHadKinFitter(int,...
double minBTagValueBJet_
min value of bTag for a b-jet
void setupConstraints()
initialize constraints
TtFullHadKinFitter()
default constructor
int maxNJets_
maximal number of jets (-1 possible to indicate 'all')
class that does the fitting
TAbsFitParticle * lightP_
bool operator<(const KinFitResult &rhs)
pat::Particle fittedLightQBar_
double maxBTagValueNonBJet_
max value of bTag for a non-b-jet
void setUseOnlyMatch(bool useOnlyMatch)
set useOnlyMatch
~TtFullHadKinFitter()
default destructor
Param
supported parameterizations
TtFullHadKinFitter::Param param(unsigned int configParameter)
Analysis-level particle class.
const pat::Particle fittedLightQ() const
return fitted light quark candidate
pat::Particle fittedBBar_
std::vector< edm::ParameterSet > udscResolutions_
store the resolutions for the jets