CMS 3D CMS Logo

particleFlowClusterHGC_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
4 
5 
6 #cleaning (none for now)
7 
8 #seeding
9 _passThruSeeds_HGCal = cms.PSet(
10  algoName = cms.string("PassThruSeedFinder"),
11  thresholdsByDetector = cms.VPSet(
12  ),
13  nNeighbours = cms.int32(8)
14 )
15 
16 # initial step clusterizer
17 _simClusterMapper_HGCal = cms.PSet(
18  algoName = cms.string("RealisticSimClusterMapper"),
19  exclusiveFraction = cms.double(0.6),
20  invisibleFraction = cms.double(0.6),
21  maxDistanceFilter = cms.bool(True),
22  #filtering out hits outside a cylinder of 10cm radius, built around the center of gravity per each layer
23  maxDistance = cms.double(10.0),
24  maxDforTimingSquared = cms.double(4.0),
25  timeOffset = hgceeDigitizer.tofDelay,
26  minNHitsforTiming = cms.uint32(3),
27  useMCFractionsForExclEnergy = cms.bool(False),
28  thresholdsByDetector = cms.VPSet(
29  ),
30  hadronCalib = hadronCorrections.value,
31  egammaCalib = egammaCorrections.value,
32  calibMinEta = minEtaCorrection,
33  calibMaxEta = maxEtaCorrection,
34  simClusterSrc = cms.InputTag("mix:MergedCaloTruth")
35 )
36 from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
37 premix_stage2.toModify(_simClusterMapper_HGCal, simClusterSrc = "mixData:MergedCaloTruth")
38 
39 
40 #position calculations
41 _positionCalcPCA_HGCal = cms.PSet(
42  algoName = cms.string("Cluster3DPCACalculator"),
43  minFractionInCalc = cms.double(1e-9),
44  updateTiming = cms.bool(False)
45 )
46 
47 _hgcalTracksterMapper_HGCal = cms.PSet(
48  algoName = cms.string("PFClusterFromHGCalTrackster"),
49  thresholdsByDetector = cms.VPSet(
50  ),
51  tracksterSrc = cms.InputTag("ticlTrackstersMerge"),
52  clusterSrc = cms.InputTag("hgcalMergeLayerClusters"),
53  filterByTracksterPID = cms.bool(True),
54  pid_threshold = cms.double(0.8),
55  filter_on_categories = cms.vint32([0, 1]),
56  filterByTracksterIteration = cms.bool(False),
57  filter_on_iterations = cms.vint32([0, 1]),
58 )
59 
60 particleFlowClusterHGCal = cms.EDProducer(
61  "PFClusterProducer",
62  recHitsSource = cms.InputTag("particleFlowRecHitHGC"),
63  usePFThresholdsFromDB = cms.bool(False),
64  recHitCleaners = cms.VPSet(),
65  seedCleaners = cms.VPSet(),
66  seedFinder = _passThruSeeds_HGCal,
67  initialClusteringStep = _hgcalTracksterMapper_HGCal,
68  pfClusterBuilder = cms.PSet(),
69  positionReCalc = _positionCalcPCA_HGCal,
70  energyCorrector = cms.PSet()
71  )
72 
73 particleFlowClusterHGCalFromSimCl = particleFlowClusterHGCal.clone(
74  initialClusteringStep = _simClusterMapper_HGCal
75 )
76 
77 from Configuration.ProcessModifiers.ticl_v5_cff import ticl_v5
78 ticl_v5.toModify(particleFlowClusterHGCal.initialClusteringStep, tracksterSrc = "ticlCandidate")