Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:18:43

0001 #
0002 # This python script is the basis for MIB HLT path testing
0003 # 
0004 # Only the developed path are runned on the RAW data sample
0005 #
0006 # We are using GRun_data version of the HLT menu
0007 #
0008 # SV (viret@in2p3.fr): 18/01/2011
0009 #
0010 
0011 import FWCore.ParameterSet.Config as cms
0012 
0013 process = cms.Process('HLT2')
0014 
0015 # import of standard configurations
0016 process.load('Configuration.StandardSequences.Services_cff')
0017 process.load('FWCore.MessageService.MessageLogger_cfi')
0018 process.load('Configuration.StandardSequences.GeometryIdeal_cff')
0019 process.load('Configuration.StandardSequences.MagneticField_38T_cff')
0020 process.load('HLTrigger.Configuration.HLT_GRun_data_cff')
0021 process.load('Configuration.StandardSequences.EndOfProcess_cff')
0022 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0023 process.load('Configuration.EventContent.EventContent_cff')
0024 
0025 
0026 # To be adapted to the release
0027 useGlobalTag = 'GR_R_310_V3::All'
0028 
0029 process.maxEvents = cms.untracked.PSet(
0030     input = cms.untracked.int32(1000)
0031 )
0032 
0033 process.options = cms.untracked.PSet(
0034     SkipEvent = cms.untracked.vstring('ProductNotFound')
0035 )
0036 
0037 # Input source (a raw data file from the Commissioning dataset)
0038 
0039 process.source = cms.Source("PoolSource",
0040                             noEventSort = cms.untracked.bool(True),
0041                             duplicateCheckMode = cms.untracked.string('noDuplicateCheck'),
0042                             fileNames = cms.untracked.vstring('rfio:/castor/cern.ch/cms/store/data/Run2010B/Commissioning/RAW/v1/000/147/043/0C1114D5-E5CD-DF11-8FF5-001D09F2546F.root')
0043 )
0044 
0045 
0046 # Output module (keep only the stuff necessary to the timing module)
0047 
0048 process.output = cms.OutputModule("PoolOutputModule",
0049                                   splitLevel = cms.untracked.int32(0),
0050                                   outputCommands = cms.untracked.vstring( 'drop *', 'keep HLTPerformanceInfo_*_*_*'),
0051                                   fileName = cms.untracked.string('HLT.root'),
0052                                   dataset = cms.untracked.PSet(
0053     dataTier = cms.untracked.string('RECO'),
0054     filterName = cms.untracked.string('')
0055     )
0056 )
0057 
0058 
0059 # Timer
0060 
0061 process.PathTimerService  = cms.Service( "PathTimerService" )
0062 process.hltTimer          = cms.EDProducer( "PathTimerInserter" )
0063 
0064 
0065 # Then we define the info necessary to the paths
0066 
0067 process.HLTBeginSequence = cms.Sequence( process.hltTriggerType + process.HLTL1UnpackerSequence )
0068 
0069 process.HLTDoLocalPixel = cms.Sequence( process.hltSiPixelDigis + process.hltSiPixelClusters)
0070 process.HLTDoLocalHF    = cms.Sequence( process.hltHcalDigis + process.hltHfreco )
0071 
0072 process.hltPixelAsymmetryFilter = cms.EDFilter( "HLTPixelAsymmetryFilter",
0073                                                inputTag  = cms.InputTag( "hltSiPixelClusters" ),
0074                                                MinAsym   = cms.double( 0. ),     # minimum asymmetry 
0075                                                MaxAsym   = cms.double( 1. ),     # maximum asymmetry
0076                                                MinCharge = cms.double( 4000. ),  # minimum charge for a cluster to be selected (in e-)
0077                                                MinBarrel = cms.double( 10000. ), # minimum average charge in the barrel (bpix, in e-)
0078                                                ) 
0079 
0080 process.hltHFAsymmetryFilter = cms.EDFilter( "HLTHFAsymmetryFilter",
0081                                             ECut_HF         = cms.double( 3.0 ),  # minimum energy for a cluster to be selected
0082                                             OS_Asym_max     = cms.double( 0.2 ),  # Opposite side asymmetry maximum value
0083                                             SS_Asym_min     = cms.double( 0.8 ),  # Same side asymmetry minimum value
0084                                             HFHitCollection = cms.InputTag( "hltHfreco" )
0085                                             ) 
0086 
0087 
0088 # The test paths
0089 
0090 
0091 process.HLT_L1_BSC_BeamGas = cms.Path( process.HLTBeginSequence  + process.hltL1sL1BptxXORBscMinBiasOR  + process.HLTDoLocalPixel + process.hltPixelAsymmetryFilter + process.HLTEndSequence )
0092 
0093 process.HLT_L1_HF_BeamGas = cms.Path( process.HLTBeginSequence   + process.hltL1sL1BptxXORBscMinBiasOR  + process.HLTDoLocalHF + process.hltHFAsymmetryFilter + process.HLTEndSequence )
0094 
0095 
0096 #Deal with the global tag
0097 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0098 process.GlobalTag.connect   = 'frontier://FrontierProd/CMS_COND_31X_GLOBALTAG'
0099 process.GlobalTag.pfnPrefix = cms.untracked.string('frontier://FrontierProd/')
0100 process.GlobalTag.globaltag = useGlobalTag
0101 
0102 # Path and EndPath definitions
0103 process.endjob_step  = cms.Path(process.endOfProcess)
0104 process.out_step     = cms.EndPath( process.hltTimer + process.output)
0105 
0106 
0107 # Schedule definition
0108 process.schedule = cms.Schedule(*( process.HLTriggerFirstPath, process.HLT_L1_BSC_BeamGas, process.HLT_L1_HF_BeamGas, process.HLTriggerFinalPath, process.HLTAnalyzerEndpath ))
0109 process.schedule.extend([process.endjob_step,process.out_step])