# ---------------------------------------------------------------------------- # # vp1_align # # Top jobOptions to run vp1 on 2008 Muon Cosmic Data with Alignment Corrections # # Taken from MuonDataRec_myTopOptions by M. Woudstra, R. Nikolaidou # Modified by T. Dai and S. Goldfarb # # 30.01.2009 - Steven.Goldfarb@cern.ch # ---------------------------------------------------------------------------- # # Standard Athena & Reconstruction Flags from AthenaCommon.AthenaCommonFlags import athenaCommonFlags from AthenaCommon.BeamFlags import jobproperties from AthenaCommon.GlobalFlags import globalflags from AthenaCommon.BFieldFlags import jobproperties from AthenaCommon.AlgSequence import AlgSequence from AthenaCommon.DetFlags import DetFlags from RecExConfig.RecFlags import rec # Specification of EvtMax and SkipEvents in command line (-c) if 'EvtMax' not in dir(): EvtMax = 100 if 'SkipEvents' not in dir(): SkipEvents = 0 athenaCommonFlags.EvtMax.set_Value_and_Lock(EvtMax) athenaCommonFlags.SkipEvents.set_Value_and_Lock(SkipEvents) # Set Beam Type, Data Source, Input Format, Detector Description globalflags.DataSource.set_Value_and_Lock('data') if globalflags.DataSource() == 'data' : jobproperties.Beam.beamType.set_Value_and_Lock('cosmics') globalflags.InputFormat.set_Value_and_Lock('bytestream') globalflags.DetDescrVersion.set_Value_and_Lock('ATLAS-GEONF-04-00-00') else : globalflags.DetDescrVersion.set_Value_and_Lock('ATLAS-GEONF-02-01-00') globalflags.ConditionsTag.set_Value_and_Lock('OFLCOND-SIM-00-00-00') # Toggle the Magnetic Fields jobproperties.BField.solenoidOn.set_Value_and_Lock(False) jobproperties.BField.barrelToroidOn.set_Value_and_Lock(False) jobproperties.BField.endcapToroidOn.set_Value_and_Lock(False) # Define the Muon Reconstruction Environment from MuonRecExample import MuonRecStandaloneOnlySetup from MuonRecExample.MuonRecFlags import muonRecFlags from MuonRecExample.MuonCBNTFlags import muonCBNT # Toggle running on CSC data muonRecFlags.doCSCs = False if muonRecFlags.doCSCs(): muonCBNT.doCscRaw = True # Input Data File & Conditions Tag: Local Stripped Bytestream Cosmics athenaCommonFlags.BSRDOInput.set_Value_and_Lock([ 'mdaq.ATLAS.0091060.physics.CosmicMuons.LB0001.SFO-1._0001.data' ]) globalflags.ConditionsTag.set_Value_and_Lock('COMCOND-ES1C-000-00') # Input Data File & Conditions Tag: Castor Full Bytestream TGC Trigger #athenaCommonFlags.BSRDOInput.set_Value_and_Lock([ '/castor/cern.ch/grid/atlas/DAQ/2008/91060/physics_TGCwBeam/daq.ATLAS.0091060.physics.TGCwBeam.LB0027.SFO-1._0001.data' ]) #globalflags.ConditionsTag.set_Value_and_Lock('COMCOND-ES1C-000-00') # Input Data File & Conditions Tag: Castor Full Bytestream TGC Trigger (w/CSC) #athenaCommonFlags.BSRDOInput.set_Value_and_Lock([ '/castor/cern.ch/grid/atlas/DAQ/2008/91897/physics_TGCwBeam/daq.ATLAS.0091897.physics.TGCwBeam.LB0001.SFO-1._0001.data']) #globalflags.ConditionsTag.set_Value_and_Lock('COMCOND-REPC-001-02') # Input Data File & Conditions Tag: Castor Full Bytestream RPC Trigger #athenaCommonFlags.BSRDOInput.set_Value_and_Lock([ '/castor/cern.ch/grid/atlas/atlasdatadisk/data08_cos/RAW/data08_cos.00091060.physics_RPCwBeam.daq.RAW.o4/daq.ATLAS.0091060.physics.RPCwBeam.LB0001.SFO-1._0001.data']) #globalflags.ConditionsTag.set_Value_and_Lock('COMCOND-REPC-001-03') # Toggle Output rec.doWriteESD = False rec.doWriteAOD = False rec.doWriteTAG = False rec.CBNTAthenaAware = False # Output file names PoolESDOutput = "mdaq.ATLAS.0091060.physics.CosmicMuons.ESD.align.pool.root" PoolAODOutput = "mdaq.ATLAS.0091060.physics.CosmicMuons.ESD.align.pool.root" PoolTAGOutput = "mdaq.ATLAS.0091060.physics.CosmicMuons.ESD.align.pool.root" PoolNtupleOutput = "mdaq.ATLAS.0091060.physics.CosmicMuons.ESD.align.root" # Toggle Moore muonRecFlags.doMoore = True if muonRecFlags.doMoore(): muonCBNT.doMoore = True # Toggle Muonboy muonRecFlags.doMuonboy = True if muonRecFlags.doMuonboy(): muonCBNT.doMuonboy = True # Select MDT calibration constants muonRecFlags.dataPeriod.set_Value_and_Lock('Reproc08') #muonRecFlags.dataPeriod.set_Value_and_Lock('LHC') # Toggle the alignment corrections muonRecFlags.useAlignmentCorrections = True # Toggle the T0 fit (on by default for data) muonRecFlags.doSegmentT0Fit = True # Disable Calibration ntuple if no reconstruction algorithm is running if not muonRecFlags.doMoore and not muonRecFlags.doMuonboy: muonRecFlags.doCalib = False # In Data lies Truth if globalflags.DataSource() == 'data': rec.doTruth = False # Toggle Perfmon studies rec.doPerfMon = True rec.doDetailedPerfMon = True rec.doNameAuditor = False # For Trigger MBTS and L1 Calo we need the Tile Calorimeter # the algorithm: MuonCalibExtraTreeTriggerAlg stores trigger info DetFlags.makeRIO.Calo_setOn() rec.doTile = True # Toggle Monitoring rec.doMonitoring = False rec.doHist = rec.doMonitoring() # Toggle Persint Display rec.doPersint = False # Toggle Detector Status rec.doDetStatus = False # bug in DetectorStatus/DetStatusSvc_CondDB.py # Toggle Commissioning rec.Commissioning = True # Lock all flags before including standard reconstruction options rec.lock_JobProperties() muonRecFlags.lock_JobProperties() # The main jobOption files include("RecExCommission/RecExCommission.py") include("RecExCommon/RecExCommon_topOptions.py") if rec.doPersint(): from MboyView.MboyViewConf import MboyView topSequence += MboyView( SwitchOff = 0 ) # for later reference theMboyView = topSequence.MboyView if muonRecFlags.doMuonboy(): theMboyView.TrkTrackCollectionLocationList+=["ConvertedMBoyTracks"] if muonRecFlags.doMoore(): theMboyView.TrkTrackCollectionLocationList+=["MooreTracks"] ServiceMgr.MboySvc.GiveRsLineToDigit = 1 # Hack: avoid warning for missing CombinedInDetTracks try: topSequence.Stream2Filter.TrackCollections = [] except AttributeError: pass # remove TileMuonFitter topSequence (CPU) try: del topSequence.TileMuonFitter except AttributeError: pass # move triggeralg to end (calo has run after it) try: # keep link to alg MuonCalibExtraTreeTriggerAlg = topSequence.MuonCalibExtraTreeTriggerAlg # then remove it from topSequence del topSequence.MuonCalibExtraTreeTriggerAlg except AttributeError: pass else: # and add at end (after Tile) topSequence += MuonCalibExtraTreeTriggerAlg # Make Prepdata for Twins (will go to calibrationNtuple) if muonRecFlags.doMDTs(): MdtRdoToPrepDataTool.UseTwin = True # Add VP1 from VP1Algs.VP1AlgsConf import VP1Alg topSequence += VP1Alg() # Save configurations from AthenaCommon.ConfigurationShelve import saveToAscii saveToAscii("config.txt") # Use Oracle for Conditions Data include("RecJobTransforms/UseOracle.py")