test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
customise_mixing.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 #this is obsolete I think
4 def customise_pixelMixing(process):
5  process.mix.digitizers.pixel.MissCalibrate = False
6  process.mix.digitizers.pixel.LorentzAngle_DB = False
7  process.mix.digitizers.pixel.killModules = False
8  process.mix.digitizers.pixel.useDB = False
9  process.mix.digitizers.pixel.DeadModules_DB = False
10  process.mix.digitizers.pixel.NumPixelBarrel = cms.int32(4)
11  process.mix.digitizers.pixel.NumPixelEndcap = cms.int32(3)
12  process.mix.digitizers.pixel.ThresholdInElectrons_FPix = cms.double(2000.0)
13  process.mix.digitizers.pixel.ThresholdInElectrons_BPix = cms.double(2000.0)
14  process.mix.digitizers.pixel.ThresholdInElectrons_BPix_L1 = cms.double(2000.0)
15  process.mix.digitizers.pixel.thePixelColEfficiency_BPix4 = cms.double(0.999)
16  process.mix.digitizers.pixel.thePixelEfficiency_BPix4 = cms.double(0.999)
17  process.mix.digitizers.pixel.thePixelChipEfficiency_BPix4 = cms.double(0.999)
18  return (process)
19 
20 # Remove the Crossing Frames to save memory
21 def customise_NoCrossing(process):
22  process.mix.mixObjects.mixSH.crossingFrames = cms.untracked.vstring(
23  'BSCHits',
24  'FP420SI',
25  'MuonCSCHits',
26  'MuonDTHits',
27  'MuonRPCHits',
28  'TotemHitsRP',
29  'TotemHitsT1',
30  'TotemHitsT2Gem')
31  process.mix.mixObjects.mixCH.crossingFrames = cms.untracked.vstring('')
32  process.mix.mixObjects.mixTracks.makeCrossingFrame = cms.untracked.bool(False)
33  process.mix.mixObjects.mixVertices.makeCrossingFrame = cms.untracked.bool(False)
34  process.mix.mixObjects.mixHepMC.makeCrossingFrame = cms.untracked.bool(False)
35  #process.digitisation_step.remove(process.simSiStripDigiSimLink)
36  #process.digitisation_step.remove(process.mergedtruth)
37  return (process)
38 
40  if hasattr(process,'mix'):
41  n=0
42  if hasattr(process.mix,'input'):
43  n=process.mix.input.nbPileupEvents.averageNumber.value()
44  if n>0:
45  process.mix.digitizers.pixel.thePixelColEfficiency_BPix1 = cms.double(1.0-(0.0238*n/50.0))
46  process.mix.digitizers.pixel.thePixelColEfficiency_BPix2 = cms.double(1.0-(0.0046*n/50.0))
47  process.mix.digitizers.pixel.thePixelColEfficiency_BPix3 = cms.double(1.0-(0.0018*n/50.0))
48  process.mix.digitizers.pixel.thePixelColEfficiency_BPix4 = cms.double(1.0-(0.0008*n/50.0))
49  process.mix.digitizers.pixel.thePixelColEfficiency_FPix1 = cms.double(1.0-(0.0018*n/50.0))
50  process.mix.digitizers.pixel.thePixelColEfficiency_FPix2 = cms.double(1.0-(0.0018*n/50.0))
51  process.mix.digitizers.pixel.thePixelColEfficiency_FPix3 = cms.double(1.0-(0.0018*n/50.0))
52 
53  return (process)
54 
56  process=customise_pixelMixing_PU(process)
57  process=customise_NoCrossing(process)
58  return (process)
59