ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
Jet
JetUncertainties
testingMacros
InputScripts
Final2012
Final2012/ParsePileupInput.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
2
3
from
ROOT
import
*
4
from
array
import
array
5
import
glob
6
import
re
7
import
math
8
import
ProviderHistoHelpers
9
10
11
SystematicNames = [
'Pileup_PtTerm_NPV'
,
'Pileup_PtTerm_Mu'
,
'Pileup_OffsetNPV'
,
'Pileup_OffsetMu'
,
'Pileup_RhoTopology'
]
12
13
jetDefs = [
'AntiKt4Topo_EMJES'
,
'AntiKt6Topo_EMJES'
,
'AntiKt4Topo_LCJES'
,
'AntiKt6Topo_LCJES'
]
14
15
def
ReadPileupHistograms
(dirName):
16
if
not
dirName.endswith(
"/"
):
17
dirName = dirName +
"/"
18
19
# We're just taking it from the old ROOT file...
20
# Ensure there is just one such file
21
rootFileList = sorted(glob.glob(dirName+
"*.root"
))
22
if
len(rootFileList) != 1:
23
print
"Directory contains multiple or no root files - was expecting one:"
,dirName
24
return
None
25
rootFile = TFile(rootFileList[0],
"READ"
)
26
27
histos = {}
28
for
aJetDef
in
jetDefs:
29
histos[aJetDef] = {}
30
31
# Loop over the desired systematics
32
for
aSystName
in
SystematicNames:
33
systematicName = aSystName +
"_"
+ aJetDef
34
histo = rootFile.Get(systematicName)
35
if
histo
is
None
:
36
print
"Failed to get histogram:"
,systematicName
37
return
None
38
histo.SetDirectory(0)
39
40
histos[aJetDef][aSystName] = histo
41
42
# Done reading, close the file
43
rootFile.Close()
44
45
return
histos
46
47
48
ParsePileupInput.ReadPileupHistograms
ReadPileupHistograms(dirName)
Definition
Final2012/ParsePileupInput.py:15
Generated on
for ATLAS Offline Software by
1.17.0