from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import ReadCscRDO topSequence.CBNT_AthenaAware += ReadCscRDO() ReadCscRDO = ReadCscRDO() ReadCscRDO.OutputLevel = DEBUG #-------------------------------------------------------------- # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) #-------------------------------------------------------------- MessageSvc.OutputLevel = INFO #-------------------------------------------------------------- # Event related parameters #-------------------------------------------------------------- # Number of events to be processed (default is 10) theApp.EvtMax = 500 ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='CscRDO_read.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = [""] AANTupleStream.OutputName = 'CscRDO_read.root' AANTupleStream.ExistDataHeader = False AANTupleStream.OutputLevel = WARNING
# check carefully which pCb/GeV factor is applied in digitization (1.05 or 1.0) if not 'doCBNT' in dir(): doCBNT = False if doCBNT: #Store everything in CBNTAA CBNTAthenaAware = True if not hasattr(svcMgr, "THistSvc"): from GaudiSvc.GaudiSvcConf import THistSvc svcMgr += THistSvc() svcMgr.THistSvc.Output += ["AANT DATAFILE='tiletb_aa.root' OPT='RECREATE'"] from AnalysisTools.AnalysisToolsConf import AANTupleStream AANTupleStream = AANTupleStream() topSequence += AANTupleStream AANTupleStream.ExtraRefNames = [""] AANTupleStream.OutputName = "tiletb_aa.root" AANTupleStream.ExistDataHeader = False include("CBNT_Athena/CBNT_AthenaAware_jobOptions.py") include("CBNT_Athena/CBNT_EventInfo_jobOptions.py") # truth information from CBNT_Truth.CBNT_TruthConf import CBNTAA_Truth CBNT_Truth = CBNTAA_Truth() CBNT_AthenaAware += CBNT_Truth CBNT_Truth.Members += ["CBNT_TruthSelector/All"] else:
AnalysisSkeleton.StatTriggerChains = photons + singletaus + twotaus + combinedtaus; #AnalysisSkeleton.InvestigateChain = 'L2_tau16i_loose_2j23' ## Done with trigger setup ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='AnalysisSkeleton.aan.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = [ "StreamESD","Stream1" ] AANTupleStream.OutputName = 'AnalysisSkeleton.aan.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) ServiceMgr.MessageSvc.OutputLevel = INFO ServiceMgr.MessageSvc.defaultLimit = 9999999 # Number of Events to process theApp.EvtMax = -1 #theApp.EvtMax = 5 ###################### For interactive analysis #include ("PyAnalysisCore/InitPyAnalysisCore.py")
if TrackD3PDPixelFlags.storePixelClusters: alg += PixelClusterD3PDObject(8) #alg_2 += PixelClusterD3PDObject(8) if TrackD3PDPixelFlags.storeBCMrdo: alg += BcmRdoD3PDObject(8) if TrackD3PDPixelFlags.storeTriggerInfo: ## Configure Trigger reading DoTrigger = True if DoTrigger and False: from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter cfg = TriggerConfigGetter("ReadPool") #alg += CtpDecisionD3PDObject(10) #if TrackD3PDPixelFlags.doPixelNtupleExtended: # alg += CtpRdoD3PDObject(10) alg += TrigDecisionD3PDObject(3) addTrigConfMetadata(alg) ################################################################################################################### if globalflags.InputFormat() == 'bytestream': from AnalysisTools.AnalysisToolsConf import AANTupleStream AANTupleStream('D3PD').ExistDataHeader = False #theApp.CreateSvc += ["FPEControlSvc"]
job = AlgSequence() from TrigInDetESDAlgs.TrigInDetESDAlgsConf import TrackAnalysis job += TrackAnalysis() TrackAnalysis.Phi_Tolerance = 0.01 * rad TrackAnalysis.Eta_Tolerance = 0.05 TrackAnalysis.numOfHitsCut = 5 TrackAnalysis.d0QualityCut = 500 * mm TrackAnalysis.z0QualityCut = 400 * mm ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='EFID_RTT_Histos.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream job += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = ["StreamESD", "Stream1"] AANTupleStream.OutputName = 'EFID_RTT_Histos.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING job.TrackAnalysis.OutputLevel = DEBUG
def __init__( self, StreamName, FileName, TreeName = None, asAlg = False ): """Constructor for the D3PD stream object. Arguments: StreamName: Logical name of the D3PD stream. Note that beside using it to define the stream in THistSvc, this name is also used as the name of the TTree in the output file in case one is not specified explicitly. FileName: Name of the file to write the D3PD TTree into. TreeName: Name of the TTree in the output file. If it's not specified, the stream name is used as the tree name. asAlg: If set to True, the D3PD::MakerAlg algorithm is added to the job as a regular algorithm. When set to False (default), the D3PD algorithm is added to the application manager as an output stream. """ # Initialize the base class: AugmentedStreamBase.__init__( self, StreamName ) # Check if the user specified a tree name or not: if TreeName == None: TreeName = StreamName # Remember the file and tree names just for bookkeeping: self.fileName = FileName self.treeName = TreeName # We need to add some stuff to the main algorithm sequence: from AthenaCommon.AlgSequence import AlgSequence topSequence = AlgSequence() # Create a sequence where the pre-D3PD-making algorithms are run: from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags preseq = AlgSequence( D3PDMakerFlags.PreD3PDAlgSeqName(), StopOverride = True ) if not hasattr( topSequence, D3PDMakerFlags.PreD3PDAlgSeqName() ): topSequence += [ preseq ] pass # Add the AANT algorithm for making it possible to back navigate # from D3PD events: ParentStreamName = StreamName.split( ':' )[ 0 ] if StreamName.count( ':' ) != 0: if StreamName.count( ':' ) == 1: StreamName = StreamName.split( ':' )[ 1 ] else: raise AttributeError( "Stream name '%s' can't be used!" % StreamName ) if not hasattr( topSequence, ParentStreamName + "AANTStream" ): try: from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream( ParentStreamName + "AANTStream", ExtraRefNames = ['StreamRDO', 'StreamRAW', 'StreamESD', 'StreamAOD'], OutputName = FileName, WriteInputDataHeader = True, StreamName = ParentStreamName ) pass except ImportError: print(self.Name,": INFO didn't find AnalysisTools.AnalysisToolsConf in release.") import traceback print(traceback.format_exc()) pass # Make sure that THistSvc exists. from AthenaCommon.AppMgr import ServiceMgr if not hasattr( ServiceMgr, 'THistSvc' ): from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() # Check if the requested stream is already defined in THistSvc: streamExists = False for s in ServiceMgr.THistSvc.Output: stream = s.split()[ 0 ] if stream == StreamName: streamExists = True break # Add the stream if it's not defined yet: if not streamExists: ServiceMgr.THistSvc.Output += [ "%s DATAFILE='%s' OPT='RECREATE' CL='%i'" % ( StreamName, FileName, D3PDMakerFlags.CompressionLevel() ) ] # Finally, create the D3PD::MakerAlg algorithm and add it to the job. # Note that here we're specifying that the D3PDMaker code should use # ROOT output. # # If we're adding as an algorithm directly, then pass the parent sequence # into MakerAlg(...). MakerAlg(...) will then add itself to the sequence # and also set up the accompanying filter sequence. Otherwise, we add it # as a stream; in that case we set up backwards compatibility for # 'filterSeq'. try: import D3PDMakerCoreComps if asAlg: theseq = topSequence else: theseq = None pass self.Stream = D3PDMakerCoreComps.MakerAlg( StreamName + "D3PDMaker", seq = theseq, file = FileName, stream = ParentStreamName, tuplename = TreeName, D3PDSvc = "D3PD::RootD3PDSvc" ) if not asAlg: from AthenaCommon.AppMgr import theApp theApp.addOutputStream( self.Stream ) # Backwards compatibility for the filter algoirthm: self.filterSeq = _RootStreamFilterHelper( self, topSequence ) pass pass except ImportError: print(self.Name,": INFO didn't find D3PDMakerCoreComps in release.") pass return
if doMakeEMTopoCluster: include("CaloRec/EMTopoCluster_jobOptions.py") # ----------------------------- # CBNTAA filling # ----------------------------- if doCBNT: # common part include("CBNT_Athena/CBNT_AthenaAware_jobOptions.py") CBNT_AthenaAware.StreamName = "FILE1" CBNT_AthenaAware.TreeName = "tree" include("CBNT_Athena/CBNT_EventInfo_jobOptions.py") from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() topSequence.AANTupleStream.ExtraRefNames = [""] topSequence.AANTupleStream.TreeName = "tree" topSequence.AANTupleStream.StreamName = "FILE1" topSequence.AANTupleStream.ExistDataHeader = False # beam part if doBeamDetectors: include("TBRec/H6CBNTBeam_jobOptions.py") else: if doSim: from TBRec.TBRecConf import CBNTAA_TBTrack CBNT_TBTrack = CBNTAA_TBTrack() CBNT_TBTrack.ReadFileforXcryo = False CBNT_AthenaAware += CBNT_TBTrack from TBRec.TBRecConf import CBNTAA_TBScint
# set up trigger config service from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter cfg = TriggerConfigGetter() ## END of trigger setup ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='Analysis.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = [ "" ] AANTupleStream.OutputName = 'Analysis.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) ServiceMgr.MessageSvc.OutputLevel = INFO # Number of Events to process # theApp.EvtMax = -1 ###################### For interactive analysis #include ("PyAnalysisCore/InitPyAnalysisCore.py") from GaudiSvc.GaudiSvcConf import AuditorSvc
TrigJpsiMonTool.Collection5 = "" TrigJpsiMonTool.Collection6 = "" TrigJpsiMonTool.Collection7 = "" ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='IDTrackingCBNT.aan.root' OPT='RECREATE'" ] HLTMonManager.FileKey = "AANT" from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = ["StreamESD", "Stream1"] AANTupleStream.OutputName = 'IDTrackingCBNT.aan.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) ServiceMgr.MessageSvc.OutputLevel = DEBUG theApp.EvtMax = -1 from GaudiSvc.GaudiSvcConf import AuditorSvc ServiceMgr.AuditorSvc.Auditors += ["ChronoAuditor"] AthenaPoolCnvSvc = Service("AthenaPoolCnvSvc")
TriggerFlags.configurationSourceList = ['ds'] # set up trigger config service from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter cfg = TriggerConfigGetter() ## END of trigger setup ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = ["AANT DATAFILE='Analysis.root' OPT='RECREATE'"] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = [""] AANTupleStream.OutputName = 'Analysis.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) ServiceMgr.MessageSvc.OutputLevel = INFO # Number of Events to process # theApp.EvtMax = -1 ###################### For interactive analysis #include ("PyAnalysisCore/InitPyAnalysisCore.py")
schedule_CBNTJet("Cone7TowerJets") schedule_CBNTJet("Cone4TopoJets") schedule_CBNTJet("Cone7TopoJets") schedule_CBNTJet("TowersFromClusters0Jets") #JetDetailedCBNT = True #include( "JetRec/Cone7TowerJet_CBNT_jobOptions.py" ) #include( "JetRec/Cone4TowerJet_CBNT_jobOptions.py" ) #include( "JetRec/Cone4TopoJet_CBNT_jobOptions.py" ) #include( "JetRec/Cone7TopoJet_CBNT_jobOptions.py" ) #include( "JetRec/Cone7TruthJet_CBNT_jobOptions.py" ) #include( "JetRec/Cone4TruthJet_CBNT_jobOptions.py" ) #-------------------------------------------------------------- # NTuple Options #-------------------------------------------------------------- from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='" + OutputNTUP + "' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = ["StreamESD", "Stream1"] AANTupleStream.OutputName = OutputNTUP AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = INFO
ServiceMgr.EventSelector.InputCollections = [ "DigitizationOutput.pool.root" ] #svcMgr.EventSelector.SkipEvents = 200; # CBNT staff from AthenaCommon.AppMgr import ServiceMgr if not hasattr(ServiceMgr, 'THistSvc'): from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() #ServiceMgr.THistSvc.Output += ["AANT DATAFILE='$RecoFile' OPT='RECREATE'" ] ServiceMgr.THistSvc.Output += ["AANT DATAFILE='cbntaa.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream( ExistDataHeader = False, WriteInputDataHeader = False, OutputName = 'ntuple.root', OutputLevel = WARNING ) ################################################################################ ## propriet condition data ################################################################################ #theApp.Dlls+=["CaloCondAthenaPoolPoolCnv"] ## add necessary services if not done yet #if not hasattr(ServiceMgr, 'ProxyProviderSvc'): #from StoreGate.StoreGateConf import ProxyProviderSvc #ServiceMgr += ProxyProviderSvc() #if not 'CondProxyProvider' in ServiceMgr.ProxyProviderSvc.ProviderNames: #ServiceMgr.ProxyProviderSvc.ProviderNames += [ "CondProxyProvider" ]
###################### Output Ntuple files # User CBNTMaker Tool to create TTree from GaudiSvc.GaudiSvcConf import THistSvc from AnalysisTools.AnalysisToolsConf import AANTupleStream # create instance of THistSvc ServiceMgr += THistSvc() # ntuples: AANT (Athena Aware NTuples) ntupleFile = "testlumi.root" ServiceMgr.THistSvc.Output += [ "AANT DATAFILE='%s' OPT='RECREATE'" % ntupleFile ] # also add default CollectionTree AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = ["StreamESD", "StreamRDO"] AANTupleStream.OutputName = ntupleFile AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING topSequence += AANTupleStream # Root Ntuple output file and name theApp.Dlls += ["RootHistCnv"] theApp.HistogramPersistency = "ROOT" # Dump list of containers on StoreGate to output log StoreGateSvc = Service("StoreGateSvc") StoreGateSvc.Dump = FALSE # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL )
combinedtaus = ["EF_tau12_loose_e10_loose", "L2_tau16i_loose_2j23", "EF_tau16i_loose_2j23", "EF_tau16i_loose_EFxe40"] AnalysisSkeleton.StatTriggerChains = photons + singletaus + twotaus + combinedtaus; #AnalysisSkeleton.InvestigateChain = 'L2_tau16i_loose_2j23' ## Done with trigger setup ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='AnalysisSkeleton.aan.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = [ "StreamESD","Stream1" ] AANTupleStream.OutputName = 'AnalysisSkeleton.aan.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) ServiceMgr.MessageSvc.OutputLevel = INFO ServiceMgr.MessageSvc.defaultLimit = 9999999 # Number of Events to process theApp.EvtMax = -1 #theApp.EvtMax = 5 ###################### For interactive analysis
include( "ByteStreamCnvSvcBase/BSAddProvSvc_RDO_jobOptions.py" ) include( "ByteStreamCnvSvcBase/BSAddProvSvc_RIO_jobOptions.py" ) log.info( "Set input BS file" ) # # Set up writing of the AANT file: # from GaudiSvc.GaudiSvcConf import THistSvc histSvc = THistSvc() histSvc.Output = [ "AANT DATAFILE='" + CBNTAAOutput + "' OPT='RECREATE'" ] ServiceMgr += histSvc from AnalysisTools.AnalysisToolsConf import AANTupleStream ntupleStream = AANTupleStream() ntupleStream.OutputName = CBNTAAOutput ntupleStream.ExistDataHeader = False topSequence += ntupleStream theApp.HistogramPersistency = "ROOT" log.info( "Configured output AANT file" ) # # Configure the LVL1 config svc.: # from TrigConfigSvc.TrigConfigSvcConfig import LVL1ConfigSvc ServiceMgr += LVL1ConfigSvc( "LVL1ConfigSvc" ) ServiceMgr.LVL1ConfigSvc.XMLFile = "Rel3_Sept_12_outputLVL1config.xml" ServiceMgr.LVL1ConfigSvc.CreateLegacyObjects = True
# set up trigger config service from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter cfg = TriggerConfigGetter() ########################################## # setup TTree registration Service # save ROOT histograms and Tuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL ) ServiceMgr.MessageSvc.OutputLevel = INFO ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='run_0152116.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = [ "StreamESD","Stream1" ] AANTupleStream.OutputName = 'run_0152116.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = FATAL theApp.EvtMax = -1 from GaudiSvc.GaudiSvcConf import AuditorSvc ServiceMgr.AuditorSvc.Auditors += [ "ChronoAuditor"] AthenaPoolCnvSvc = Service("AthenaPoolCnvSvc") AthenaPoolCnvSvc.UseDetailChronoStat = TRUE from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter
import AthenaPoolCnvSvc.ReadAthenaPool ServiceMgr.EventSelector.InputCollections = ["AOD.pool.root"] # The AOD input file for large statistics #include ( "aodinput.py" ) ########################################### # setup TTree registration Service # save ROOT histograms and NTuple from GaudiSvc.GaudiSvcConf import THistSvc ServiceMgr += THistSvc() ServiceMgr.THistSvc.Output = [ "AANT DATAFILE='MiscellaneousExamples.root' OPT='RECREATE'" ] from AnalysisTools.AnalysisToolsConf import AANTupleStream topSequence += AANTupleStream() AANTupleStream = AANTupleStream() AANTupleStream.ExtraRefNames = ["StreamESD", "Stream1"] AANTupleStream.OutputName = 'MisellaneousExamples.root' AANTupleStream.WriteInputDataHeader = True AANTupleStream.OutputLevel = WARNING # The user analysis algorithm to be executed from AnalysisExamples.AnalysisExamplesConf import MiscellaneousExamples topSequence += MiscellaneousExamples() MiscellaneousExamples = MiscellaneousExamples() # The user analysis cuts - default values to changed by the user as needed # set the names of the particle containers to be retrieved from StoreGate