CMS 3D CMS Logo

particleFlowClusterPS_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 #### PF CLUSTER PRESHOWER ####
4 
5 #cleaning
6 
7 #seeding
8 _localMaxSeeds_PS = cms.PSet(
9  algoName = cms.string("LocalMaximumSeedFinder"),
10  ### seed finding parameters
11  thresholdsByDetector = cms.VPSet(
12  cms.PSet( detector = cms.string("PS1"),
13  seedingThreshold = cms.double(1.2e-4),
14  seedingThresholdPt = cms.double(0.0)
15  ),
16  cms.PSet( detector = cms.string("PS2"),
17  seedingThreshold = cms.double(1.2e-4),
18  seedingThresholdPt = cms.double(0.0)
19  )
20  ),
21  nNeighbours = cms.int32(4)
22 )
23 
24 #topo clusters
25 _topoClusterizer_PS = cms.PSet(
26  algoName = cms.string("Basic2DGenericTopoClusterizer"),
27  thresholdsByDetector = cms.VPSet(
28  cms.PSet( detector = cms.string("PS1"),
29  gatheringThreshold = cms.double(6e-5),
30  gatheringThresholdPt = cms.double(0.0)
31  ),
32  cms.PSet( detector = cms.string("PS2"),
33  gatheringThreshold = cms.double(6e-5),
34  gatheringThresholdPt = cms.double(0.0)
35  )
36  ),
37  useCornerCells = cms.bool(False)
38 )
39 
40 #position calc
41 _positionCalcPS_all_nodepth = cms.PSet(
42  algoName = cms.string("Basic2DGenericPFlowPositionCalc"),
43 
44  minFractionInCalc = cms.double(1e-9),
45  posCalcNCrystals = cms.int32(-1),
46  logWeightDenominator = cms.double(6e-5), # same as gathering threshold
47  minAllowedNormalization = cms.double(1e-9)
48 )
49 
50 #pf clustering
51 _pfClusterizer_PS = cms.PSet(
52  algoName = cms.string("Basic2DGenericPFlowClusterizer"),
53  #pf clustering parameters
54  minFractionToKeep = cms.double(1e-7),
55  positionCalc = _positionCalcPS_all_nodepth,
56  showerSigma = cms.double(0.3),
57  stoppingTolerance = cms.double(1e-8),
58  maxIterations = cms.uint32(50),
59  excludeOtherSeeds = cms.bool(True),
60  minFracTot = cms.double(1e-20), ## numerical stabilization
61  recHitEnergyNorms = cms.VPSet(
62  cms.PSet( detector = cms.string("PS1"),
63  recHitEnergyNorm = cms.double(6e-5)
64  ),
65  cms.PSet( detector = cms.string("PS2"),
66  recHitEnergyNorm = cms.double(6e-5)
67  )
68  )
69 )
70 
71 particleFlowClusterPS = cms.EDProducer(
72  "PFClusterProducer",
73  recHitsSource = cms.InputTag("particleFlowRecHitPS"),
74  recHitCleaners = cms.VPSet(),
75  seedCleaners = cms.VPSet(),
76  seedFinder = _localMaxSeeds_PS,
77  initialClusteringStep = _topoClusterizer_PS,
78  pfClusterBuilder = _pfClusterizer_PS,
79  positionReCalc = cms.PSet(),
80  energyCorrector = cms.PSet()
81  )
82