'keep *_genPUProtons_*_*'))
# Event content for premixing library
SimGeneralPREMIX = cms.PSet(outputCommands=cms.untracked.vstring())

# mods for HGCAL; should these be moved under SimCalorimetry?
_phase2_hgc_extraCommands = cms.PSet(  # using PSet in order to customize with Modifier
    v=cms.vstring('keep *_simHGCalUnsuppressedDigis_EE_*',
                  'keep *_simHGCalUnsuppressedDigis_HEfront_*',
                  'keep *_simHGCalUnsuppressedDigis_HEback_*',
                  'keep *_mix_MergedCaloTruth_*'), )
# For phase2 premixing switch the sim digi collections to the ones including pileup
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(_phase2_hgc_extraCommands,
                       v=[
                           'keep *_mixData_HGCDigisEE_*',
                           'keep *_mixData_HGCDigisHEfront_*',
                           'keep *_mixData_HGCDigisHEback_*',
                           'keep *_mixData_MergedCaloTruth_*'
                       ])
from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
phase2_hgcal.toModify(SimGeneralRAW,
                      outputCommands=SimGeneralRAW.outputCommands +
                      _phase2_hgc_extraCommands.v)
phase2_hgcal.toModify(SimGeneralFEVTDEBUG,
                      outputCommands=SimGeneralFEVTDEBUG.outputCommands +
                      _phase2_hgc_extraCommands.v)
phase2_hgcal.toModify(SimGeneralRECO,
                      outputCommands=SimGeneralRECO.outputCommands +
                      _phase2_hgc_extraCommands.v)
phase2_hgcal.toModify(SimGeneralPREMIX,
                      outputCommands=SimGeneralPREMIX.outputCommands +
import FWCore.ParameterSet.Config as cms

trackingParticleRefSelector = cms.EDFilter("TrackingParticleRefSelector",
    src = cms.InputTag("mix","MergedTrackTruth"),
    chargedOnly = cms.bool(True),
    pdgId = cms.vint32(),
    tip = cms.double(3.5),
    signalOnly = cms.bool(True),
    intimeOnly = cms.bool(False),
    stableOnly = cms.bool(False),
    minRapidity = cms.double(-2.4),
    lip = cms.double(30.0),
    ptMin = cms.double(0.9),
    ptMax = cms.double(1e100),
    maxRapidity = cms.double(2.4),
    minHit = cms.int32(0),
    minPhi = cms.double(-3.2),
    maxPhi = cms.double(3.2),
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackingParticleRefSelector, src = "mixData:MergedTrackTruth")
Example #3
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalHitCalibrationDefault_cfi import hgcalHitCalibrationDefault as _hgcalHitCalibrationDefault

hgcalHitCalibration = _hgcalHitCalibrationDefault.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(hgcalHitCalibration,
                       caloParticles="mixData:MergedCaloTruth")

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9

phase2_hgcalV9.toModify(hgcalHitCalibration, depletionFine=120)
Example #4
0
    cummatbudinxo=cms.FileInPath(
        'Validation/HGCalValidation/data/D41.cumulative.xo'),

    ### sim input configuration ###
    label_cp_effic=layerClusterCaloParticleAssociation.label_cp,
    label_cp_fake=cms.InputTag("mix", "MergedCaloTruth"),
    #simClusters
    label_scl=layerClusterSimClusterAssociation.label_scl,
    simVertices=cms.InputTag("g4SimHits"),
    LayerClustersInputMask=cms.VInputTag(lcInputMask),

    #Total number of layers of HGCal that we want to monitor
    #Could get this also from HGCalImagingAlgo::maxlayer but better to get it from here
    totallayers_to_monitor=cms.int32(52),
    #Thicknesses we want to monitor. -1 is for scintillator
    thicknesses_to_monitor=cms.vint32(120, 200, 300, -1),

    # HistoProducerAlgo. Defines the set of plots to be booked and filled
    histoProducerAlgoBlock=HGVHistoProducerAlgoBlock,

    ### output configuration
    dirName=cms.string('HGCAL/HGCalValidator/'))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(hgcalValidator, label_cp_fake="mixData:MergedCaloTruth")

from Configuration.Eras.Modifier_phase2_hgcalV10_cff import phase2_hgcalV10

phase2_hgcalV10.toModify(hgcalValidator, totallayers_to_monitor=cms.int32(50))
Example #5
0
import FWCore.ParameterSet.Config as cms
from Validation.MtdValidation.etlDigiHitsDefault_cfi import etlDigiHitsDefault as _etlDigiHitsDefault
etlDigiHits = _etlDigiHitsDefault.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(etlDigiHits, inputTag = cms.InputTag("mixData","FTLEndcap"))
Example #6
0
    src = cms.InputTag("mix", "MergedTrackTruth"),
    pdgId = cms.vint32(13, -13),
    tip = cms.double(3.5),
    lip = cms.double(30.0),
    minHit = cms.int32(0),
    ptMin = cms.double(0.9),
    ptMax = cms.double(1e100),
    minRapidity = cms.double(-2.4),
    maxRapidity = cms.double(2.4),
    signalOnly = cms.bool(True),
    intimeOnly = cms.bool(True),  # discard OOT PU
    stableOnly = cms.bool(True),  # discard decays in flight from the signal event
    chargedOnly = cms.bool(True)
)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(muonTPSet, src = "mixData:MergedTrackTruth")

me0MuonTPSet = muonTPSet.clone(
    pdgId = cms.vint32(13, -13),
    tip = cms.double(3.5),
    lip = cms.double(30.0),
    minHit = cms.int32(0),
    ptMin = cms.double(0.9),
    ptMax = cms.double(1e100),
    minRapidity = cms.double(-2.8),
    maxRapidity = cms.double(2.8),
    signalOnly = cms.bool(True),
    intimeOnly = cms.bool(True),  # discard OOT PU
    stableOnly = cms.bool(True),  # discard decays in flight from the signal event
    chargedOnly = cms.bool(True)
)
Example #7
0
from SimGeneral.MixingModule.SiPixelSimParameters_cfi import SiPixelSimBlock

pixelDigitizer = cms.PSet(SiPixelSimBlock,
                          accumulatorType=cms.string("SiPixelDigitizer"),
                          hitsProducer=cms.string('g4SimHits'),
                          makeDigiSimLinks=cms.untracked.bool(True))
from Configuration.ProcessModifiers.premix_stage1_cff import premix_stage1
premix_stage1.toModify(pixelDigitizer, makeDigiSimLinks=False)

# Customize here instead of SiPixelSimBlock as the latter is imported
# also to DataMixer configuration, and the original version is needed
# there in stage2. Customize before phase2_tracker because this
# customization applies only to phase0/1 pixel.
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    pixelDigitizer,
    AddPixelInefficiency=False  # will be added in DataMixer
)

from SimTracker.SiPhase2Digitizer.phase2TrackerDigitizer_cfi import phase2TrackerDigitizer as _phase2TrackerDigitizer, _premixStage1ModifyDict
from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
phase2_tracker.toReplaceWith(
    pixelDigitizer, _phase2TrackerDigitizer.clone()
)  # have to clone here in order to not change the original with further customizations

# Customize here instead of phase2TrackerDigitizer as the latter is
# imported also to DataMixer configuration, and the original version
# is needed there in stage2.
(premix_stage2 & phase2_tracker).toModify(pixelDigitizer,
                                          **_premixStage1ModifyDict)
from CalibTracker.SiPixelESProducers.PixelFEDChannelCollectionProducer_cfi import *
import FWCore.ParameterSet.Config as cms
from Validation.SiTrackerPhase2V.Phase2ITValidateTrackingRecHit_cfi import Phase2ITValidateTrackingRecHit
trackingRechitValidIT = Phase2ITValidateTrackingRecHit.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackingRechitValidIT,
    pixelSimLinkSrc = "mixData:PixelDigiSimLink",
)
    ### Do plots only if first reco vertex is from hard scatter?
    doPlotsOnlyForTruePV = cms.untracked.bool(False),
    label_vertex = cms.untracked.InputTag("offlinePrimaryVertices"),
    vertexAssociator = cms.untracked.InputTag("VertexAssociatorByPositionAndTracks"),

    simPVMaxZ = cms.untracked.double(-1),

    ### Allow switching off particular histograms
    doSummaryPlots = cms.untracked.bool(True),
    doSimPlots = cms.untracked.bool(True),
    doSimTrackPlots = cms.untracked.bool(True),
    doRecoTrackPlots = cms.untracked.bool(True),
    dodEdxPlots = cms.untracked.bool(False),
    doPVAssociationPlots = cms.untracked.bool(False), # do plots that require true PV, if True, label_vertex and vertexAssociator are read
    doSeedPlots = cms.untracked.bool(False), # input comes from TrackFromSeedProducer
    doMVAPlots = cms.untracked.bool(False), # needs input from track MVA selectors

    ### do resolution plots only for these labels (or all if empty)
    doResolutionPlotsForLabels = cms.VInputTag(),
)

