ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbb/python/prepare_environment.py
Revision: 1.5
Committed: Sat May 12 06:50:49 2012 UTC (13 years ago) by peller
Content type: text/x-python
Branch: MAIN
Changes since 1.4: +3 -3 lines
Log Message:
update

File Contents

# User Rev Content
1 peller 1.1 #!/usr/bin/env python
2     from copytree import copytree
3     from printcolor import printc
4     from samplesclass import sample
5     import pickle
6    
7    
8 peller 1.3 prefix='ZllH.May8Reg.'
9 peller 1.1
10 peller 1.4 lumi=4980
11 peller 1.1
12 peller 1.3 pathIN='/scratch/May08/'
13     pathOUT='/scratch/May08/env/'
14 peller 1.1
15     weightexpression='((0.46502*PUweight+0.53498*PUweight2011B)*weightTrig)'
16    
17 peller 1.3 #this is only to speed it up, remove for final trees!
18     Precut='& V.pt > 50 & V.mass > 75. & V.mass < 105 & hJet_pt[0] > 20. & hJet_pt[1] > 20. & abs(hJet_eta[0]) < 2.4 & abs(hJet_eta[1]) < 2.4'
19 peller 1.2
20    
21 peller 1.1
22     #Montecarlos
23     InFiles0 = ['WW_TuneZ2_7TeV_pythia6_tauola', 'WZ_TuneZ2_7TeV_pythia6_tauola','ZZ_TuneZ2_7TeV_pythia6_tauola','TTJets_TuneZ2_7TeV-madgraph-tauola','T_TuneZ2_s-channel_7TeV-powheg-tauola','T_TuneZ2_t-channel_7TeV-powheg-tauola', 'T_TuneZ2_tW-channel-DR_7TeV-powheg-tauola','Tbar_TuneZ2_s-channel_7TeV-powheg-tauola','Tbar_TuneZ2_t-channel_7TeV-powheg-tauola', 'Tbar_TuneZ2_tW-channel-DR_7TeV-powheg-tauola','ZH_ZToLL_HToBB_M-110_7TeV-powheg-herwigpp','ZH_ZToLL_HToBB_M-115_7TeV-powheg-herwigpp','ZH_ZToLL_HToBB_M-120_7TeV-powheg-herwigpp','ZH_ZToLL_HToBB_M-125_7TeV-powheg-herwigpp','ZH_ZToLL_HToBB_M-130_7TeV-powheg-herwigpp']
24     samplenames0 =['WW','WZ','ZZ','TT','ST_s','ST_t','ST_tW','STbar_s','STbar_t','STbar_tW','ZH110','ZH115','ZH120','ZH125','ZH130']
25     sampletypes0 =['BKG','BKG','BKG','BKG','BKG','BKG','BKG','BKG','BKG','BKG','SIG','SIG','SIG','SIG','SIG']
26     samplesgroup0=['VV','VV','VV','TT','ST','ST','ST','ST','ST','ST','ZH','ZH','ZH','ZH','ZH']
27     xsecs0 = [42.9, 18.3, 5.9, 165, 3.19, 41.92, 7.87, 1.44, 22.65, 7.87, 0.4721*0.100974*0.745, 0.4107*0.100974*0.704, 0.3598*0.100974*0.648, 0.3158*0.100974*0.577, 0.2778*0.100974*0.493]
28 peller 1.5 SF0=[1.0,1.0,1.0,1.04,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]
29 peller 1.1 Aprefix0 = ['']
30     cut0 = ['(Vtype == 1 || Vtype == 0) && EVENT.json && hbhe']
31    
32     #split DY in flavours
33     #genZpt < 120
34     InFiles1 = ['DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola']*3
35     samplenames1 =['Zudsg','Zbb','Zcc']
36     sampletypes1 =['BKG']*3
37     samplesgroup1=['DYlight','DYb','DYc']
38     xsecs1 = [3048]*3
39 peller 1.5 SF1=[1.00,0.95,1.24]
40 peller 1.2 Aprefix1 = ['udsg_120_', 'b_120_','c_120_']
41 peller 1.1 cut1 = ['(Vtype == 1 || Vtype == 0) & EVENT.json & hbhe & eventFlav != 5 & eventFlav != 4 & genZpt <= 120.','(Vtype == 1 || Vtype == 0) & EVENT.json & hbhe & eventFlav == 5 & genZpt <= 120.','(Vtype == 1 || Vtype == 0) & EVENT.json & hbhe & eventFlav == 4 & genZpt <= 120.']
42    
43     #genZpt > 120
44     InFiles2 = ['DYJetsToLL_PtZ-100_TuneZ2_7TeV-madgraph-tauola']*3
45     samplenames2 =['Zudsg_pt120','Zbb_pt120','Zcc_pt120']
46     sampletypes2 =['BKG']*3
47     samplesgroup2=['DYlight','DYb','DYc']
48     xsecs2 = [30]*3
49 peller 1.5 SF2=[1.00,0.95,1.24]
50 peller 1.2 Aprefix2 = ['udsg_120_', 'b_120_','c_120_']
51 peller 1.1 cut2 = ['(Vtype == 1 || Vtype == 0) & EVENT.json & hbhe & eventFlav != 5 & eventFlav != 4 & genZpt > 120.','(Vtype == 1 || Vtype == 0) & EVENT.json & hbhe & eventFlav == 5 & genZpt > 120.','(Vtype == 1 || Vtype == 0) & EVENT.json & hbhe & eventFlav == 4 & genZpt > 120.']
52    
53     #The Data
54     dataFiles = ['DataZee', 'DataZmm']
55     datanames =['Zee','Zmm']
56     datatypes =['DATA','DATA']
57     datagroup=['DATA','DATA']
58     AdataPrefix = ['']
59     datacuts=['(Vtype==1 && EVENT.json && hbhe) && (triggerFlags[5] | triggerFlags[6])','(Vtype==0 && EVENT.json && hbhe)&&((EVENT.run<173198 && (triggerFlags[0]>0 || triggerFlags[13]>0 || triggerFlags[14]>0 || triggerFlags[20]>0 || triggerFlags[21]>0)) || (EVENT.run>=173198 && EVENT.run<175832 && (triggerFlags[13]>0 ||triggerFlags[14]>0 || triggerFlags[22]>0 || triggerFlags[23]>0))|| (EVENT.run>=175832 && EVENT.run<178390 && (triggerFlags[13]>0 ||triggerFlags[14]>0 ||triggerFlags[15]>0 || triggerFlags[21]>0 || triggerFlags[22]>0 || triggerFlags[23]>0)) || (EVENT.run>=178390 && (triggerFlags[14]>0 ||triggerFlags[15]>0 || triggerFlags[21]>0 || triggerFlags[22]>0 || triggerFlags[23]>0 || triggerFlags[24]>0 || triggerFlags[25]>0 || triggerFlags[26]>0 || triggerFlags[27]>0)))']
60    
61 peller 1.2
62    
63    
64    
65 peller 1.1 info = []
66    
67     #prepare the files:
68    
69     # i>1 because no WW sample!!! only temporary fix
70    
71 peller 1.3 for i in range(0,len(InFiles0)):
72 peller 1.2 copytree(pathIN,pathOUT,prefix,InFiles0[i],Aprefix0[0],cut0[0]+Precut)
73 peller 1.1 info.append(sample(samplenames0[i],sampletypes0[i]))
74     info[-1].path=pathOUT
75     info[-1].identifier=Aprefix0[0]+InFiles0[i]
76     info[-1].weightexpression=weightexpression
77     info[-1].group=samplesgroup0[i]
78     info[-1].lumi=lumi
79     info[-1].prefix=prefix
80     info[-1].xsec=xsecs0[i]
81 peller 1.2 info[-1].sf=SF0[i]
82 peller 1.1 info[-1].addtreecut(cut0[0])
83    
84     for i in range(3):
85 peller 1.2 copytree(pathIN,pathOUT,prefix,InFiles1[i],Aprefix1[i],cut1[i]+Precut)
86 peller 1.1 info.append(sample(samplenames1[i],sampletypes1[i]))
87     info[-1].path=pathOUT
88     info[-1].identifier=Aprefix1[i]+InFiles1[i]
89     info[-1].weightexpression=weightexpression
90     info[-1].group=samplesgroup1[i]
91     info[-1].lumi=lumi
92     info[-1].prefix=prefix
93     info[-1].xsec=xsecs1[i]
94 peller 1.2 info[-1].sf=SF1[i]
95 peller 1.1 info[-1].addtreecut(cut1[i])
96    
97     for i in range(3):
98 peller 1.2 copytree(pathIN,pathOUT,prefix,InFiles2[i],Aprefix2[i],cut2[i]+Precut)
99 peller 1.1 info.append(sample(samplenames2[i],sampletypes2[i]))
100     info[-1].path=pathOUT
101     info[-1].identifier=Aprefix2[i]+InFiles2[i]
102     info[-1].weightexpression=weightexpression
103     info[-1].group=samplesgroup2[i]
104     info[-1].lumi=lumi
105     info[-1].prefix=prefix
106     info[-1].xsec=xsecs2[i]
107 peller 1.2 info[-1].sf=SF2[i]
108 peller 1.1 info[-1].addtreecut(cut2[i])
109    
110     for i in range(0,len(dataFiles)):
111 peller 1.2 copytree(pathIN,pathOUT,prefix,dataFiles[i],AdataPrefix[0],datacuts[i]+Precut)
112 peller 1.1 info.append(sample(datanames[i],datatypes[i]))
113     info[-1].path=pathOUT
114     info[-1].identifier=AdataPrefix[0]+dataFiles[i]
115     info[-1].group=datagroup[i]
116     info[-1].lumi=lumi
117     info[-1].prefix=prefix
118     info[-1].addtreecut(datacuts[i])
119    
120    
121     #dump info
122     infofile = open(pathOUT+'/samples.info','w')
123     pickle.dump(info,infofile)
124     infofile.close()