Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-11-26 23:20:36

0001 import FWCore.ParameterSet.Config as cms
0002 from RecoParticleFlow.PFClusterProducer.particleFlowRealisticSimClusterHGCCalibrations_cfi import *
0003 from SimCalorimetry.HGCalSimProducers.hgcalDigitizer_cfi import *
0004 #### PF CLUSTER HGCal ####
0005 
0006 #cleaning (none for now)
0007 
0008 #seeding
0009 _passThruSeeds_HGCal = cms.PSet(
0010     algoName = cms.string("PassThruSeedFinder"),
0011     thresholdsByDetector = cms.VPSet(
0012     ),
0013     nNeighbours = cms.int32(8)
0014 )
0015 
0016 # initial step clusterizer
0017 _simClusterMapper_HGCal = cms.PSet(
0018     algoName = cms.string("RealisticSimClusterMapper"),
0019     exclusiveFraction = cms.double(0.6),
0020     invisibleFraction = cms.double(0.6),
0021     maxDistanceFilter = cms.bool(True),
0022     #filtering out hits outside a cylinder of 10cm radius, built around the center of gravity per each layer
0023     maxDistance =  cms.double(10.0),
0024     maxDforTimingSquared = cms.double(4.0),
0025     timeOffset = hgceeDigitizer.tofDelay,
0026     minNHitsforTiming = cms.uint32(3),
0027     useMCFractionsForExclEnergy = cms.bool(False),
0028     thresholdsByDetector = cms.VPSet(
0029     ),
0030     hadronCalib = hadronCorrections.value,
0031     egammaCalib = egammaCorrections.value,
0032     calibMinEta = minEtaCorrection,
0033     calibMaxEta = maxEtaCorrection,
0034     simClusterSrc = cms.InputTag("mix:MergedCaloTruth")
0035 )
0036 from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
0037 premix_stage2.toModify(_simClusterMapper_HGCal, simClusterSrc = "mixData:MergedCaloTruth")
0038 
0039 
0040 #position calculations
0041 _positionCalcPCA_HGCal = cms.PSet(
0042         algoName = cms.string("Cluster3DPCACalculator"),
0043         minFractionInCalc = cms.double(1e-9),
0044         updateTiming = cms.bool(False)
0045 )
0046 
0047 _hgcalTracksterMapper_HGCal = cms.PSet(
0048     algoName = cms.string("PFClusterFromHGCalTrackster"),
0049     thresholdsByDetector = cms.VPSet(
0050     ),
0051     tracksterSrc = cms.InputTag("ticlTrackstersMerge"),
0052     clusterSrc = cms.InputTag("hgcalLayerClusters"),
0053     filterByTracksterPID = cms.bool(False),
0054     pid_threshold = cms.double(0.8),
0055     filter_on_categories = cms.vint32([0, 1]),
0056     filterByTracksterIteration = cms.bool(True),
0057     filter_on_iterations = cms.vint32([0, 1]),
0058 )
0059 
0060 particleFlowClusterHGCal = cms.EDProducer(
0061     "PFClusterProducer",
0062     recHitsSource = cms.InputTag("particleFlowRecHitHGC"),
0063     recHitCleaners = cms.VPSet(),
0064     seedCleaners   = cms.VPSet(),
0065     seedFinder = _passThruSeeds_HGCal,
0066     initialClusteringStep = _hgcalTracksterMapper_HGCal,
0067     pfClusterBuilder = cms.PSet(),
0068     positionReCalc = _positionCalcPCA_HGCal,
0069     energyCorrector = cms.PSet()
0070     )
0071 
0072 particleFlowClusterHGCalFromSimCl = particleFlowClusterHGCal.clone(
0073     initialClusteringStep = _simClusterMapper_HGCal
0074 )