from Configuration.Eras.Modifier_fastSim_cff import fastSim
fastSim.toModify(multiTrackValidator, sim = ['fastSimProducer:TrackerHits'])

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(multiTrackValidator,
    label_tp_effic = "mixData:MergedTrackTruth",
    label_tp_fake = "mixData:MergedTrackTruth",
    label_tv = "mixData:MergedTrackTruth",
)
import FWCore.ParameterSet.Config as cms
import EventFilter.HGCalRawToDigi.HGCalRawToDigiFake_cfi

hgcalDigis = EventFilter.HGCalRawToDigi.HGCalRawToDigiFake_cfi.HGCalRawToDigiFake.clone()

from Configuration.ProcessModifiers.convertHGCalDigisReco_cff import convertHGCalDigisReco
import EventFilter.HGCalRawToDigi.HGCDigiConverter_cfi
_hgcalDigisConverted = EventFilter.HGCalRawToDigi.HGCDigiConverter_cfi.HGCDigiConverter.clone()
convertHGCalDigisReco.toReplaceWith(hgcalDigis,_hgcalDigisConverted)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(hgcalDigis,
    eeDigis = 'mixData:HGCDigisEE',
    fhDigis = 'mixData:HGCDigisHEfront',
    bhDigis = 'mixData:HGCDigisHEback',
)

import FWCore.ParameterSet.Config as cms

from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
cscDigiValidation = DQMEDAnalyzer('CSCDigiValidation',
    simHitsTag = cms.InputTag("mix", "g4SimHitsMuonCSCHits"),
    wireDigiTag = cms.InputTag("simMuonCSCDigis","MuonCSCWireDigi"),
    outputFile = cms.string(''),
    stripDigiTag = cms.InputTag("simMuonCSCDigis","MuonCSCStripDigi"),
    comparatorDigiTag = cms.InputTag("simMuonCSCDigis","MuonCSCComparatorDigi"),
    alctDigiTag = cms.InputTag("simCscTriggerPrimitiveDigis"),
    clctDigiTag = cms.InputTag("simCscTriggerPrimitiveDigis"),
    doSim = cms.bool(False)
)

from Configuration.Eras.Modifier_fastSim_cff import fastSim
fastSim.toModify(cscDigiValidation, simHitsTag = "mix:MuonSimHitsMuonCSCHits")

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(cscDigiValidation,
    wireDigiTag = "mixData:MuonCSCWireDigisDM",
    stripDigiTag = "mixData:MuonCSCStripDigisDM",
    comparatorDigiTag = "mixData:MuonCSCComparatorDigisDM",
)

import FWCore.ParameterSet.Config as cms
from Validation.HGCalValidation.hgcalDigiValidationEEDefault_cfi import hgcalDigiValidationEEDefault as _hgcalDigiValidationEEDefault
hgcalDigiValidationEE = _hgcalDigiValidationEEDefault.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(hgcalDigiValidationEE, DigiSource="mixData:HGCDigisEE")
)
# Add extra collections if running in Run 2. Not sure why but these
# collections were added to pretty much all event content in the old
# customisation function.
from Configuration.Eras.Modifier_run2_common_cff import run2_common
run2_common.toModify( SimMuonRAW.outputCommands, func=lambda outputCommands: outputCommands.append('keep *_simMuonCSCDigis_*_*') )
run2_common.toModify( SimMuonRAW.outputCommands, func=lambda outputCommands: outputCommands.append('keep *_simMuonRPCDigis_*_*') )

# The merged SimDigi collections have mixData label, drop the signal-only ones
# Eventually (if/when we switch muon premixing to use SimHits) this whole customization
#   can be removed as the collection names become the standard ones
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(SimMuonFEVTDEBUG, outputCommands = [
        'keep CSCDetIdCSCComparatorDigiMuonDigiCollection_mixData_*_*',
        'keep CSCDetIdCSCStripDigiMuonDigiCollection_mixData_*_*',
        'keep CSCDetIdCSCWireDigiMuonDigiCollection_mixData_*_*',
        'keep DTLayerIdDTDigiMuonDigiCollection_mixData_*_*',
        'keep RPCDetIdRPCDigiMuonDigiCollection_mixData_*_*',
])
# Almost same (without DT) for SimMuonRAW following the run2_common customization
premix_stage2.toModify(SimMuonRAW, outputCommands = [
        'keep *_mixData_MuonCSCStripDigiSimLinks_*',
        'keep DTLayerIdDTDigiSimLinkMuonDigiCollection_mixData_*_*',
        'keep *_mixData_RPCDigiSimLink_*',
])
(run2_common & premix_stage2).toModify(SimMuonRAW, outputCommands = SimMuonRAW.outputCommands + [
        'drop *_simMuonCSCDigis_*_*',
        'drop *_simMuonRPCDigis_*_*',
        'keep *_mixData_MuonCSCWireDigiSimLinks_*',
        'keep CSCDetIdCSCComparatorDigiMuonDigiCollection_mixData_*_*',
        'keep CSCDetIdCSCStripDigiMuonDigiCollection_mixData_*_*',
Example #14
0
        xmax           = cms.double(30.),
        switchon  = cms.bool(True)
    ),

    SubDetList = cms.vstring('TIB','TOB','TID','TEC'),
    associatePixel = cms.bool(False),
    stereoRecHits = cms.InputTag("siStripMatchedRecHits","stereoRecHit"),
    matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
    ROUList = cms.vstring('g4SimHitsTrackerHitsTIBLowTof', 
        'g4SimHitsTrackerHitsTIBHighTof', 
        'g4SimHitsTrackerHitsTIDLowTof', 
        'g4SimHitsTrackerHitsTIDHighTof', 
        'g4SimHitsTrackerHitsTOBLowTof', 
        'g4SimHitsTrackerHitsTOBHighTof', 
        'g4SimHitsTrackerHitsTECLowTof', 
        'g4SimHitsTrackerHitsTECHighTof'),
    associateRecoTracks = cms.bool(False),
    associateStrip = cms.bool(True),
    rphiRecHits = cms.InputTag("siStripMatchedRecHits","rphiRecHit"),
    RecHitProducer = cms.string('siStripMatchedRecHits'),
    pixelSimLinkSrc = cms.InputTag("simSiPixelDigis"),
    stripSimLinkSrc = cms.InputTag("simSiStripDigis"),
    verbose = cms.untracked.bool(False)
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(stripRecHitsValid,
    pixelSimLinkSrc = "mixData:PixelDigiSimLink",
    stripSimLinkSrc = "mixData:StripDigiSimLink",
)
        Nxbins = cms.int32(64),
        xmin   = cms.double(-3.2),
        xmax   = cms.double(3.2),
        Nybins = cms.int32(100),
        ymin   = cms.double(0.),
        ymax   = cms.double(50.)
    ),
   TOFZMapH = cms.PSet(
        Nxbins = cms.int32(3000),
        xmin   = cms.double(-300.),
        xmax   = cms.double(300.),
        Nybins = cms.int32(100),
        ymin   = cms.double(0.),
        ymax   = cms.double(50.)
    ),
    TOFRMapH = cms.PSet(
        Nxbins = cms.int32(1200),
        xmin   = cms.double(0.),
        xmax   = cms.double(120.),
        Nybins = cms.int32(100),
        ymin   = cms.double(0.),
        ymax   = cms.double(50.)
    )
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(digiValid,
    OuterTrackerDigiSimLinkSource = "mixData:Phase2OTDigiSimLink",
    InnerPixelDigiSimLinkSource = "mixData:PixelDigiSimLink",
)
Example #16
0
import FWCore.ParameterSet.Config as cms
import copy

from Configuration.StandardSequences.MagneticField_cff import *

import SimTracker.TrackAssociatorProducers.trackAssociatorByHits_cfi as tabh

