Loading [MathJax]/extensions/tex2jax.js
JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
MELADifermionResolutionModel.cc
Go to the documentation of this file.
1 #include <fstream>
2 #include <string>
3 #include <vector>
4 #include <cassert>
5 #include "TGraph.h"
7 
8 
9 MELADifermionResolutionModel::MELADifermionResolutionModel(TVar::Production prod_, float sqrts_, TString filename, TString extraName) :
10 valid(false),
11 prod(prod_),
12 sqrts(sqrts_),
13 varReco(0),
14 splineFactory(0),
15 recoBW(0)
16 {
17  TFile* finput = TFile::Open(filename, "read");
18  if (finput!=0){
19  TGraph* tg = (TGraph*)finput->Get("tg_recoBW");
20  if (tg!=0){
21  TString appendName = extraName + TVar::ProductionName(prod);
22  varReco = new RooRealVar(Form("%s_varReco", appendName.Data()), "", 0.1, sqrts*1000.);
23  splineFactory = new MELANCSplineFactory_1D(*varReco, appendName);
26  valid=(recoBW!=0);
27  }
28  finput->Close();
29  }
30 }
32  // Do not delete recoBW. It is owned by splineFactory.
33  delete splineFactory;
34  delete varReco;
35 }
37  float result = -1;
38  if (recoBW!=0){
39  if (val<0.){ /*result=-1;*/ }
40  else if (val<0.1) result=0;
41  else{
42  varReco->setVal(val);
43  result = recoBW->getVal();
44  result /= 2.*val; // Result is BW(s), not BW(m)
45  }
46  }
47  return result;
48 }
50 
MELADifermionResolutionModel.h
MELADifermionResolutionModel::getVal
float getVal(float val)
Definition: MELADifermionResolutionModel.cc:36
MELADifermionResolutionModel::recoBW
MELAFuncPdf * recoBW
Definition: MELADifermionResolutionModel.h:15
MELADifermionResolutionModel::splineFactory
MELANCSplineFactory_1D * splineFactory
Definition: MELADifermionResolutionModel.h:14
TVar::ProductionName
TString ProductionName(TVar::Production temp)
Definition: TVar.cc:64
MELANCSplineFactory_1D
Definition: MELANCSplineFactory_1D.h:12
MELADifermionResolutionModel::valid
bool valid
Definition: MELADifermionResolutionModel.h:10
MELADifermionResolutionModel::isProduction
bool isProduction(TVar::Production prod_)
Definition: MELADifermionResolutionModel.cc:49
MELADifermionResolutionModel::sqrts
float sqrts
Definition: MELADifermionResolutionModel.h:12
MELADifermionResolutionModel::MELADifermionResolutionModel
MELADifermionResolutionModel(TVar::Production prod_, float sqrts_, TString filename, TString extraName)
Definition: MELADifermionResolutionModel.cc:9
MELADifermionResolutionModel::varReco
RooRealVar * varReco
Definition: MELADifermionResolutionModel.h:13
MELANCSplineFactory_1D::setPoints
void setPoints(TTree *tree)
Definition: MELANCSplineFactory_1D.cc:21
MELADifermionResolutionModel::~MELADifermionResolutionModel
~MELADifermionResolutionModel()
Definition: MELADifermionResolutionModel.cc:31
MELADifermionResolutionModel::prod
TVar::Production prod
Definition: MELADifermionResolutionModel.h:11
sqrts
double sqrts
Definition: TMCFM.hh:290
TVar::Production
Production
Definition: TVar.hh:61
MELANCSplineFactory_1D::getPDF
MELAFuncPdf * getPDF()
Definition: MELANCSplineFactory_1D.h:37