ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Mods/interface/HKFactorProducer.h
Revision: 1.9
Committed: Fri Sep 7 10:07:55 2012 UTC (12 years, 8 months ago) by ceballos
Content type: text/plain
Branch: MAIN
Changes since 1.8: +9 -4 lines
Log Message:
new functions for reweighting

File Contents

# User Rev Content
1 loizides 1.2 //--------------------------------------------------------------------------------------------------
2 ceballos 1.9 // $Id: HKFactorProducer.h,v 1.8 2011/11/27 06:17:45 ceballos Exp $
3 ceballos 1.1 //
4     // HKFactorProducer
5     //
6 loizides 1.2 // Produces the k factors from LO to NNLO.
7 ceballos 1.1 //
8     // Authors: G. Gomez-Ceballos
9 loizides 1.2 //--------------------------------------------------------------------------------------------------
10 ceballos 1.1
11     #ifndef MITPHYSICS_MODS_HKFACTORPRODUCER_H
12     #define MITPHYSICS_MODS_HKFACTORPRODUCER_H
13    
14     #include "MitAna/TreeMod/interface/BaseMod.h"
15     #include "MitAna/DataTree/interface/MCEventInfo.h"
16 ceballos 1.8 #include "MitAna/DataTree/interface/EmbedWeightCol.h"
17 ceballos 1.1 #include "MitPhysics/Mods/interface/HWWKFactorList.h"
18 ceballos 1.9 #include "MitPhysics/Mods/interface/PwhgWrapper.h"
19 ceballos 1.1
20     class TH1D;
21     class TH2D;
22    
23     namespace mithep
24     {
25     class HKFactorProducer : public BaseMod
26     {
27     public:
28     HKFactorProducer(const char *name="HKFactorProducer",
29     const char *title="KFactor information module");
30     ~HKFactorProducer();
31    
32 sixie 1.7 void SetProcessID(Int_t d) { fProcessID = d; }
33     void SetInputFilename(const char *s) { fInputFileName = s; }
34     void SetMCBosonsName(const char *s) { fMCBosonsName = s; }
35     void SetMCEventInfoName(const char *s) { fMCEvInfoName = s; }
36 ceballos 1.8 void SetEmbedWeightName(const char *s) { fEmbedWeightName = s; }
37 sixie 1.7 void SetIsData(Bool_t b) { fIsData = b; }
38     void SetMakePDFNtuple(Bool_t b) { fMakePDFNtuple = b; }
39 ceballos 1.9 void SetDoHiggsMhReweighting(Bool_t b) { fDoHiggsMhReweighting = b; }
40 sixie 1.7 void SetOutputName(const char *f) { fOutputName = f; }
41 ceballos 1.9 void SetMh(Double_t x) { fMh = x; }
42     void SetWidth(Double_t x) { fWidth = x; }
43 ceballos 1.1
44     protected:
45 loizides 1.2 void Process();
46     void SlaveBegin();
47 ceballos 1.6 void SlaveTerminate();
48 ceballos 1.1
49 sixie 1.7 Int_t fProcessID; //process id (from pythia)
50     TString fInputFileName; //input file name
51     TString fMCBosonsName; //boson collection input name
52     TString fMCEvInfoName; //event info branch name
53 ceballos 1.8 TString fEmbedWeightName; //tau embedding weight branch name
54 sixie 1.7 Bool_t fIsData; //=true then it does nothing (def=0)
55     Bool_t fMakePDFNtuple; //=true then it does nothing (def=0)
56 ceballos 1.9 Bool_t fDoHiggsMhReweighting; //=true then it does reweighting
57     Double_t fMh; //fixed Higgs mass
58     Double_t fWidth; //fixed Higgs width
59 sixie 1.7 const MCEventInfo *fMCEventInfo; //!event info branch pointer
60 ceballos 1.8 const EmbedWeightCol *fEmbedWeight; //!tau embedding weight branch pointer
61 sixie 1.7 TH1D *hDHKFactor[10]; //!output histograms
62     TFile *fOutputFile; //output file handle
63     TString fOutputName; //output file name
64 ceballos 1.1
65 sixie 1.7 float fTreeVariables[8]; //Ntuple variables
66     TTree *fTree; //ntuple tree
67 ceballos 1.9 pwhegwrapper fWeightAlgo; //Higgs reweighting algorithm
68 ceballos 1.5
69 loizides 1.2 ClassDef(HKFactorProducer, 1) // Module to produce k factors
70 ceballos 1.1 };
71     }
72     #endif