# Track quality parameters
trackQuality = cms.PSet(
	hitAssociator = cms.PSet(
		associatePixel = cms.bool(True),
		associateStrip = cms.bool(True),
		associateRecoTracks = cms.bool(True),
		ROUList = copy.deepcopy(tabh.trackAssociatorByHits.ROUList),
                pixelSimLinkSrc = cms.InputTag("simSiPixelDigis"),
                stripSimLinkSrc = cms.InputTag("simSiStripDigis")
	)
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackQuality,
    hitAssociator = dict(
        pixelSimLinkSrc = "mixData:PixelDigiSimLink",
        stripSimLinkSrc = "mixData:StripDigiSimLink",
    )
)
import FWCore.ParameterSet.Config as cms

# Clusterizer options
siPhase2Clusters = cms.EDProducer('Phase2TrackerClusterizer',
    src = cms.InputTag("mix", "Tracker"),
    maxClusterSize = cms.uint32(0), # was 8
    maxNumberClusters = cms.uint32(0)
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(siPhase2Clusters, src = "mixData:Tracker")

Example #18
0
import FWCore.ParameterSet.Config as cms

layerClusterSimClusterAssociation = cms.EDProducer(
    "LCToSCAssociatorEDProducer",
    associator=cms.InputTag('scAssocByEnergyScoreProducer'),
    label_scl=cms.InputTag("mix", "MergedCaloTruth"),
    label_lcl=cms.InputTag("hgcalLayerClusters"))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(layerClusterSimClusterAssociation,
                       label_scl="mixData:MergedCaloTruth")
Example #19
0
fastSim.toModify(muonAssociatorByHitsCommonParameters,
    simtracksTag = "fastSimProducer",
    DTsimhitsTag  = "MuonSimHits:MuonDTHits",
    CSCsimHitsTag = "MuonSimHits:MuonCSCHits",
    RPCsimhitsTag = "MuonSimHits:MuonRPCHits",
    simtracksXFTag = "mix:fastSimProducer",
    DTsimhitsXFTag  = "mix:MuonSimHitsMuonDTHits",
    CSCsimHitsXFTag = "mix:MuonSimHitsMuonCSCHits",
    RPCsimhitsXFTag = "mix:MuonSimHitsMuonRPCHits",
    ROUList = ['fastSimProducerTrackerHits']
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(muonAssociatorByHitsCommonParameters,
    pixelSimLinkSrc = "mixData:PixelDigiSimLink",
    stripSimLinkSrc = "mixData:StripDigiSimLink",
    phase2TrackerSimLinkSrc = "mixData:Phase2OTDigiSimLink",
)
  
muonAssociatorByHits = cms.EDProducer("MuonAssociatorEDProducer",
    # COMMON CONFIGURATION
    muonAssociatorByHitsCommonParameters,
    # for Muon Track association
    #
    #     input collections
    #
    # ... reco::Track collection
    # tracksTag = cms.InputTag("standAloneMuons"),
    # tracksTag = cms.InputTag("standAloneMuons","UpdatedAtVtx"),
    # tracksTag = cms.InputTag("standAloneSETMuons"),
    # tracksTag = cms.InputTag("standAloneSETMuons","UpdatedAtVtx"),                                   
    ### Allow switching off particular histograms
    doSummaryPlots=cms.untracked.bool(True),
    doSimPlots=cms.untracked.bool(True),
    doSimTrackPlots=cms.untracked.bool(True),
    doRecoTrackPlots=cms.untracked.bool(True),
    dodEdxPlots=cms.untracked.bool(False),
    doPVAssociationPlots=cms.untracked.bool(
        False
    ),  # do plots that require true PV, if True, label_vertex and vertexAssociator are read
    doSeedPlots=cms.untracked.bool(
        False),  # input comes from TrackFromSeedProducer
    doMVAPlots=cms.untracked.bool(
        False),  # needs input from track MVA selectors

    ### do resolution plots only for these labels (or all if empty)
    doResolutionPlotsForLabels=cms.VInputTag(),
    cores=cms.InputTag("highPtJetsForTrk"),  #ak4CaloJets with pt>1 TeV
)

from Configuration.Eras.Modifier_fastSim_cff import fastSim
fastSim.toModify(multiTrackValidator, sim=['fastSimProducer:TrackerHits'])

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    multiTrackValidator,
    label_tp_effic="mixData:MergedTrackTruth",
    label_tp_fake="mixData:MergedTrackTruth",
    label_tv="mixData:MergedTrackTruth",
)
Example #21
0
    associators = cms.VInputTag(cms.InputTag('quickTrackAssociatorByHits') )
    )

from Configuration.Eras.Modifier_phase2_timing_cff import phase2_timing
phase2_timing.toModify(
    simPFProducer,
    trackTimeValueMap = cms.InputTag("trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModel"),
    trackTimeErrorMap = cms.InputTag("trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModelResolution"),
    gsfTrackTimeValueMap = cms.InputTag("gsfTrackTimeValueMapProducer:electronGsfTracksConfigurableFlatResolutionModel"),
    gsfTrackTimeErrorMap = cms.InputTag("gsfTrackTimeValueMapProducer:electronGsfTracksConfigurableFlatResolutionModelResolution"),
)

from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
phase2_timing_layer.toModify(
    simPFProducer,
    trackTimeValueMap = cms.InputTag("tofPID:t0"),
    trackTimeErrorMap = cms.InputTag("tofPID:sigmat0"),
    #this will cause no time to be set for gsf tracks
    #(since this is not available for the fullsim/reconstruction yet)
    #*TODO* update when gsf times are available
    gsfTrackTimeValueMap = cms.InputTag("tofPID:t0"),
    gsfTrackTimeErrorMap = cms.InputTag("tofPID:sigmat0"),
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(simPFProducer,
    trackingParticleSrc = "mixData:MergedTrackTruth",
    caloParticlesSrc = "mixData:MergedCaloTruth",
    simClusterTruthSrc = "mixData:MergedCaloTruth",
)
Example #22
0
    simulateElectronBkg = cms.bool(True),	#False=simulate only neutral Bkg
    instLumi = cms.double(7.5), # in units of 1E34 cm^-2 s^-1. Internally the background is parametrized from FLUKA+GEANT results at 5x10^34 (PU140). We are adding a 1.5 factor for PU200
    rateFact = cms.double(1.0), # Set this factor to 1 since the new background model includes the new beam pipe and the relevant effects, so no need of higher safety factor. keeping is here is just for backward compatibiliy
    referenceInstLumi = cms.double(5.), #In units of 10^34 Hz/cm^2. Internally the functions based on the FLUKA+GEANT simulation are normalized to 5x10^34 Hz/cm^2, this is needed to rescale them properly
    resolutionX = cms.double(0.03), # referenced 2014 Test Beam results.
#the following parameters are needed to model the neutron induced background contribution.
#The parameters have been obtained after the fit of the rates predicted by FLUKA.
#By default the backgroud modeling with these parameters should be disabled with the 92X release setting doBkgNoise=False   
    GE11ElecBkgParam0 = cms.double(406.249),
    GE11ElecBkgParam1 = cms.double(-2.90939),
    GE11ElecBkgParam2 = cms.double(0.00548191),
    GE21ElecBkgParam0 = cms.double(97.0505),
    GE21ElecBkgParam1 = cms.double(-0.452612),
    GE21ElecBkgParam2 = cms.double(0.000550599),
    GE11ModNeuBkgParam0 = cms.double(5710.23),
    GE11ModNeuBkgParam1 = cms.double(-43.3928),
    GE11ModNeuBkgParam2 = cms.double(0.0863681),
    GE21ModNeuBkgParam0 = cms.double(1440.44),
    GE21ModNeuBkgParam1 = cms.double(-7.48607),
    GE21ModNeuBkgParam2 = cms.double(0.0103078)
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(gemDigiCommonParameters, mixLabel = "mixData")

# Module to create simulated GEM digis.
simMuonGEMDigis = cms.EDProducer("GEMDigiProducer",
    gemDigiCommonParameters
)

                                         src = cms.untracked.string('generalTracks'),
                                         runStandalone = cms.bool(False),
                                         outputFile = cms.untracked.string(''),
                                         #debugNtuple = cms.untracked.string('SiPixelTrackingRecHitsValid_Ntuple.root'),
                                         debugNtuple = cms.untracked.string(''),
                                         Fitter = cms.string('KFFittingSmoother'),
                                         # do we check that the simHit associated with recHit is of the expected particle type ?
                                         checkType = cms.bool(True),
                                         MTCCtrack = cms.bool(False),
                                         TTRHBuilder = cms.string('WithAngleAndTemplate'),
                                         # the type of particle that the simHit associated with recHits should be
                                         genType = cms.int32(13),
                                         associatePixel = cms.bool(True),
                                         associateRecoTracks = cms.bool(False),
                                         associateStrip = cms.bool(False),
                                         pixelSimLinkSrc = cms.InputTag("simSiPixelDigis"),
                                         stripSimLinkSrc = cms.InputTag("simSiStripDigis"),
                                         ROUList = cms.vstring('g4SimHitsTrackerHitsPixelBarrelLowTof', 
                                                               'g4SimHitsTrackerHitsPixelBarrelHighTof', 
                                                               'g4SimHitsTrackerHitsPixelEndcapLowTof', 
                                                               'g4SimHitsTrackerHitsPixelEndcapHighTof'),
                                         Propagator = cms.string('PropagatorWithMaterial')
                                         )


