5 from AnaAlgorithm.AlgSequence
import AlgSequence
6 from AnaAlgorithm.DualUseConfig
import createAlgorithm, createService
7 from AsgAnalysisAlgorithms.AsgAnalysisAlgorithmsTest
import pileupConfigFiles
14 sysService =
createService(
'CP::SystematicsSvc',
'SystematicsSvc', sequence = algSeq )
15 sysService.sigmaRecommended = 1
16 createService(
'CP::SelectionNameSvc',
'SelectionNameSvc', sequence = algSeq )
21 from AsgAnalysisAlgorithms.PileupAnalysisSequence
import \
22 makePileupAnalysisSequence
25 userPileupConfigs=prwfiles,
26 userLumicalcFiles=lumicalcfiles,
28 pileupSequence.configure( inputName = {}, outputName = {} )
31 algSeq += pileupSequence
34 from MuonAnalysisAlgorithms.MuonAnalysisSequence
import makeMuonAnalysisSequence
36 workingPoint =
'Medium.Loose_VarRad', postfix =
'medium',
37 enableCutflow=
True, enableKinematicHistograms=
True )
38 muonSequenceMedium.configure( inputName =
'Muons',
39 outputName =
'AnalysisMuonsMedium_%SYS%' )
42 algSeq += muonSequenceMedium
45 workingPoint =
'Tight.Loose_VarRad', postfix =
'tight',
46 enableCutflow=
True, enableKinematicHistograms=
True )
47 muonSequenceTight.removeStage (
"calibration")
48 muonSequenceTight.configure( inputName =
'AnalysisMuonsMedium_%SYS%',
49 outputName =
'AnalysisMuons_%SYS%')
52 algSeq += muonSequenceTight
56 treeMaker.TreeName =
'muons'
58 ntupleMaker =
createAlgorithm(
'CP::AsgxAODNTupleMakerAlg',
'NTupleMakerEventInfo' )
59 ntupleMaker.TreeName =
'muons'
60 ntupleMaker.Branches = [
'EventInfo.runNumber -> runNumber',
61 'EventInfo.eventNumber -> eventNumber', ]
63 ntupleMaker =
createAlgorithm(
'CP::AsgxAODNTupleMakerAlg',
'NTupleMakerMuons' )
64 ntupleMaker.TreeName =
'muons'
65 ntupleMaker.Branches = [
'AnalysisMuons_NOSYS.eta -> mu_eta',
66 'AnalysisMuons_NOSYS.phi -> mu_phi',
67 'AnalysisMuons_%SYS%.pt -> mu_%SYS%_pt', ]
68 if dataType !=
'data':
69 ntupleMaker.Branches += [
'AnalysisMuons_%SYS%.muon_effSF_tight_%SYS% -> mu_%SYS%_effSF' ]
70 ntupleMaker.OutputLevel = 2
73 treeFiller.TreeName =
'muons'