CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
TtHadLRSignalSelCalc Class Reference

Class to calculate the jet combination LR value and purity from a root-file with fit functions. More...

#include "TopQuarkAnalysis/TopLeptonSelection/interface/TtHadLRSignalSelCalc.h"

Public Member Functions

void operator() (TtHadEvtSolution &)
 
 TtHadLRSignalSelCalc ()
 
 TtHadLRSignalSelCalc (const TString &, const std::vector< int > &)
 
 ~TtHadLRSignalSelCalc ()
 

Private Attributes

bool addPurity
 
LRHelpFunctionsmyLR
 

Detailed Description

Class to calculate the jet combination LR value and purity from a root-file with fit functions.

Author
Jan Heyninck - adapted hadronic version mfhansen

Definition at line 28 of file TtHadLRSignalSelCalc.h.

Constructor & Destructor Documentation

TtHadLRSignalSelCalc::TtHadLRSignalSelCalc ( )
TtHadLRSignalSelCalc::TtHadLRSignalSelCalc ( const TString &  fitInputPath,
const std::vector< int > &  observables 
)

Definition at line 7 of file TtHadLRSignalSelCalc.cc.

References addPurity, gather_cfg::cout, myLR, and LRHelpFunctions::readObsHistsAndFits().

7  {
8  std::cout << "=== Constructing a TtHadLRSignalSelCalc... " << std::endl;
9  myLR = new LRHelpFunctions();
10  addPurity = false;
11  if (observables[0] == -1)
12  addPurity = true;
13  myLR->readObsHistsAndFits(fitInputPath, observables, addPurity);
14  std::cout << "=== done." << std::endl;
15 }
Help functionalities to implement and evaluate LR ratio method.
LRHelpFunctions * myLR
void readObsHistsAndFits(const TString &, const std::vector< int > &, bool)
TtHadLRSignalSelCalc::~TtHadLRSignalSelCalc ( )

Definition at line 17 of file TtHadLRSignalSelCalc.cc.

References myLR.

17 { delete myLR; }
LRHelpFunctions * myLR

Member Function Documentation

void TtHadLRSignalSelCalc::operator() ( TtHadEvtSolution sol)

Definition at line 19 of file TtHadLRSignalSelCalc.cc.

References addPurity, LRHelpFunctions::calcLRval(), LRHelpFunctions::calcProb(), TtHadEvtSolution::getLRSignalEvtObsVal(), myLR, EcalTangentSkim_cfg::o, LRHelpFunctions::obsFitIncluded(), TtFullHadEvtBuilder_cfi::prob, TtHadEvtSolution::setLRSignalEvtLRval(), and TtHadEvtSolution::setLRSignalEvtProb().

19  {
20  // find the used observables
21  std::vector<double> obsVals;
22  for (unsigned int o = 0; o < 100; o++) {
23  if (myLR->obsFitIncluded(o))
24  obsVals.push_back(sol.getLRSignalEvtObsVal(o));
25  }
26 
27  // calculate the logLR and the purity
28  double logLR = myLR->calcLRval(obsVals);
29  double prob = -999.;
30  if (addPurity)
31  prob = myLR->calcProb(logLR);
32 
33  // fill these values to the members in the TtHadEvtSolution
34  sol.setLRSignalEvtLRval(logLR);
35  sol.setLRSignalEvtProb(prob);
36 }
double calcLRval(const std::vector< double > &)
double getLRSignalEvtObsVal(unsigned int) const
double calcProb(double)
bool obsFitIncluded(int)
void setLRSignalEvtProb(double plr)
LRHelpFunctions * myLR
void setLRSignalEvtLRval(double clr)

Member Data Documentation

bool TtHadLRSignalSelCalc::addPurity
private

Definition at line 37 of file TtHadLRSignalSelCalc.h.

Referenced by operator()(), and TtHadLRSignalSelCalc().

LRHelpFunctions* TtHadLRSignalSelCalc::myLR
private

Definition at line 36 of file TtHadLRSignalSelCalc.h.

Referenced by operator()(), TtHadLRSignalSelCalc(), and ~TtHadLRSignalSelCalc().