from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(PixelTrackingRecHitsValid,
    pixelSimLinkSrc = "mixData:PixelDigiSimLink",
    stripSimLinkSrc = "mixData:StripDigiSimLink",
)
Example #24
0
    TOFPhiMapH=cms.PSet(Nxbins=cms.int32(64),
                        xmin=cms.double(-3.2),
                        xmax=cms.double(3.2),
                        Nybins=cms.int32(100),
                        ymin=cms.double(0.),
                        ymax=cms.double(50.),
                        switch=cms.bool(False)),
    TOFZMapH=cms.PSet(Nxbins=cms.int32(3000),
                      xmin=cms.double(-300.),
                      xmax=cms.double(300.),
                      Nybins=cms.int32(100),
                      ymin=cms.double(0.),
                      ymax=cms.double(50.),
                      switch=cms.bool(False)),
    TOFRMapH=cms.PSet(Nxbins=cms.int32(1200),
                      xmin=cms.double(0.),
                      xmax=cms.double(120.),
                      Nybins=cms.int32(100),
                      ymin=cms.double(0.),
                      ymax=cms.double(50.),
                      switch=cms.bool(False)))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    digiValid,
    InnerPixelDigiSource="mixData:Pixel",
    OuterTrackerDigiSource="mixData:Tracker",
    OuterTrackerDigiSimLinkSource="mixData:Phase2OTDigiSimLink",
    InnerPixelDigiSimLinkSource="mixData:PixelDigiSimLink",
)
Example #25
0
    simHitTpMapTag=cms.InputTag("simHitTPAssocProducer"),
    #
    # if !UseAssociators the association map has to be given in input
    associators=cms.vstring('MuonAssociationByHits'),
    UseAssociators=cms.bool(False),
    useGEMs=cms.bool(False),
    useME0=cms.bool(False),
    associatormap=cms.InputTag("tpToMuonTrackAssociation"),
    #
    # BiDirectional Logic for RecoToSim association corrects the Fake rates (counting ghosts and split tracks as fakes)
    #  setting it to False the ghost and split tracks are counted as good ones
    #  the default setting is True: should NOT be changed !
    BiDirectional_RecoToSim_association=cms.bool(True),
    #
    # Output File / Directory
    outputFile=cms.string(''),
    dirName=cms.string('Muons/RecoMuonV/MuonTrack/'),
    #
    # Parameters defining which histograms to make and their attributes (nbins, range: min, max...)
    muonHistoParameters=cms.PSet(defaultMuonHistoParameters))

from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
run3_GEM.toModify(muonTrackValidator, useGEMs=cms.bool(True))
from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
phase2_muon.toModify(muonTrackValidator, useME0=cms.bool(True))
from Configuration.Eras.Modifier_phase2_GE0_cff import phase2_GE0
phase2_GE0.toModify(muonTrackValidator, useME0=cms.bool(False))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(muonTrackValidator, label_tp="mixData:MergedTrackTruth")
Example #26
0
    trackTimeErrorMap=cms.InputTag(
        "trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModelResolution"
    ),
    gsfTrackTimeValueMap=cms.InputTag(
        "gsfTrackTimeValueMapProducer:electronGsfTracksConfigurableFlatResolutionModel"
    ),
    gsfTrackTimeErrorMap=cms.InputTag(
        "gsfTrackTimeValueMapProducer:electronGsfTracksConfigurableFlatResolutionModelResolution"
    ),
)

from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
phase2_timing_layer.toModify(
    simPFProducer,
    trackTimeValueMap=cms.InputTag("tofPID:t0"),
    trackTimeErrorMap=cms.InputTag("tofPID:sigmat0"),
    #this will cause no time to be set for gsf tracks
    #(since this is not available for the fullsim/reconstruction yet)
    #*TODO* update when gsf times are available
    gsfTrackTimeValueMap=cms.InputTag("tofPID:t0"),
    gsfTrackTimeErrorMap=cms.InputTag("tofPID:sigmat0"),
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    simPFProducer,
    trackingParticleSrc="mixData:MergedTrackTruth",
    caloParticlesSrc="mixData:MergedCaloTruth",
    simClusterTruthSrc="mixData:MergedCaloTruth",
)
Example #27
0
            1.06,
            # pt < 1e6
            1.04,
            1.04,
            1.04,
            1.04,
            1.05,
            1.04,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
            1.05,
        ),
    ),
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(
    L1EGammaClusterEmuProducer,
    ecalTPEB=cms.InputTag("DMEcalEBTriggerPrimitiveDigis", "", "HLT"),
    hcalTP=cms.InputTag("DMHcalTriggerPrimitiveDigis", "", "HLT"),
)
Example #28
0
                                do_generic_sim_plots = cms.untracked.bool(True),
                                verbose = cms.untracked.bool(False),
                                root_folder = cms.untracked.string("Vertexing/PrimaryVertexV"),
                                trackingParticleCollection = cms.untracked.InputTag("mix", "MergedTrackTruth"),
                                trackingVertexCollection = cms.untracked.InputTag("mix", "MergedTrackTruth"),
                                trackAssociatorMap = cms.untracked.InputTag("trackingParticleRecoTrackAsssociation"),
                                vertexAssociator = cms.untracked.InputTag("VertexAssociatorByPositionAndTracks"),
                                vertexRecoCollections = cms.VInputTag("offlinePrimaryVertices",
                                                                      "offlinePrimaryVerticesWithBS",
                                                                      "selectedOfflinePrimaryVertices",
                                                                      "selectedOfflinePrimaryVerticesWithBS"
                                                                      ),
)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(vertexAnalysis,
    trackingParticleCollection = "mixData:MergedTrackTruth",
    trackingVertexCollection = "mixData:MergedTrackTruth",
)

