ATLAS Offline Software
Loading...
Searching...
No Matches
python.VGammaORConfig.VGammaORBlock Class Reference
Inheritance diagram for python.VGammaORConfig.VGammaORBlock:
Collaboration diagram for python.VGammaORConfig.VGammaORBlock:

Public Member Functions

 __init__ (self)
 instanceName (self)
 makeAlgs (self, config)

Public Attributes

 removeInOverlap
 keepInOverlap
 noFilter

Detailed Description

Definition at line 7 of file VGammaORConfig.py.

Constructor & Destructor Documentation

◆ __init__()

python.VGammaORConfig.VGammaORBlock.__init__ ( self)

Definition at line 9 of file VGammaORConfig.py.

9 def __init__(self):
10 super(VGammaORBlock, self).__init__()
11 self.addOption("dR_lepton_photon_cuts", [0.0, 0.05, 0.075, 0.1, 0.125, 0.15, 0.2], type=list,
12 info=r"list of cuts on $\Delta R$ between the leptons and the photon.")
13 self.addOption("photon_pT_cuts", [10e3], type=list,
14 info=r"list of $p_\mathrm{T}$ cuts (in MeV) on the photon.")
15 self.addOption("noFilter", False, type=bool,
16 info="do not apply an event filter, i.e. setting it to `False` "
17 "removes events not passing the overlap removal. If set to `True`, "
18 "all events are kept and the decision flag is written to the output ntuple instead.")
19 self.addOption("keepInOverlap", [700011, 700012, 700013, 700014, 700015, 700016, 700017], type=list,
20 info="list of DSIDs for which events are to be kept if found to be in the overlap region. "
21 r"For instance, V$\gamma$ samples in V+jets vs V$\gamma$+jets overlap removal. "
22 "The default list was taken from the PmgWeakBosonProcesses twiki but is not actively maintained!")
23 self.addOption("removeInOverlap", [700320, 700321, 700322, 700467, 700468, 700469, 700323, 700324, 700325, 700470, 700471, 700472, 700326, 700327, 700328, 700329, 700330, 700331, 700332, 700333, 700334, 700473, 700474, 700475, 700476, 700477, 700478, 700479, 700480, 700481, 700341, 700342, 700343, 700338, 700339, 700340, 700344, 700345, 700346, 700347, 700348, 700349, 700598, 700599, 700439, 700440, 700441], type=list,
24 info="list of DSIDs for which events are to be removed if found to be in the overlap region. "
25 r"For instance, V samples in V+jets vs V$\gamma$+jets overlap removal. "
26 "The default list was taken from the PmgWeakBosonProcesses twiki but is not actively maintained!")
27

Member Function Documentation

◆ instanceName()

python.VGammaORConfig.VGammaORBlock.instanceName ( self)
Return the instance name for this block

Definition at line 28 of file VGammaORConfig.py.

28 def instanceName (self) :
29 """Return the instance name for this block"""
30 return '' # not sure if this is a singleton block, but I don't know what name to use if not
31

◆ makeAlgs()

python.VGammaORConfig.VGammaORBlock.makeAlgs ( self,
config )

Definition at line 32 of file VGammaORConfig.py.

32 def makeAlgs(self, config):
33
34 log = logging.getLogger('VGammaORBlock')
35
36 if config.dataType() is DataType.Data: return
37 if config.dsid() not in self.keepInOverlap and config.dsid() not in self.removeInOverlap:
38 log.warning(f"CP::VGammaORAlg --> this sample has DSID {config.dsid()}, which is not set up for overlap removal. Will skip the configuration of the algorithm!")
39 return
40
41 alg = config.createAlgorithm('CP::VGammaORAlg', 'VGammaORAlg')
42 alg.affectingSystematicsFilter = '.*'
43 alg.noFilter = self.noFilter
44 alg.FilterDescription = 'events passing V/VGamma overlap removal'
45 alg.eventDecisionOutputDecoration = 'ignore_vgammaor_%SYS%'
46
47 if config.dsid() in self.keepInOverlap:
48 alg.keepOverlap = True
49 elif config.dsid() in self.removeInOverlap:
50 alg.keepOverlap = False
51
52 config.addPrivateTool('VGammaORTool', 'VGammaORTool')
53 alg.VGammaORTool.dR_lepton_photon_cuts = self.dR_lepton_photon_cuts
54 alg.VGammaORTool.photon_pT_cuts = self.photon_pT_cuts
55
56 if self.noFilter:
57 # if we don't apply the filter, we still want to study the output of the tool!
58 config.addOutputVar('EventInfo', 'in_vgamma_overlap_%SYS%', 'in_vgamma_overlap', noSys=True)

Member Data Documentation

◆ keepInOverlap

python.VGammaORConfig.VGammaORBlock.keepInOverlap

Definition at line 47 of file VGammaORConfig.py.

◆ noFilter

python.VGammaORConfig.VGammaORBlock.noFilter

Definition at line 56 of file VGammaORConfig.py.

◆ removeInOverlap

python.VGammaORConfig.VGammaORBlock.removeInOverlap

Definition at line 37 of file VGammaORConfig.py.


The documentation for this class was generated from the following file: