KLFitter
v1.3.2
Documentation of the KLFitter library -- The Kinematic Likelihood Fitter
|
This is an extension of LikelihoodTopLeptonJets, which adds angular information to the likelihood. More...
#include <LikelihoodTopLeptonJets_Angular.h>
Public Member Functions | |
Constructors and destructors | |
LikelihoodTopLeptonJets_Angular () | |
The (defaulted) constructor. | |
~LikelihoodTopLeptonJets_Angular () | |
The (defaulted) destructor. | |
Member functions (misc) | |
double | LogLikelihood (const std::vector< double > ¶meters) override |
The posterior probability definition, overloaded from BCModel. More... | |
![]() | |
LikelihoodTopLeptonJets () | |
The default constructor. More... | |
~LikelihoodTopLeptonJets () | |
The (defaulted) destructor. | |
void | SetFlagTopMassFixed (bool flag) |
Set a flag. More... | |
void | SetFlagGetParSigmasFromTFs (bool flag) |
Set a flag. More... | |
void | SetLeptonType (LeptonType leptontype) |
Set the type of lepton. More... | |
void | SetLeptonType (int leptontype) |
Set the type of lepton. More... | |
void | DefineParameters () override |
Define the parameters of the fit. More... | |
std::vector< double > | GetInitialParameters () override |
Get initial values for the parameters. More... | |
virtual std::vector< double > | GetInitialParametersWoNeutrinoPz () |
Get initial values for the parameters with a dummy of "0.0" for the neutrino pz. More... | |
std::vector< double > | LogLikelihoodComponents (std::vector< double > parameters) override |
The posterior probability definition, overloaded from BCModel. More... | |
int | SetET_miss_XY_SumET (double etx, double ety, double sumet) override |
Set the values for the missing ET x and y components and the m_et_miss_sum. More... | |
void | RequestResolutionFunctions () override |
Request the necessary resolution functions from the detector. | |
![]() | |
LikelihoodBase (Particles **particles=0) | |
The default constructor. More... | |
virtual | ~LikelihoodBase () |
The default destructor. | |
KLFitter::PhysicsConstants * | PhysicsConstants () |
Return the table of physics constants. More... | |
KLFitter::DetectorBase * | Detector () |
Return the detector. More... | |
KLFitter::Particles ** | PParticlesPermuted () |
Return the set of measured particles. More... | |
KLFitter::Particles * | ParticlesModel () |
Return the set of model particles. More... | |
int | NParticlesModel () |
Return the number of model particles. More... | |
int | NParameters () |
Return the number of parameters. More... | |
double | ParMin (int index) |
Return the lower boundary of a parameter. More... | |
double | ParMax (int index) |
Return the upper boundary of a parameter. More... | |
BtaggingMethod | GetBTagging () |
Get flag to use b-tagging or not. More... | |
bool | FlagIntegrate () |
int | SetPhysicsConstants (KLFitter::PhysicsConstants *physicsconstants) |
Set the physics constants. More... | |
virtual int | SetDetector (KLFitter::DetectorBase **detector) |
Set the detector. More... | |
int | SetParticlesPermuted (KLFitter::Particles **particles) |
Set the measured particles. More... | |
int | SetPermutations (std::unique_ptr< KLFitter::Permutations > *permutations) |
Set the permutation object. More... | |
int | SetParameterRange (int index, double parmin, double parmax) |
Set the range of a model parameter. More... | |
int | SetInitialParameters (std::vector< double > const ¶meters) |
Set the initial values for the minimization, etc. More... | |
int | SetInitialParametersNChains (std::vector< double > const ¶meters, unsigned int nchains) |
Set the initial values for the minimization, etc. More... | |
int | SetBTagging (BtaggingMethod btagmethod) |
Set which b-tagging you wish to use. More... | |
int | SetFlagBTagging (bool flag) |
THIS IS AN OUTDATED METHOD - JUST HERE FOR BACKWARD COMPATIBILITY. More... | |
int | SetFlagIsNan (bool flag) |
Set flag FlagIsNan. More... | |
bool | GetFlagIsNan (void) |
Get flag FlagIsNan. More... | |
int | SetFlagIntegrate (bool flag) |
Set flag to integrate or not. More... | |
void | SetFlagUseJetMass (bool flag) |
Set flag to use measured jet masses (true) instead of parton masses (false);. | |
virtual int | Initialize () |
Initialize the likelihood for the event. More... | |
void | PropagateBTaggingInformation () |
Propagate the b-tagging information from the permuted (measured) particles to the model particles. | |
virtual double | LogAPrioriProbability (const std::vector< double > &) override |
The prior probability definition, overloaded from BCModel. More... | |
virtual double | LogEventProbability () |
Return the log of the event probability fof the current combination. More... | |
virtual double | LogEventProbabilityBTag () |
Return the contribution from b tagging to the log of the event probability for the current combination. More... | |
virtual int | RemoveForbiddenParticlePermutations () |
Remove forbidden particle permutations. More... | |
virtual bool | NoTFProblem (std::vector< double > parameters) |
Check if there are TF problems. More... | |
std::vector< double > | GetBestFitParameters () |
Returns the best fit parameters, overloaded from BCModel. More... | |
std::vector< double > | GetBestFitParameterErrors () |
Returns the errors of the best fit parameters, overloaded from BCModel. More... | |
double | GetBestFitParameter (unsigned int index) |
Returns the best fit parameters, overloaded from BCModel. More... | |
double | GetBestFitParameterError (unsigned int index) |
Returns the errors of the best fit parameter i, overloaded from BCModel. More... | |
virtual int | LHInvariantPermutationPartner (int, int, int *, int *) |
Check if the permutation is LH invariant. More... | |
int | GetParametersFromCache (int iperm) |
Write parameters from fCachedParametersVector.at(iperm) to fCachedParameters. More... | |
int | SetParametersToCache (int iperm, int nperms) |
Write parameters to fCachedParametersVector.at(iperm) from GetBestFitParameter() More... | |
double | GetIntegral () |
int | ResetCache () |
Resets the values of all parameter cache vectors. More... | |
Protected Member Functions | |
int | AdjustParameterRanges () override |
Adjust ranges of the parameters. More... | |
![]() | |
int | BuildModelParticles () override |
Build the model particles from the best fit parameters. More... | |
int | CalculateLorentzVectors (std::vector< double > const ¶meters) override |
Update 4-vector values of the model particles. More... | |
std::vector< double > | CalculateNeutrinoPzSolutions (TLorentzVector *additionalParticle=nullptr) |
Calculates the neutrino pz solutions from the measured values and the W mass. More... | |
int | DefineModelParticles () override |
Define the model particles. More... | |
std::vector< double > | GetNeutrinoPzSolutions () |
Return the neutrino pz solutions from the measured values and the W mass. More... | |
int | RemoveInvariantParticlePermutations () override |
Remove the invariant particle permutations. More... | |
int | SavePermutedParticles () override |
Save permuted particles. More... | |
int | SaveResolutionFunctions () override |
Save the resolution functions from the detector to the internal pointers. More... | |
![]() | |
double | SetPartonMass (double jetmass, double quarkmass, double *px, double *py, double *pz, double e) |
Set model parton mass according to fFlagUseJetMass. More... | |
Additional Inherited Members | |
![]() | |
enum | LeptonType { kElectron, kMuon } |
Enumerator for the lepton type. More... | |
enum | Parameters { parBhadE, parBlepE, parLQ1E, parLQ2E, parLepE, parNuPx, parNuPy, parNuPz, parTopM } |
Enumerator for the fitted parameters of this likelihood. More... | |
![]() | |
enum | BtaggingMethod { kNotag, kVeto, kVetoNoFit, kVetoNoFitLight, kVetoNoFitBoth, kVetoHybridNoFit, kWorkingPoint, kVetoLight, kVetoBoth } |
Enumerate for b-tagging possibilities. | |
![]() | |
bool | m_flag_top_mass_fixed |
A flag for using a fixed top mass (true) or not (false). | |
bool | m_flag_get_par_sigmas_from_TFs |
Flag for using ResolutionBase::GetSigma() to retrieve the parameter ranges. | |
double | m_et_miss_x |
The values of the x component of the missing ET. | |
double | m_et_miss_y |
The values of the y component of the missing ET. | |
double | m_et_miss_sum |
The values of the total scalar ET. | |
LeptonType | m_lepton_type |
An index deciding if the event is electron (1) or muon (2) plus jets. | |
ResolutionBase * | m_res_energy_bhad |
Pointer to resolution function for hadronic b quark. | |
ResolutionBase * | m_res_energy_blep |
Pointer to resolution function for leptonic b quark. | |
ResolutionBase * | m_res_energy_lq1 |
Pointer to resolution function for first light quark jet. | |
ResolutionBase * | m_res_energy_lq2 |
Pointer to resolution function for second light quark jet. | |
ResolutionBase * | m_res_lepton |
Pointer to resolution function for the lepton. | |
ResolutionBase * | m_res_met |
Pointer to resolution function for MET. | |
double | m_bhad_meas_e |
double | m_bhad_meas_p |
double | m_bhad_meas_m |
double | m_bhad_meas_deteta |
double | m_bhad_meas_eta |
double | m_bhad_meas_phi |
double | m_bhad_meas_px |
double | m_bhad_meas_py |
double | m_bhad_meas_pz |
double | m_blep_meas_e |
double | m_blep_meas_p |
double | m_blep_meas_m |
double | m_blep_meas_deteta |
double | m_blep_meas_eta |
double | m_blep_meas_phi |
double | m_blep_meas_px |
double | m_blep_meas_py |
double | m_blep_meas_pz |
double | m_lq1_meas_e |
double | m_lq1_meas_p |
double | m_lq1_meas_m |
double | m_lq1_meas_deteta |
double | m_lq1_meas_eta |
double | m_lq1_meas_phi |
double | m_lq1_meas_px |
double | m_lq1_meas_py |
double | m_lq1_meas_pz |
double | m_lq2_meas_e |
double | m_lq2_meas_p |
double | m_lq2_meas_m |
double | m_lq2_meas_deteta |
double | m_lq2_meas_eta |
double | m_lq2_meas_phi |
double | m_lq2_meas_px |
double | m_lq2_meas_py |
double | m_lq2_meas_pz |
double | m_lep_meas_e |
double | m_lep_meas_deteta |
double | m_lep_meas_sintheta |
double | m_lep_meas_pt |
double | m_lep_meas_px |
double | m_lep_meas_py |
double | m_lep_meas_pz |
double | m_bhad_fit_e |
double | m_bhad_fit_px |
double | m_bhad_fit_py |
double | m_bhad_fit_pz |
double | m_blep_fit_e |
double | m_blep_fit_px |
double | m_blep_fit_py |
double | m_blep_fit_pz |
double | m_lq1_fit_e |
double | m_lq1_fit_px |
double | m_lq1_fit_py |
double | m_lq1_fit_pz |
double | m_lq2_fit_e |
double | m_lq2_fit_px |
double | m_lq2_fit_py |
double | m_lq2_fit_pz |
double | m_lep_fit_e |
double | m_lep_fit_px |
double | m_lep_fit_py |
double | m_lep_fit_pz |
double | m_nu_fit_e |
double | m_nu_fit_px |
double | m_nu_fit_py |
double | m_nu_fit_pz |
double | m_wlep_fit_e |
double | m_wlep_fit_px |
double | m_wlep_fit_py |
double | m_wlep_fit_pz |
double | m_whad_fit_e |
double | m_whad_fit_px |
double | m_whad_fit_py |
double | m_whad_fit_pz |
double | m_whad_fit_m |
double | m_wlep_fit_m |
double | m_thad_fit_m |
double | m_tlep_fit_m |
![]() | |
KLFitter::Particles ** | fParticlesPermuted |
A pointer to the measured particles. | |
std::unique_ptr< KLFitter::Permutations > * | fPermutations |
A pointer to the permutation object. | |
std::unique_ptr< KLFitter::Particles > | fParticlesModel |
A pointer to the model particles. | |
KLFitter::PhysicsConstants | fPhysicsConstants |
A pointer to the table of physics constants. | |
KLFitter::DetectorBase ** | fDetector |
A pointer to the detector. | |
std::vector< double > | fEventProbability |
The event probabilities for the different permutations. | |
bool | fFlagIntegrate |
A flag to integrate over the likelihood or not. | |
bool | fFlagIsNan |
A flag for knowing that Minuit gave parameters with NaN values to LogLikelihood. | |
bool | fFlagUseJetMass |
A flag for using the measured jet masses (true) instead of parton masses (false);. | |
bool | fTFgood |
Global variable for TF problems. | |
BtaggingMethod | fBTagMethod |
Name of btagging enum. | |
std::vector< double > | fCachedParameters |
The cached parameters used for the current permutation. | |
std::vector< double > | fCachedParameterErrors |
The cached parameter errors used for the current permutation. | |
std::vector< std::vector< double > > | fCachedParametersVector |
A vector of cached parameters, one for each permutation. More... | |
std::vector< std::vector< double > > | fCachedParameterErrorsVector |
A vector of cached parameter errors, one for each permutation. More... | |
double | fCachedNormalization |
The cached normalization, needed for the overloaded BCIntegrate::GetIntegral. | |
std::vector< double > | fCachedNormalizationVector |
A vector of cached parameters, one for each permutation. More... | |
This is an extension of LikelihoodTopLeptonJets, which adds angular information to the likelihood.
|
overrideprotectedvirtual |
Adjust ranges of the parameters.
As opposed to LikelihoodTopLeptonJets::AdjustParameterRanges(), this does not utilize the flag m_flag_get_par_sigmas_from_TFs, but only uses a fixed sigma to calculate the parameter range and set it with SetParameterRange(). If m_flag_top_mass_fixed is set, the top mass will be fixed to the pole mass.
Reimplemented from KLFitter::LikelihoodTopLeptonJets.
|
overridevirtual |
The posterior probability definition, overloaded from BCModel.
In addition to what is implemented in LikelihoodTopLeptonJets::LogLikelihood(), this also includes angular information in the calculation of the log likelihood.
parameters | A vector of parameters (double values). |
Reimplemented from KLFitter::LikelihoodTopLeptonJets.