vertexAnalysisTrackingOnly = vertexAnalysis.clone(
    vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [
        "firstStepPrimaryVerticesPreSplitting",
        "firstStepPrimaryVertices"
    ]
)
from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
trackingLowPU.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value())
from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
trackingPhase2PU140.toModify(vertexAnalysisTrackingOnly,
    vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [
        "firstStepPrimaryVertices"
    ]
Example #29
0
import FWCore.ParameterSet.Config as cms
import EventFilter.HGCalRawToDigi.HGCalRawToDigiFake_cfi

hgcalDigis = EventFilter.HGCalRawToDigi.HGCalRawToDigiFake_cfi.HGCalRawToDigiFake.clone(
)

import EventFilter.HGCalRawToDigi.HFNoseRawToDigiFake_cfi

hfnoseDigis = EventFilter.HGCalRawToDigi.HFNoseRawToDigiFake_cfi.HFNoseRawToDigiFake.clone(
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    hgcalDigis,
    eeDigis='mixData:HGCDigisEE',
    fhDigis='mixData:HGCDigisHEfront',
    bhDigis='mixData:HGCDigisHEback',
)
Example #30
0
from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
phase2_timing.toModify( theDigitizers,
                        ecalTime = ecalTimeDigitizer.clone() )

from SimFastTiming.Configuration.SimFastTiming_cff import fastTimeDigitizer
phase2_timing_layer.toModify( theDigitizers,
                        fastTimingLayer = fastTimeDigitizer.clone() )

from SimFastTiming.Configuration.SimFastTiming_cff import mtdDigitizer
from Configuration.Eras.Modifier_phase2_timing_layer_tile_cff import phase2_timing_layer_tile
from Configuration.Eras.Modifier_phase2_timing_layer_bar_cff import phase2_timing_layer_bar
(phase2_timing_layer_tile | phase2_timing_layer_bar).toModify( theDigitizers,
                                                               fastTimingLayer = mtdDigitizer.clone() )

premix_stage2.toModify(theDigitizers,
    ecal = None,
    hcal = None,
)
(premix_stage2 & phase2_hgcal).toModify(theDigitizers,
    hgceeDigitizer = dict(premixStage1 = True),
    hgchebackDigitizer = dict(premixStage1 = True),
    hgchefrontDigitizer = dict(premixStage1 = True),
)
(premix_stage2 & phase2_hfnose).toModify(theDigitizers,
    hfnoseDigitizer = dict(premixStage1 = True),
)
(premix_stage2 & (phase2_timing_layer_tile | phase2_timing_layer_bar)).toModify(theDigitizers,
    fastTimingLayer = dict(
        barrelDigitizer = dict(premixStage1 = True),
        endcapDigitizer = dict(premixStage1 = True)
    )
)
    # tracking particles vs relative pT (for resolution plots)
    TH1Res_pt=cms.PSet(Nbinsx=cms.int32(100),
                       xmax=cms.double(0.2),
                       xmin=cms.double(-0.2)),

    # tracking particles vs eta (for resolution)
    TH1Res_eta=cms.PSet(Nbinsx=cms.int32(100),
                        xmax=cms.double(0.01),
                        xmin=cms.double(-0.01)),

    # tracking particles vs phi (for resolution)
    TH1Res_phi=cms.PSet(Nbinsx=cms.int32(100),
                        xmax=cms.double(0.01),
                        xmin=cms.double(-0.01)),

    # tracking particles vs z0 (for resolution)
    TH1Res_VtxZ=cms.PSet(Nbinsx=cms.int32(100),
                         xmax=cms.double(1.0),
                         xmin=cms.double(-1.0)),

    # tracking particles vs d0 (for resolution)
    TH1Res_d0=cms.PSet(Nbinsx=cms.int32(100),
                       xmax=cms.double(0.05),
                       xmin=cms.double(-0.05)),
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(OuterTrackerMonitorTrackingParticles,
                       trackingParticleToken="mixData:MergedTrackTruth")
Example #32
0
import FWCore.ParameterSet.Config as cms

from SimMuon.GEMDigitizer.simMuonGEMDigisDef_cfi import *
simMuonGEMDigis = simMuonGEMDigisDef.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(simMuonGEMDigis, mixLabel="mixData")

from Configuration.Eras.Modifier_run2_common_cff import run2_common
run2_common.toModify(simMuonGEMDigis, instLumi=1.5, bx0filter=True)

from Configuration.Eras.Modifier_run3_common_cff import run3_common
run3_common.toModify(simMuonGEMDigis, instLumi=2.0, bx0filter=True)

from Configuration.Eras.Modifier_phase2_common_cff import phase2_common
phase2_common.toModify(simMuonGEMDigis, instLumi=5, bx0filter=False)
Example #33
0
fastSim.toModify(muonAssociatorByHitsCommonParameters,
                 simtracksTag="fastSimProducer",
                 DTsimhitsTag="MuonSimHits:MuonDTHits",
                 CSCsimHitsTag="MuonSimHits:MuonCSCHits",
                 RPCsimhitsTag="MuonSimHits:MuonRPCHits",
                 simtracksXFTag="mix:fastSimProducer",
                 DTsimhitsXFTag="mix:MuonSimHitsMuonDTHits",
                 CSCsimHitsXFTag="mix:MuonSimHitsMuonCSCHits",
                 RPCsimhitsXFTag="mix:MuonSimHitsMuonRPCHits",
                 ROUList=['fastSimProducerTrackerHits'])

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(
    muonAssociatorByHitsCommonParameters,
    pixelSimLinkSrc="mixData:PixelDigiSimLink",
    stripSimLinkSrc="mixData:StripDigiSimLink",
    phase2TrackerSimLinkSrc="mixData:Phase2OTDigiSimLink",
)

muonAssociatorByHits = cms.EDProducer(
    "MuonAssociatorEDProducer",
    # COMMON CONFIGURATION
    muonAssociatorByHitsCommonParameters,
    # for Muon Track association
    #
    #     input collections
    #
    # ... reco::Track collection
    tracksTag=cms.InputTag("globalMuons"),
    ignoreMissingTrackCollection=cms.untracked.bool(False),
    # ... TrackingParticle collection
    timeCorr_p1=cms.double(-0.933552),
    timeCorr_p2=cms.double(0.),
    c_LYSO=cms.double(13.846235)  # in unit cm/ns
)

_endcapAlgo = cms.PSet(
    algoName=cms.string("ETLUncalibRecHitAlgo"),
    adcNbits=mtdDigitizer.endcapDigitizer.ElectronicsSimulation.adcNbits,
    adcSaturation=mtdDigitizer.endcapDigitizer.ElectronicsSimulation.
    adcSaturation_MIP,
    toaLSB_ns=mtdDigitizer.endcapDigitizer.ElectronicsSimulation.toaLSB_ns,
    tofDelay=mtdDigitizer.endcapDigitizer.DeviceSimulation.tofDelay,
    timeResolutionInNs=cms.double(0.025))

mtdUncalibratedRecHits = cms.EDProducer(
    "MTDUncalibratedRecHitProducer",
    barrel=_barrelAlgo,
    endcap=_endcapAlgo,
    barrelDigis=cms.InputTag('mix:FTLBarrel'),
    endcapDigis=cms.InputTag('mix:FTLEndcap'),
    BarrelHitsName=cms.string('FTLBarrel'),
    EndcapHitsName=cms.string('FTLEndcap'))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2

premix_stage2.toModify(
    mtdUncalibratedRecHits,
    barrelDigis='mixData:FTLBarrel',
    endcapDigis='mixData:FTLEndcap',
)
Example #35
0
import FWCore.ParameterSet.Config as cms
import EventFilter.SiPixelRawToDigi.siPixelRawToDigi_cfi

siPixelDigis = EventFilter.SiPixelRawToDigi.siPixelRawToDigi_cfi.siPixelRawToDigi.clone()
siPixelDigis.Timing = cms.untracked.bool(False)
siPixelDigis.IncludeErrors = cms.bool(True)
siPixelDigis.InputLabel = cms.InputTag("siPixelRawData")
siPixelDigis.UseQualityInfo = cms.bool(False)
## ErrorList: list of error codes used by tracking to invalidate modules
siPixelDigis.ErrorList = cms.vint32(29)
## UserErrorList: list of error codes used by Pixel experts for investigation
siPixelDigis.UserErrorList = cms.vint32(40)
##  Use pilot blades
siPixelDigis.UsePilotBlade = cms.bool(False)
##  Use phase1
siPixelDigis.UsePhase1 = cms.bool(False)
## Empty Regions PSet means complete unpacking
siPixelDigis.Regions = cms.PSet( ) 
siPixelDigis.CablingMapLabel = cms.string("")

from Configuration.Eras.Modifier_phase1Pixel_cff import phase1Pixel
phase1Pixel.toModify(siPixelDigis, UsePhase1=True)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(siPixelDigis, BadPixelFEDChannelsInputLabel = "mixData")
Example #36
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalDigiValidationEE_cfi import *

hgcalDigiValidationHEF = hgcalDigiValidationEE.clone(
    DetectorName=cms.string("HGCalHESiliconSensitive"),
    DigiSource=cms.InputTag("mix", "HGCDigisHEfront"))

hgcalDigiValidationHEB = hgcalDigiValidationEE.clone(
    DetectorName=cms.string("HCal"),
    DigiSource=cms.InputTag("mix", "HGCDigisHEback"))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(hgcalDigiValidationHEF,
                       DigiSource="mixData:HGCDigisHEfront")
premix_stage2.toModify(hgcalDigiValidationHEB,
                       DigiSource="mixData:HGCDigisHEback")
    #filtering out hits outside a cylinder of 10cm radius, built around the center of gravity per each layer
    maxDistance =  cms.double(10.0),
    maxDforTimingSquared = cms.double(4.0),
    timeOffset = hgceeDigitizer.tofDelay,
    minNHitsforTiming = cms.uint32(3),
    useMCFractionsForExclEnergy = cms.bool(False),
    thresholdsByDetector = cms.VPSet(
    ),
    hadronCalib = hadronCorrections.value,
    egammaCalib = egammaCorrections.value,
    calibMinEta = minEtaCorrection,
    calibMaxEta = maxEtaCorrection,
    simClusterSrc = cms.InputTag("mix:MergedCaloTruth")
)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(_simClusterMapper_HGCal, simClusterSrc = "mixData:MergedCaloTruth")


