# Test the production of the complete chain: # from digi to RecSegment 4D, through RecHit1D and RecSegment2D # starting from real cosmic data from commissioning # Up to now only the Linear Drift alogo is available for the # commisioning data. ## process testDTAnalyzer = { include "CondCore/DBCommon/data/CondDBSetup.cfi" ############################################################################################ # F I L E R E A D E R ############################################################################################ # Event Formatter untracked PSet maxEvents = { untracked int32 input = -1 } # ====================================================== # 1) choose here your Input data # ====================================================== # global runs: source = PoolSource { untracked string fileMatchMode = "permissive" untracked uint32 firstRun = 0 untracked uint32 firstEvent = 0 untracked uint32 skipEvents = 0 # untracked vstring fileNames = {'/store/data/GlobalSep07/A/000/020/734/RAW/0000/0294755E-276D-DC11-AC53-000423D69D4A.root'} # untracked vstring fileNames = {'/store/data/GlobalNov07/A/000/...'} untracked vstring fileNames = { ##'/store/data/GlobalMar08/A/000/000/000/RAW/0000/00B7AF54-D3F1-DC11-B07B-000423D98804.root' } } include "RecoLocalMuon/DTSegment/test/r37919.cff" ##include "RecoLocalMuon/DTSegment/test/r38429.cff" # =========================================================== # 2) Configure here the Data Unpacker # =========================================================== module dtunpacker = DTUnpackingModule { string dataType = "DDU" untracked bool fedbyType = true untracked bool useStandardFEDid = true PSet readOutParameters = { untracked bool localDAQ = false untracked bool performDataIntegrityMonitor = false untracked bool debug = false PSet rosParameters = { untracked bool localDAQ = false untracked bool readingDDU = true untracked bool writeSC = true untracked bool readDDUIDfromDDU = true untracked bool performDataIntegrityMonitor = false untracked bool debug = false } } } ############################################################################################ # Mapping ############################################################################################ #mapping es_source roMapping = PoolDBESSource { using CondDBSetup string connect = "sqlite_file:mapAll_GRUMM.db" string timetype = "runnumber" untracked uint32 authenticationMethod = 0 VPSet toGet = {{ string record = "DTReadOutMappingRcd" string tag = "channelsMap" }} } ############################################################################################ # noise ############################################################################################ #noise es_source noiseMapping = PoolDBESSource { using CondDBSetup string connect = "sqlite_file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB2/noise/noise_Wh2_180.db" string timetype = "runnumber" untracked uint32 authenticationMethod = 0 VPSet toGet = {{ string record = "DTStatusFlagRcd" string tag = "noise" }} } ################################################################################################# #### tTrig ############################################################################################### #tTrig es_source tTrigMapping = PoolDBESSource { using CondDBSetup string connect = "sqlite_file:ttrig_GRUMM_r37919.db" string timetype = "runnumber" untracked uint32 authenticationMethod = 0 VPSet toGet = {{ string record = "DTTtrigRcd" string tag = "tTrig_GRUMM" }} } ############################################################################################ # tzero ############################################################################################ #tzero es_source t0 = PoolDBESSource { using CondDBSetup VPSet toGet = { {string record = "DTT0Rcd" string tag = "tzero" } } bool loadAll = true string connect = "sqlite_file:t0_All.db" string timetype = "runnumber" } # ============================================ # 6) cfi's for reconstruction # ============================================ include "Geometry/CaloEventSetup/data/CaloGeometry.cfi" include "Geometry/CMSCommonData/data/cmsSimIdealGeometryXML.cfi" # include "Geometry/MuonCommonData/data/muonIdealGeometryXML.cfi" include "Geometry/DTGeometry/data/dtGeometry.cfi" include "Geometry/CSCGeometry/data/cscGeometry.cfi" include "Geometry/MuonNumbering/data/muonNumberingInitialization.cfi" #------------------------------------ DT -------------------------------------# ## Using Linear Drift include "RecoLocalMuon/DTRecHit/data/dt1DRecHits_LinearDrift_CosmicData.cfi" replace DTLinearDriftAlgo_CosmicData.recAlgoConfig.hitResolution = 0.06 include "RecoLocalMuon/DTSegment/data/dt2DSegments_CombPatternReco2D_LinearDrift_CosmicData.cfi" include "RecoLocalMuon/DTSegment/data/dt4DSegments_CombPatternReco4D_LinearDrift_CosmicData.cfi" #------------------------------------ CSC ------------------------------------# ## 2D RecHit include "RecoLocalMuon/CSCRecHitB/data/cscRecHitB.cfi" ## Segments include "RecoLocalMuon/CSCSegment/data/cscSegments.cfi" ## Geometry include "Geometry/CommonDetUnit/data/globalTrackingGeometry.cfi" include "MagneticField/Engine/data/uniformMagneticField.cfi" #include "RecoLocalMuon/DTSegment/test/uniformMagneticField.cfi" # temporary....(and wrong!, just for 'formal' tests...) #include "MagneticField/Engine/data/volumeBasedMagneticField.cfi" #es_prefer = UniformMagneticFieldESProducer{} include "RecoMuon/DetLayers/data/muonDetLayerGeometry.cfi" include "RecoMuon/MuonSeedGenerator/data/CosmicMuonSeedProducer.cfi" replace CosmicMuonSeed.EnableCSCMeasurement = false include "RecoMuon/CosmicMuonProducer/data/cosmicMuons.cfi" replace cosmicMuons.TrajectoryBuilderParameters.EnableDTMeasurement = true replace cosmicMuons.TrajectoryBuilderParameters.EnableCSCMeasurement = false replace cosmicMuons.TrajectoryBuilderParameters.EnableRPCMeasurement = false #replace cosmicMuons.TrajectoryBuilderParameters.BackwardMuonTrajectoryUpdatorParameters.Granularity= 0 ## propagation include "TrackPropagation/SteppingHelixPropagator/data/SteppingHelixPropagator.cfi" # avoid printout at each event... service = MessageLogger { untracked vstring categories = { "CosmicMuonProducer" , "CosmicMuonTrajectoryBuilder" } untracked vstring destinations = { "cout" } # untracked vstring categories = { "CosmicMuonProducer" } untracked vstring debugModules = { "*" } untracked vstring debugModules = { "CosmicMuonProducer" , "CosmicMuonTrajectoryBuilder" } untracked PSet cout = { untracked string threshold = "WARNING" untracked bool noLineBreaks = true untracked PSet WARNING = {untracked int32 limit = 0 } } } ####### Include Survey DB wheels 0,1,2 on surface ##### include "RecoLocalMuon/DTSegment/test/loadDataBase.cfi" # to have reco object output file: # module out = PoolOutputModule { # untracked string fileName ="MuonReco.root" # } # =================================================== # 7) configuration of your analyzer # =================================================== ## _Reader_ ## module DTAnalyzer = DTAnalyzer { bool doHits = true bool doSegs = true bool doSA = false bool isMC = true bool doTrig = true bool doTBox = false ## bool isMC = false bool doWheel-2 = false bool doWheel-1 = false bool doWheel0 = true bool doWheel1 = false bool doWheel2 = false untracked bool debug = false bool LCT_RPC = true bool LCT_DT = true bool LCT_CSC = true untracked string rootFileName = "rootfiles/DTAnalyzer.root" string DTLocalTriggerLabel = "dtunpacker" #### string digiLabel = "dtunpacker" string recHits1DLabel = "dt1DRecHits" string recHits2DLabel = "dt2DSegments" string recHits4DLabel = "dt4DSegments" # The module to be used for ttrig synchronization and its paraemter set untracked string tTrigMode = 'DTTTrigSyncFromDB' untracked PSet tTrigModeConfig = { untracked bool debug = false # The ttrig from the time box fit is defined as mean + kFactor * sigma double kFactor = -1.3 # The velocity of signal propagation along the wire (cm/ns) double vPropWire = 24.4 # Switch on/off the TOF correction from pulses bool doT0Correction = true # Switch on/off the TOF correction for particles bool doTOFCorrection = false # Switch on/off the correction for the signal propagation along the wire bool doWirePropCorrection = false # The correction type for TOF int32 tofCorrType = 2 int32 wirePropCorrType = 0 } string SALabel = "cosmicMuons" string PropagatorName = "SteppingHelixPropagator" } ## _Reader_ ## module DTEffAnalyzer = DTEffAnalyzer { bool isMC = true ## bool isMC = false untracked bool debug = false bool LCT_RPC = true bool LCT_DT = true bool LCT_CSC = true untracked string rootFileName = "DTEffAnalyzer_YB0.root" string DTLocalTriggerLabel = "dtunpacker" string recHits1DLabel = "dt1DRecHits" string recHits2DLabel = "dt2DSegments" string recHits4DLabel = "dt4DSegments" int32 minHitsSegment = 5 double minChi2NormSegment = 20. double minCloseDist = 20. } ## _Reader_ ## module MyDTAnalyzer = MyDTAnalyzer { bool doHits = true bool doSegs = true bool doSA = true bool isMC = false InputTag SimTrackLabel = "g4SimHits" untracked bool debug = false bool PRINT = false int32 Verbosity = 1 ##untracked string rootFileName = "rootfiles/GRUMM/MyDTAnalyzer_YB012_SurveyInternalNew_PhiCut_GRUMM37919.root" untracked string rootFileName = "rootfiles/angleStudy/MyDTAnalyzer_SurveyCh4mm.root" string recHits1DLabel = "dt1DRecHits" string recHits2DLabel = "dt2DSegments" string recHits4DLabel = "dt4DSegments" # Cut in the Chi2 of the reco track double chi2Cut = 999999 ## Cut in 35 (after exponential fit, 87% efficiency) string SALabel = "cosmicMuons" } ###----------------------------- IGUANA ----------------------------------### ## include "VisFramework/VisApplication/data/iguana-dt.cfi" ## for 3D visualization... service = VisConfigurationService { ########## # Number of various windows to be popped up and tiled. # Default value is 'RPhi Window' # # untracked vstring Views = {'3D Window', 'Lego Window', 'RPhi Window', 'RZ Window'} untracked vstring Views = {'3D Window'} # ######### # Which context data proxies to load (the default value is defined # in VisApplicationMain and usually loads all available data proxies): untracked vstring ContentProxies = {'Reco/Detector','Reco/Hcal', 'Reco/MuonDT', 'Reco/MuonCSC', # 'Reco/Trigger', 'Reco/Calorimetry', 'Reco/Ecal'} # 'Reco/Trigger', 'Reco/Calorimetry', 'Reco/Ecal', 'Reco/Muon'} 'Reco/Muon'} untracked vstring EnabledTwigs = { # '/Objects/CMS Event and Detector/HCAL Event/Hcal Barrel and Endcap RecHits', # '/Objects/CMS Event and Detector/HCAL Event/Hcal Forward RecHits', # '/Objects/CMS Event and Detector/ECAL Event/Rec hits', '/Objects/CMS Event and Detector/Muon DT Event/DT Digis', '/Objects/CMS Event and Detector/Muon DT Event/DT RecHits', # '/Objects/CMS Event and Detector/DTs/Wheel 0/Sector 10', # '/Objects/CMS Event and Detector/DTs/Wheel 0/Sector 12', # '/Objects/CMS Event and Detector/DTs/Wheel 1/Sector 10', # '/Objects/CMS Event and Detector/DTs/Wheel 1/Sector 11', # '/Objects/CMS Event and Detector/DTs/Wheel 1/Sector 2', # '/Objects/CMS Event and Detector/DTs/Wheel 1/Sector 3' '/Objects/CMS Event and Detector/DTs/Wheel 0' } } ###------------------------------------- ----------------------------------### # CSC sequence sequence csclocalreco = {csc2DRecHits, cscSegments} path p = {dtunpacker, dt1DRecHits, dt2DSegments, dt4DSegments, CosmicMuonSeed, cosmicMuons, MyDTAnalyzer} ## path p = {dtunpacker, dt1DRecHits, dt2DSegments, dt4DSegments, CosmicMuonSeed, cosmicMuons, DTAnalyzer} ## this is to have edm-root output file with reco objects ## endpath this_is_the_end = {out} }