# 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 = { # 'file:/raid3/data/YB0/GREN/Run30126_1.root' # } # } # Global run, flat files : # source = NewEventStreamFileReader{ # untracked vstring fileNames = { # "file:/raid3/data/YB0/Global_r34539.dat" # } # } # local runs source = DaqSource{ untracked string readerPluginName = "DTDDUFileReader" untracked PSet readerPset = { # YB+0 data: untracked string fileName ="file:/raid3/data/YB0/Local_r35110.i0" # untracked string fileName ="file:/raid3/data/YB0/Local_r35005.i0" untracked bool isRaw = true } } # =========================================================== # 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 localDAQ = true untracked bool performDataIntegrityMonitor = false untracked bool debug = true PSet rosParameters = { # untracked bool localDAQ = false untracked bool localDAQ = true untracked bool readingDDU = true untracked bool writeSC = true untracked bool readDDUIDfromDDU = true untracked bool performDataIntegrityMonitor = false untracked bool debug = false } } } # ================================= # 3) Mapping # ================================= es_source dtPedestals = PoolDBESSource { string timetype = "runnumber" # YB0: string connect = "sqlite_file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/channelsMap_new/mapWh0.db" untracked string catalog = "file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/channelsMap_new/mapWh0.xml" # string connect = "sqlite_file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/cms/mapWh0_774.db" # YB+2. GR-CSC, Feb 08: # string connect = "sqlite_file:mapWh2_GRCSC.db" untracked bool siteLocalConfig = true untracked uint32 authenticationMethod = 0 PSet DBParameters = { untracked int32 messageLevel = 0 } VPSet toGet = { { string record = "DTReadOutMappingRcd" string tag = "channelsMap" } } } include "CondCore/DBCommon/data/CondDBSetup.cfi" # ================================================================= # 4) define here the T0 map to be used (t0.db s for ALL Sectors) # ================================================================= # T0 from DB es_source t0 = PoolDBESSource { using CondDBSetup VPSet toGet = { { string record = "DTT0Rcd" # string tag = "tzero_13_03_07" string tag = "t0" } } bool loadAll = true # old t0's: # string connect = "sqlite_file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/t0/t0.db" # # new t0's (original from Silvia in: /afs/cern.ch/user/m/maselli/public/SYNCRO/Wheel0_wrtChamber/.) string connect = "sqlite_file:t0_wrtchamber_wheel0_whole.db" string timetype = "runnumber" # untracked uint32 authenticationMethod = 0 # untracked uint32 messagelevel = 0 } # =============================================================== # 5) tTrig map to be used # =============================================================== es_source tTrigMapping = PoolDBESSource { using CondDBSetup # string connect = "sqlite_file:ttrigg_YB0_Run26402.db" # string connect = "sqlite_file:ttrigg_YB0_Run27963.db" # string connect = "sqlite_file:ttrigg_YB0_Run27988.db" # from Silvia (original in /afs/cern.ch/user/m/maselli/public/SYNCRO/Wheel0_wrtChamber/.) # string connect = "sqlite_file:ttrig_wrtchamber_wh0_noise27932_corrected.db" # string connect = "sqlite_file:ttrigg_YB0_Run30625new.db" # YB0: # string connect = "sqlite_file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/tTrig/tTrig_Wh0.db" # untracked string catalog = "file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/tTrig/tTrig_Wh0.xml" string connect = "sqlite_file:ttrig_r35110.db" # Feb08 GR with CSC: # string connect = "sqlite_file:ttrig_wrtchamber_W2_GR34539.db" string timetype = "runnumber" untracked uint32 authenticationMethod = 0 VPSet toGet = { { string record = "DTTtrigRcd" # string tag = "tTrig" string tag = "ttrig" } } } # ======================== # 5.a) Map of noisy channel # ======================== es_source Noise = PoolDBESSource { using CondDBSetup string connect = "sqlite_file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/noise/noise_Wh0.db" untracked string catalog = "file:/afs/cern.ch/cms/Physics/muon/CMSSW/DT/SQLLite/TestYB0/noise/noise_Wh0.xml" # string connect = "sqlite_file:Noise_run30146.db" ## untracked string catalog = "file:noise_YB0_Sec2.xml" ## untracked string catalog = "file:catalog.xml" string timetype = "runnumber" untracked uint32 authenticationMethod = 0 VPSet toGet = {{ string record = "DTStatusFlagRcd" string tag = "noise" }} } # ============================================ # 6) cfi's for reconstruction # ============================================ 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" include "RecoLocalMuon/DTRecHit/data/dt1DRecHits_LinearDrift_CosmicData.cfi" replace DTLinearDriftAlgo_CosmicData.recAlgoConfig.hitResolution = 0.06 # modified hit resolution # include "RecoLocalMuon/DTSegment/test/dt1DRecHits_LinearDrift_CosmicData.cfi" # replace double hitResolution = 0.06 include "RecoLocalMuon/DTSegment/data/dt2DSegments_CombPatternReco2D_LinearDrift_CosmicData.cfi" include "RecoLocalMuon/DTSegment/data/dt4DSegments_CombPatternReco4D_LinearDrift_CosmicData.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 } } } # to have reco object output file: # module out = PoolOutputModule { # untracked string fileName ="MuonReco.root" # } ####### Include Survey DB wheels 0,1,2 on surface ##### include "RecoLocalMuon/DTSegment/test/loadDataBase.cfi" # =================================================== # 7) configuration of your analyzer # =================================================== ## _Reader_ ## module DTAnalyzer = DTAnalyzer { bool doTrig = true bool doHits = true bool doSegs = true bool doSA = true bool isMC = false untracked bool debug = false bool LCT_RPC = true bool LCT_DT = true bool LCT_CSC = true #untracked string rootFileName = "rootfiles/lrYB0/DTAnalyzer_YB0_Nominal_LR35005.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 = true ## bool isMC = false untracked bool debug = false bool PRINT = false int32 Verbosity = 1 bool LCT_RPC = true bool LCT_DT = true bool LCT_CSC = true untracked string rootFileName = "rootfiles/lrYB0/MyDTAnalyzer_YB0_Nominal_100umBIN_LR35110.root" #untracked string rootFileName = "rootfiles/MyDTAnalyzer10000SIOriginalSignChanged.root" string DTLocalTriggerLabel = "dtunpacker" 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) # 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" } # path p = {dtunpacker, DTAnalyzer} path p = {dtunpacker, dt1DRecHits, dt2DSegments, dt4DSegments, CosmicMuonSeed, cosmicMuons, MyDTAnalyzer} ## this is to have edm-root output file with reco objects ## endpath this_is_the_end = {out} }