#position calculations
_positionCalcPCA_HGCal = cms.PSet(
        algoName = cms.string("Cluster3DPCACalculator"),
        minFractionInCalc = cms.double(1e-9),
        updateTiming = cms.bool(False)
)

_hgcalMultiClusterMapper_HGCal = cms.PSet(
    algoName = cms.string("PFClusterFromHGCalMultiCluster"),
    thresholdsByDetector = cms.VPSet(
    ),
    clusterSrc = cms.InputTag("hgcalMultiClusters")
)
Example #38
0
import FWCore.ParameterSet.Config as cms

from Validation.HGCalValidation.hgcalHitCalibrationDefault_cfi import hgcalHitCalibrationDefault as _hgcalHitCalibrationDefault
hgcalHitCalibration = _hgcalHitCalibrationDefault.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(hgcalHitCalibration, caloParticles = "mixData:MergedCaloTruth")

from Configuration.Eras.Modifier_phase2_hgcalV9_cff import phase2_hgcalV9
phase2_hgcalV9.toModify(hgcalHitCalibration, depletionFine = 120)
    simtracksTag = "fastSimProducer",
    DTsimhitsTag  = "MuonSimHits:MuonDTHits",
    CSCsimHitsTag = "MuonSimHits:MuonCSCHits",
    RPCsimhitsTag = "MuonSimHits:MuonRPCHits",
    simtracksXFTag = "mix:fastSimProducer",
    DTsimhitsXFTag  = "mix:MuonSimHitsMuonDTHits",
    CSCsimHitsXFTag = "mix:MuonSimHitsMuonCSCHits",
    RPCsimhitsXFTag = "mix:MuonSimHitsMuonRPCHits",
    ROUList = ['fastSimProducerTrackerHits']
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(muonAssociatorByHitsCommonParameters,
    DTdigisimlinkTag = "mixData:simMuonDTDigis",
    CSClinksTag = "mixData:MuonCSCStripDigiSimLinks",
    CSCwireLinksTag = "mixData:MuonCSCWireDigiSimLinks",
    RPCdigisimlinkTag = "mixData:RPCDigiSimLink",
    pixelSimLinkSrc = "mixData:PixelDigiSimLink",
    stripSimLinkSrc = "mixData:StripDigiSimLink",
)
  
muonAssociatorByHits = cms.EDProducer("MuonAssociatorEDProducer",
    # COMMON CONFIGURATION
    muonAssociatorByHitsCommonParameters,
    # for Muon Track association
    #
    #     input collections
    #
    # ... reco::Track collection
    # tracksTag = cms.InputTag("standAloneMuons"),
    # tracksTag = cms.InputTag("standAloneMuons","UpdatedAtVtx"),
    # tracksTag = cms.InputTag("standAloneSETMuons"),
import FWCore.ParameterSet.Config as cms

from SimTracker.TrackerHitAssociation.tpClusterProducerDefault_cfi import tpClusterProducerDefault as _tpClusterProducerDefault

tpClusterProducer = _tpClusterProducerDefault.clone()

from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
phase2_tracker.toModify( 
    tpClusterProducer,
    pixelSimLinkSrc = cms.InputTag("simSiPixelDigis", "Pixel"),
    phase2OTSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(tpClusterProducer,
    trackingParticleSrc = "mixData:MergedTrackTruth",
    pixelSimLinkSrc = "mixData:PixelDigiSimLink",
    stripSimLinkSrc = "mixData:StripDigiSimLink",
)
Example #41
0
    #filtering out hits outside a cylinder of 10cm radius, built around the center of gravity per each layer
    maxDistance =  cms.double(10.0),
    maxDforTimingSquared = cms.double(4.0),
    timeOffset = hgceeDigitizer.tofDelay,
    minNHitsforTiming = cms.uint32(3),
    useMCFractionsForExclEnergy = cms.bool(False),
    thresholdsByDetector = cms.VPSet(
    ),
    hadronCalib = hadronCorrections.value,
    egammaCalib = egammaCorrections.value,
    calibMinEta = minEtaCorrection,
    calibMaxEta = maxEtaCorrection,
    simClusterSrc = cms.InputTag("mix:MergedCaloTruth")
)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(_simClusterMapper_HGCal, simClusterSrc = "mixData:MergedCaloTruth")


#position calculations
_positionCalcPCA_HGCal = cms.PSet(
        algoName = cms.string("Cluster3DPCACalculator"),
        minFractionInCalc = cms.double(1e-9),
        updateTiming = cms.bool(False)
)

_hgcalMultiClusterMapper_HGCal = cms.PSet(
    algoName = cms.string("PFClusterFromHGCalMultiCluster"),
    thresholdsByDetector = cms.VPSet(
    ),
    clusterSrc = cms.InputTag("hgcalMultiClusters")
)
Example #42
0
from SimGeneral.MixingModule.SiPixelSimParameters_cfi import SiPixelSimBlock

pixelDigitizer = cms.PSet(
    SiPixelSimBlock,
    accumulatorType = cms.string("SiPixelDigitizer"),
    hitsProducer = cms.string('g4SimHits'),
    makeDigiSimLinks = cms.untracked.bool(True)
)
from Configuration.ProcessModifiers.premix_stage1_cff import premix_stage1
premix_stage1.toModify(pixelDigitizer, makeDigiSimLinks = False)

# Customize here instead of SiPixelSimBlock as the latter is imported
# also to DataMixer configuration, and the original version is needed
# there in stage2. Customize before phase2_tracker because this
# customization applies only to phase0/1 pixel.
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(pixelDigitizer,
    AddPixelInefficiency = False # will be added in DataMixer
)

from SimTracker.SiPhase2Digitizer.phase2TrackerDigitizer_cfi import phase2TrackerDigitizer as _phase2TrackerDigitizer, _premixStage1ModifyDict
from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
phase2_tracker.toReplaceWith(pixelDigitizer, _phase2TrackerDigitizer.clone()) # have to clone here in order to not change the original with further customizations

# Customize here instead of phase2TrackerDigitizer as the latter is
# imported also to DataMixer configuration, and the original version
# is needed there in stage2.
(premix_stage2 & phase2_tracker).toModify(pixelDigitizer, **_premixStage1ModifyDict)
from CalibTracker.SiPixelESProducers.PixelFEDChannelCollectionProducer_cfi import *
Example #43
0
import FWCore.ParameterSet.Config as cms
from Validation.SiTrackerPhase2V.Phase2OTValidateCluster_cfi import Phase2OTValidateCluster
clusterValidOT = Phase2OTValidateCluster.clone()

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    clusterValidOT,
    OuterTrackerDigiSimLinkSource="mixData:Phase2OTDigiSimLink",
)
                                do_generic_sim_plots = cms.untracked.bool(True),
                                verbose = cms.untracked.bool(False),
                                root_folder = cms.untracked.string("Vertexing/PrimaryVertexV"),
                                trackingParticleCollection = cms.untracked.InputTag("mix", "MergedTrackTruth"),
                                trackingVertexCollection = cms.untracked.InputTag("mix", "MergedTrackTruth"),
                                trackAssociatorMap = cms.untracked.InputTag("trackingParticleRecoTrackAsssociation"),
                                vertexAssociator = cms.untracked.InputTag("VertexAssociatorByPositionAndTracks"),
                                vertexRecoCollections = cms.VInputTag("offlinePrimaryVertices",
                                                                      "offlinePrimaryVerticesWithBS",
                                                                      "selectedOfflinePrimaryVertices",
                                                                      "selectedOfflinePrimaryVerticesWithBS"
                                                                      ),
)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(vertexAnalysis,
    trackingParticleCollection = "mixData:MergedTrackTruth",
    trackingVertexCollection = "mixData:MergedTrackTruth",
)

