CMS 3D CMS Logo

FastSimWithCTPPS_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 def customise(process):
4  if hasattr(process.VtxSmeared,"X0"):
5  VertexX = process.VtxSmeared.X0
6  VertexY = process.VtxSmeared.Y0
7  VertexZ = process.VtxSmeared.Z0
8 
9  if hasattr(process.VtxSmeared,"MeanX"):
10  VertexX = process.VtxSmeared.MeanX
11  VertexY = process.VtxSmeared.MeanY
12  VertexZ = process.VtxSmeared.MeanZ
13 
14 
15 
16  process.load('SimTransport.HectorProducer.HectorTransportCTPPS_cfi')
17  process.LHCTransport.CTPPSHector.VtxMeanX = VertexX
18  process.LHCTransport.CTPPSHector.VtxMeanY = VertexY
19  process.LHCTransport.CTPPSHector.VtxMeanZ = VertexZ
20 
21  ###################################
22  process.load('FastSimulation.CTPPSSimHitProducer.CTPPSSimHitProducer_cfi')
23  process.load('FastSimulation.CTPPSRecHitProducer.CTPPSRecHitProducer_cfi')
24  process.load('FastSimulation.CTPPSFastTrackingProducer.CTPPSFastTrackingProducer_cfi')
25  ###################################
26  process.mix.mixObjects.mixSH.crossingFrames.append('CTPPSHits')
27  process.mix.mixObjects.mixSH.input.append(cms.InputTag("CTPPSSimHits","CTPPSHits"))
28  process.mix.mixObjects.mixSH.subdets.append('CTPPSHits')
29 
30 
31  # CTPPS simHit sequence
32  process.simulation_step.replace(process.psim,process.psim+process.CTPPSSimHits)
33  # SimTransport on path
34  process.transport_step = cms.Path(process.generator+process.LHCTransport)
35 
36  process.schedule.insert(2,process.transport_step)
37 
38 
39  # output
40  outputModule = None
41  outdict = process.outputModules_()
42  if "AODSIMoutput" in outdict:
43  process.AODSIMoutput.outputCommands.extend(cms.untracked.vstring('keep *_CTPPSSimHits_*_*','keep *_CTPPSFastRecHits_*_*'
44 ,'keep *_CTPPSFastTracks_*_*'))
45  process.reconstruction_step.replace(process.reconstruction,process.reconstruction*process.CTPPSFastRecHits*process.CTPPSFastTracks)
46  elif "FASTPUoutput" in outdict:
47  process.FASTPUoutput.outputCommands.extend(cms.untracked.vstring('keep *_CTPPSSimHits_*_*'))
48 
49 
50  return(process)
51 
return((rh^lh)&mask)