CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TtHadLRJetCombCalc.cc
Go to the documentation of this file.
1 // $Id: TtHadLRJetCombCalc.cc,v 1.3 2013/05/28 17:57:05 gartung Exp $
2 // copied TtSemiLRJetCombCalc.cc,v 1.4 2007/06/18 14:08:16 by heyninck
3 //
5 
6 // constructor with path; default should not be used
7 TtHadLRJetCombCalc::TtHadLRJetCombCalc(const TString& fitInputPath, const std::vector<int>& observables)
8 {
9  std::cout << "=== Constructing a TtHadLRJetCombCalc... " << std::endl;
10  myLR = new LRHelpFunctions();
11  addPurity = false;
12  if(observables[0] == -1) addPurity = true;
13  myLR -> readObsHistsAndFits(fitInputPath, observables, addPurity);
14  std::cout << "=== done." << std::endl;
15 }
16 
18 {
19  delete myLR;
20 }
21 
23 {
24  // find the used observables
25  std::vector<double> obsVals;
26  for(unsigned int o = 0; o<100; o++){
27  if( myLR->obsFitIncluded(o) ) {obsVals.push_back(sol.getLRJetCombObsVal(o)); };
28  }
29 
30  // calculate the logLR and the purity
31  double logLR = myLR->calcLRval(obsVals);
32  double prob = -999.;
33  if(addPurity) prob = myLR->calcProb(logLR);
34 
35  // fill these values to the members in the TtHadEvtSolution
36  sol.setLRJetCombLRval(logLR);
37  sol.setLRJetCombProb(prob);
38 }
double calcLRval(const std::vector< double > &)
void operator()(TtHadEvtSolution &)
LRHelpFunctions * myLR
double calcProb(double)
Help functionalities to implement and evaluate LR ratio method.
bool obsFitIncluded(int)
double getLRJetCombObsVal(unsigned int) const
void setLRJetCombProb(double plr)
tuple cout
Definition: gather_cfg.py:121
void setLRJetCombLRval(double clr)