vertexAnalysisTrackingOnly = vertexAnalysis.clone(
    vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [
        "firstStepPrimaryVerticesPreSplitting",
        "firstStepPrimaryVertices"
    ]
)
from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
trackingLowPU.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value())
from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
trackingPhase2PU140.toModify(vertexAnalysisTrackingOnly,
    vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [
        "firstStepPrimaryVertices"
    ]
from SimGeneral.TrackingAnalysis.trackingParticleNumberOfLayersProducer_cfi import *
from Configuration.Eras.Modifier_fastSim_cff import fastSim
fastSim.toModify(trackingParticleNumberOfLayersProducer, simHits=['fastSimProducer:TrackerHits'])
from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
phase2_tracker.toModify(trackingParticleNumberOfLayersProducer, simHits = ["g4SimHits:TrackerHitsPixelBarrelLowTof", "g4SimHits:TrackerHitsPixelEndcapLowTof"])

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackingParticleNumberOfLayersProducer, trackingParticles = "mixData:MergedTrackTruth")
Example #46
0
    src=cms.InputTag("mix", "MergedTrackTruth"),
    pdgId=cms.vint32(13, -13),
    tip=cms.double(85.),  # radius to have at least the 3 outermost TOB layers
    lip=cms.double(210.),  # z to have at least the 3 outermost TEC layers
    minHit=cms.int32(0),
    ptMin=cms.double(0.9),
    ptMax=cms.double(1e100),
    minRapidity=cms.double(-2.4),
    maxRapidity=cms.double(2.4),
    signalOnly=cms.bool(True),
    stableOnly=cms.bool(
        True),  # accept only TP from the Generator (linked to GenParticles)
    chargedOnly=cms.bool(True))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(muonTPSet, src="mixData:MergedTrackTruth")
premix_stage2.toModify(cosmicMuonTPSet, src="mixData:MergedTrackTruth")
premix_stage2.toModify(displacedMuonTPSet, src="mixData:MergedTrackTruth")
premix_stage2.toModify(me0MuonTPSet, src="mixData:MergedTrackTruth")

#muonTP = cms.EDFilter("TrackingParticleSelector",
#    muonTPSet
#)

# RecoTrack selectors
#muonGlb = cms.EDFilter("RecoTrackSelector",
#    src = cms.InputTag("globalMuons"),
#    tip = cms.double(3.5),
#    lip = cms.double(30.0),
#    minHit = cms.int32(8),
#    maxChi2 = cms.double(999),
Example #47
0
import FWCore.ParameterSet.Config as cms

TTClustersFromPhase2TrackerDigis = cms.EDProducer("TTClusterBuilder_Phase2TrackerDigi_",
    rawHits = cms.VInputTag(cms.InputTag("mix","Tracker")),
    ADCThreshold = cms.uint32(30),
    storeLocalCoord = cms.bool(True), # if True, local coordinates (row and col)
                                      # of each hit are stored in the cluster object
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(TTClustersFromPhase2TrackerDigis, rawHits = ["mixData:Tracker"])
import FWCore.ParameterSet.Config as cms

trackingParticleRefSelector = cms.EDFilter(
    "TrackingParticleRefSelector",
    src=cms.InputTag("mix", "MergedTrackTruth"),
    chargedOnly=cms.bool(True),
    pdgId=cms.vint32(),
    tip=cms.double(3.5),
    signalOnly=cms.bool(True),
    intimeOnly=cms.bool(False),
    stableOnly=cms.bool(False),
    minRapidity=cms.double(-2.4),
    lip=cms.double(30.0),
    ptMin=cms.double(0.9),
    ptMax=cms.double(1e100),
    maxRapidity=cms.double(2.4),
    minHit=cms.int32(0),
    minPhi=cms.double(-3.2),
    maxPhi=cms.double(3.2),
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackingParticleRefSelector,
                       src="mixData:MergedTrackTruth")
Example #49
0
import FWCore.ParameterSet.Config as cms

multiClusterCaloParticleAssociation = cms.EDProducer(
    "MCToCPAssociatorEDProducer",
    associator=cms.InputTag('mcAssocByEnergyScoreProducer'),
    label_cp=cms.InputTag("mix", "MergedCaloTruth"),
    label_mcl=cms.InputTag("ticlMultiClustersFromTrackstersMerge"))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(multiClusterCaloParticleAssociation,
                       label_cp="mixData:MergedCaloTruth")
)
#AOD content
SimGeneralAOD = cms.PSet(
    outputCommands = cms.untracked.vstring('keep PileupSummaryInfos_*_*_*',
                                           'keep int_*_bunchSpacing_*',
                                           'keep *_genPUProtons_*_*') 
)

# mods for HGCAL
_phase2_hgc_extraCommands = cms.PSet( # using PSet in order to customize with Modifier
    v = cms.vstring('keep *_mix_HGCDigisEE_*', 'keep *_mix_HGCDigisHEfront_*', 'keep *_mix_HGCDigisHEback_*', 'keep *_mix_MergedCaloTruth_*'),
)
# For phase2 premixing switch the sim digi collections to the ones including pileup
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(_phase2_hgc_extraCommands,
    v = ['keep *_mixData_HGCDigisEE_*', 'keep *_mixData_HGCDigisHEfront_*', 'keep *_mixData_HGCDigisHEback_*', 'keep *_mixData_MergedCaloTruth_*']
)
from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
phase2_hgcal.toModify( SimGeneralRAW, outputCommands = SimGeneralRAW.outputCommands + _phase2_hgc_extraCommands.v )
phase2_hgcal.toModify( SimGeneralFEVTDEBUG, outputCommands = SimGeneralFEVTDEBUG.outputCommands + _phase2_hgc_extraCommands.v )
phase2_hgcal.toModify( SimGeneralRECO, outputCommands = SimGeneralRECO.outputCommands + _phase2_hgc_extraCommands.v )

_phase2_timing_extraCommands = [ 'keep *_mix_FTLBarrel_*','keep *_mix_FTLEndcap_*','keep *_mix_InitialVertices_*' ]
from Configuration.Eras.Modifier_phase2_timing_cff import phase2_timing
phase2_timing.toModify( SimGeneralRAW, outputCommands = SimGeneralRAW.outputCommands + _phase2_timing_extraCommands )
phase2_timing.toModify( SimGeneralFEVTDEBUG, outputCommands = SimGeneralFEVTDEBUG.outputCommands + _phase2_timing_extraCommands )
phase2_timing.toModify( SimGeneralRECO, outputCommands = SimGeneralRECO.outputCommands + _phase2_timing_extraCommands )

_pp_on_AA_extraCommands = ['keep CrossingFramePlaybackInfoNew_mix_*_*','keep *_heavyIon_*_*']
from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
from Configuration.Eras.Modifier_pp_on_AA_2018_cff import pp_on_AA_2018
from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
SiPixelPhase1HitsAnalyzerV = DQMEDAnalyzer('SiPixelPhase1HitsV',
        pixBarrelLowSrc = cms.InputTag("g4SimHits","TrackerHitsPixelBarrelLowTof"),
        pixBarrelHighSrc = cms.InputTag("g4SimHits","TrackerHitsPixelBarrelHighTof"),
        pixForwardLowSrc = cms.InputTag("g4SimHits","TrackerHitsPixelEndcapLowTof"),
        pixForwardHighSrc = cms.InputTag("g4SimHits","TrackerHitsPixelEndcapHighTof"),

        # Hit Efficiency stuff
        associateRecoTracks = cms.bool(True),
        tracksTag = cms.InputTag("generalTracks"),
        tpTag = cms.InputTag("mix","MergedTrackTruth"),
        trackAssociatorByHitsTag = cms.InputTag("quickTrackAssociatorByHits"),
        associateStrip = cms.bool(True),
        associatePixel = cms.bool(True),
        ROUList = cms.vstring('g4SimHitsTrackerHitsPixelBarrelLowTof', 
          'g4SimHitsTrackerHitsPixelBarrelHighTof', 
          'g4SimHitsTrackerHitsPixelEndcapLowTof', 
          'g4SimHitsTrackerHitsPixelEndcapHighTof'),

        # Track assoc. parameters
        histograms = SiPixelPhase1HitsConf,
        geometry = SiPixelPhase1Geometry
)
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(SiPixelPhase1HitsAnalyzerV, tpTag = "mixData:MergedTrackTruth")

SiPixelPhase1HitsHarvesterV = DQMEDHarvester("SiPixelPhase1Harvester",
        histograms = SiPixelPhase1HitsConf,
        geometry = SiPixelPhase1Geometry
)
Example #52
0
    Name=cms.untracked.string('GlobalDigisAnalyzer'),
    SiPxlSrc=cms.InputTag("simSiPixelDigis"),
    Verbosity=cms.untracked.int32(0),  ## 0 provides no output
    MuCSCWireSrc=cms.InputTag("simMuonCSCDigis", "MuonCSCWireDigi"),
    ECalEESrc=cms.InputTag("simEcalDigis", "eeDigis"),
    SiStripSrc=cms.InputTag("simSiStripDigis", "ZeroSuppressed"),
    # 1 assumes cm in SimVertex
    ProvenanceLookup=cms.PSet(PrintProvenanceInfo=cms.untracked.bool(False),
                              GetAllProvenances=cms.untracked.bool(False)),
    HCalSrc=cms.InputTag("g4SimHits", "HcalHits"),
    # 1 provides basic output
    # 2 provides output of the fill step + 1
    # 3 provides output of the store step + 2
    Frequency=cms.untracked.int32(50),
    MuRPCSrc=cms.InputTag("simMuonRPCDigis"),
    ECalEBSrc=cms.InputTag("simEcalDigis", "ebDigis"),
    ECalESSrc=cms.InputTag("simEcalPreshowerDigis"),
    # as of 110p2, needs to be 1. Anything ealier should be 0.
    VtxUnit=cms.untracked.int32(1),
    #InputTag HCalDigi  = simHcalUnsuppressedDigis
    HCalDigi=cms.InputTag("simHcalDigis"))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    globaldigisanalyze,
    MuCSCStripSrc="mixData:MuonCSCStripDigisDM",
    MuCSCWireSrc="mixData:MuonCSCWireDigisDM",
    MuDTSrc="mixData",
    MuRPCSrc="mixData",
)
Example #53
0
from Configuration.Eras.Modifier_run3_common_cff import run3_common
run3_common.toModify(theDigitizers, castor=None)

from SimGeneral.MixingModule.ecalTimeDigitizer_cfi import ecalTimeDigitizer
from Configuration.Eras.Modifier_phase2_timing_cff import phase2_timing
phase2_timing.toModify(theDigitizers, ecalTime=ecalTimeDigitizer.clone())

from SimFastTiming.Configuration.SimFastTiming_cff import mtdDigitizer
from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
phase2_timing_layer.toModify(theDigitizers,
                             fastTimingLayer=mtdDigitizer.clone())

premix_stage2.toModify(
    theDigitizers,
    ecal=None,
    hcal=None,
)
(premix_stage2 & phase2_hgcal).toModify(
    theDigitizers,
    hgceeDigitizer=dict(premixStage1=True),
    hgchebackDigitizer=dict(premixStage1=True),
    hgchefrontDigitizer=dict(premixStage1=True),
)
(premix_stage2 & phase2_hfnose).toModify(
    theDigitizers,
    hfnoseDigitizer=dict(premixStage1=True),
)
(premix_stage2 & phase2_timing_layer).toModify(
    theDigitizers,
    fastTimingLayer=dict(barrelDigitizer=dict(premixStage1=True),
Example #54
0
stripDigitizer = cms.PSet(SiStripSimBlock,
                          accumulatorType=cms.string("SiStripDigitizer"),
                          hitsProducer=cms.string('g4SimHits'),
                          makeDigiSimLinks=cms.untracked.bool(True))

from Configuration.ProcessModifiers.premix_stage1_cff import premix_stage1
premix_stage1.toModify(stripDigitizer, makeDigiSimLinks=False)

# Customize here instead of SiStripSimBlock as the latter is imported
# also to DataMixer configuration, and the original version is needed
# there. Customize before phase2_tracker because this customization
# applies only to phase0 strips, and at the moment it is unclear what
# needs to be done for phase2 tracker in premixing stage2.
from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    stripDigitizer,
    Noise=False,  # will be added in DataMixer
    PreMixingMode=True,  #Special mode to save all hit strips
    FedAlgorithm=5,  # special ZS mode: accept adc>0
    includeAPVSimulation=
    False  # APV simulation is off for the MixingModule configuration in premix stage2
)

from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
phase2_tracker.toModify(stripDigitizer,
                        ROUList=[
                            "g4SimHitsTrackerHitsPixelBarrelLowTof",
                            "g4SimHitsTrackerHitsPixelEndcapLowTof"
                        ])
    timeCorr_p1 = cms.double(-0.933552),
    timeCorr_p2 = cms.double( 0.)
)


_endcapAlgo = cms.PSet(
    algoName      = cms.string("ETLUncalibRecHitAlgo"),
    adcNbits      = mtdDigitizer.endcapDigitizer.ElectronicsSimulation.adcNbits,
    adcSaturation = mtdDigitizer.endcapDigitizer.ElectronicsSimulation.adcSaturation_MIP,
    toaLSB_ns     = mtdDigitizer.endcapDigitizer.ElectronicsSimulation.toaLSB_ns,
    tofDelay      = mtdDigitizer.endcapDigitizer.DeviceSimulation.tofDelay,
    timeResolutionInNs = cms.double(0.025)
)


mtdUncalibratedRecHits = cms.EDProducer(
    "MTDUncalibratedRecHitProducer",
    barrel = _barrelAlgo,
    endcap = _endcapAlgo,
    barrelDigis = cms.InputTag('mix:FTLBarrel'),
    endcapDigis = cms.InputTag('mix:FTLEndcap'),
    BarrelHitsName = cms.string('FTLBarrel'),
    EndcapHitsName = cms.string('FTLEndcap')
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(mtdUncalibratedRecHits,
    barrelDigis = 'mixData:FTLBarrel',
    endcapDigis = 'mixData:FTLEndcap',
)
Example #56
0
import FWCore.ParameterSet.Config as cms

TTClusterAssociatorFromPixelDigis = cms.EDProducer(
    "TTClusterAssociator_Phase2TrackerDigi_",
    TTClusters=cms.VInputTag(
        cms.InputTag("TTClustersFromPhase2TrackerDigis", "ClusterInclusive"),
        cms.InputTag("TTStubsFromPhase2TrackerDigis", "ClusterAccepted"),
    ),
    digiSimLinks=cms.InputTag("mix", "Tracker"),
    trackingParts=cms.InputTag("mix", "MergedTrackTruth"))

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(
    TTClusterAssociatorFromPixelDigis,
    digiSimLinks="mixData:Tracker",
    trackingParts="mixData:MergedTrackTruth",
)
Example #57
0
    cummatbudinxo = cms.FileInPath('Validation/HGCalValidation/data/D28.cumulative.xo'),

    ### sim input configuration ###
    label_cp_effic = cms.InputTag("mix","MergedCaloTruth"),
    label_cp_fake = cms.InputTag("mix","MergedCaloTruth"),

    simVertices = cms.InputTag("g4SimHits"),
    
    #Total number of layers of HGCal that we want to monitor
    #Could get this also from HGCalImagingAlgo::maxlayer but better to get it from here
    totallayers_to_monitor = cms.int32(52),
    #Thicknesses we want to monitor. -1 is for scintillator
    thicknesses_to_monitor = cms.vint32(120,200,300,-1),

    # HistoProducerAlgo. Defines the set of plots to be booked and filled
    histoProducerAlgoBlock = HGVHistoProducerAlgoBlock,

    ### output configuration
    dirName = cms.string('HGCAL/HGCalValidator/')

)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(hgcalValidator,
    label_cp_effic = "mixData:MergedCaloTruth",
    label_cp_fake = "mixData:MergedCaloTruth"
)

from Configuration.Eras.Modifier_phase2_hgcalV10_cff import phase2_hgcalV10
phase2_hgcalV10.toModify(hgcalValidator, totallayers_to_monitor = cms.int32(50))
Example #58
0
import FWCore.ParameterSet.Config as cms

# Magnetic Field, Geometry, TransientTracks
from Configuration.StandardSequences.MagneticField_cff import *

# Track Associators
from SimTracker.TrackAssociatorProducers.trackAssociatorByHits_cfi import *

# Track history parameters
trackHistory = cms.PSet(
    bestMatchByMaxValue = cms.untracked.bool(True),
    trackingTruth = cms.untracked.InputTag("mix","MergedTrackTruth"),
    trackAssociator = cms.untracked.InputTag('quickTrackAssociatorByHits'),
    trackProducer = cms.untracked.InputTag("generalTracks"),
    enableRecoToSim = cms.untracked.bool(True),
    enableSimToReco = cms.untracked.bool(False)
)


from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackHistory, trackingTruth = "mixData:MergedTrackTruth")
import FWCore.ParameterSet.Config as cms

from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
trackingTruthValid = DQMEDAnalyzer('TrackingTruthValid',
    #to run on original collection
    #   InputTag src = trackingtruthprod:
    #   string outputFile = "trackingtruthhisto.root" 
    #to run on merged collection (default)
    src = cms.InputTag("mix","MergedTrackTruth"),
    runStandalone = cms.bool(False),
    outputFile = cms.string('')
)

from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
premix_stage2.toModify(trackingTruthValid, src = "mixData:MergedTrackTruth")