Exemplo n.º 1
0
from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import ClusterShapeHitFilterESProducer as _ClusterShapeHitFilterESProducer
tobTecStepClusterShapeHitFilter = _ClusterShapeHitFilterESProducer.clone(
    ComponentName='tobTecStepClusterShapeHitFilter',
    doStripShapeCut=cms.bool(False),
    clusterChargeCut=dict(refToPSet_='SiStripClusterChargeCutTight'))

from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
tobTecStepHitDoubletsTripl = _hitPairEDProducer.clone(
    seedingLayers="tobTecStepSeedLayersTripl",
    trackingRegions="tobTecStepTrackingRegionsTripl",
    maxElement=50000000,
    produceIntermediateHitDoublets=True,
)
from RecoTracker.TkSeedGenerator.multiHitFromChi2EDProducer_cfi import multiHitFromChi2EDProducer as _multiHitFromChi2EDProducer
tobTecStepHitTripletsTripl = _multiHitFromChi2EDProducer.clone(
    doublets="tobTecStepHitDoubletsTripl",
    extraPhiKDBox=0.01,
)
from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
from RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeSeedFilter_cfi import StripSubClusterShapeSeedFilter as _StripSubClusterShapeSeedFilter
_tobTecStepSeedComparitorPSet = dict(
    ComponentName='CombinedSeedComparitor',
    mode=cms.string("and"),
    comparitors=cms.VPSet(
        cms.
        PSet(  # FIXME: is this defined in any cfi that could be imported instead of copy-paste?
            ComponentName=cms.string('PixelClusterShapeSeedComparitor'),
            FilterAtHelixStage=cms.bool(True),
            FilterPixelHits=cms.bool(False),
            FilterStripHits=cms.bool(True),
            ClusterShapeHitFilterName=cms.string(
                'tobTecStepClusterShapeHitFilter'),
Exemplo n.º 2
0
pixelLessStepClusterShapeHitFilter = _ClusterShapeHitFilterESProducer.clone(
    ComponentName = 'pixelLessStepClusterShapeHitFilter',
    doStripShapeCut = cms.bool(False),
    clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTight')
)

from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
pixelLessStepHitDoublets = _hitPairEDProducer.clone(
    seedingLayers = "pixelLessStepSeedLayers",
    trackingRegions = "pixelLessStepTrackingRegions",
    maxElement = 0,
    produceIntermediateHitDoublets = True,
)
from RecoTracker.TkSeedGenerator.multiHitFromChi2EDProducer_cfi import multiHitFromChi2EDProducer as _multiHitFromChi2EDProducer
pixelLessStepHitTriplets = _multiHitFromChi2EDProducer.clone(
    doublets = "pixelLessStepHitDoublets",
)
from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
from RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeSeedFilter_cfi import StripSubClusterShapeSeedFilter as _StripSubClusterShapeSeedFilter
pixelLessStepSeeds = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
    seedingHitSets = "pixelLessStepHitTriplets",
    SeedComparitorPSet = dict(
        ComponentName = 'CombinedSeedComparitor',
        mode = cms.string("and"),
        comparitors = cms.VPSet(
            cms.PSet(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
                ComponentName = cms.string('PixelClusterShapeSeedComparitor'),
                FilterAtHelixStage = cms.bool(True),
                FilterPixelHits = cms.bool(False),
                FilterStripHits = cms.bool(True),
                ClusterShapeHitFilterName = cms.string('pixelLessStepClusterShapeHitFilter'),
Exemplo n.º 3
0
tobTecStepClusterShapeHitFilter = _ClusterShapeHitFilterESProducer.clone(
    ComponentName = 'tobTecStepClusterShapeHitFilter',
    doStripShapeCut = cms.bool(False),
    clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTight')
)

from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
tobTecStepHitDoubletsTripl = _hitPairEDProducer.clone(
    seedingLayers = "tobTecStepSeedLayersTripl",
    trackingRegions = "tobTecStepTrackingRegionsTripl",
    maxElement = 50000000,
    produceIntermediateHitDoublets = True,
)
from RecoTracker.TkSeedGenerator.multiHitFromChi2EDProducer_cfi import multiHitFromChi2EDProducer as _multiHitFromChi2EDProducer
tobTecStepHitTripletsTripl = _multiHitFromChi2EDProducer.clone(
    doublets = "tobTecStepHitDoubletsTripl",
    extraPhiKDBox = 0.01,
)
from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
from RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeSeedFilter_cfi import StripSubClusterShapeSeedFilter as _StripSubClusterShapeSeedFilter
_tobTecStepSeedComparitorPSet = dict(
    ComponentName = 'CombinedSeedComparitor',
    mode = cms.string("and"),
    comparitors = cms.VPSet(
        cms.PSet(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
            ComponentName = cms.string('PixelClusterShapeSeedComparitor'),
            FilterAtHelixStage = cms.bool(True),
            FilterPixelHits = cms.bool(False),
            FilterStripHits = cms.bool(True),
            ClusterShapeHitFilterName = cms.string('tobTecStepClusterShapeHitFilter'),
            ClusterShapeCacheSrc = cms.InputTag("siPixelClusterShapeCache") # not really needed here since FilterPixelHits=False
        ),
Exemplo n.º 4
0
pixelLessStepClusterShapeHitFilter = _ClusterShapeHitFilterESProducer.clone(
    ComponentName = 'pixelLessStepClusterShapeHitFilter',
    doStripShapeCut = cms.bool(False),
    clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTight')
)

from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
pixelLessStepHitDoublets = _hitPairEDProducer.clone(
    seedingLayers = "pixelLessStepSeedLayers",
    trackingRegions = "pixelLessStepTrackingRegions",
    maxElement = 0,
    produceIntermediateHitDoublets = True,
)
from RecoTracker.TkSeedGenerator.multiHitFromChi2EDProducer_cfi import multiHitFromChi2EDProducer as _multiHitFromChi2EDProducer
pixelLessStepHitTriplets = _multiHitFromChi2EDProducer.clone(
    doublets = "pixelLessStepHitDoublets",
)
from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
from RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeSeedFilter_cfi import StripSubClusterShapeSeedFilter as _StripSubClusterShapeSeedFilter
pixelLessStepSeeds = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
    seedingHitSets = "pixelLessStepHitTriplets",
    SeedComparitorPSet = dict(
        ComponentName = 'CombinedSeedComparitor',
        mode = cms.string("and"),
        comparitors = cms.VPSet(
            cms.PSet(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
                ComponentName = cms.string('PixelClusterShapeSeedComparitor'),
                FilterAtHelixStage = cms.bool(True),
                FilterPixelHits = cms.bool(False),
                FilterStripHits = cms.bool(True),
                ClusterShapeHitFilterName = cms.string('pixelLessStepClusterShapeHitFilter'),
Exemplo n.º 5
0
    def _regionHitSet(producer):
        # region
        regionProducer = {
            "GlobalRegionProducerFromBeamSpot":
            _globalTrackingRegionFromBeamSpot,
            "GlobalTrackingRegionWithVerticesProducer":
            _globalTrackingRegionWithVertices,
            "TauRegionalPixelSeedGenerator":
            _tauRegionalPixelSeedTrackingRegions,
            "CandidateSeededTrackingRegionsProducer":
            _seededTrackingRegionsFromBeamSpotFixedZLength,
            "HITrackingRegionForPrimaryVtxProducer":
            _hiTrackingRegionFromClusterVtx,
        }.get(producer.RegionFactoryPSet.ComponentName.value(), None)
        if regionProducer is None:  # got a region not migrated yet
            raise Exception(
                "Encountered %s from module %s which is not yet migrated to the new seeding framework. Please migrate."
                % (producer.RegionFactoryPSet.ComponentName.value(),
                   producer.label()))
        regionProducer = regionProducer.clone()
        # some instances of the following region producers have the
        # following parameters in the HLT configuration, while the
        # region producers themselves do not use these parameters
        skip = {
            "TauRegionalPixelSeedGenerator": [
                "precise", "JetMaxEta", "JetMaxN", "JetMinPt", "beamSpot",
                "originZPos", "useFakeVertices", "useMultipleScattering",
                "deltaEta", "deltaPhi"
            ],
            "GlobalRegionProducerFromBeamSpot": ["useFakeVertices"],
            "GlobalTrackingRegionWithVerticesProducer": ["originHalfLength"],
            "CandidateSeededTrackingRegionsProducer": [
                "useFakeVertices", "useMultipleScattering", "originZPos",
                "vertexSrc", "zErrorVertex", "fixedError", "nSigmaZ",
                "sigmaZVertex", "useFixedError", "useFoundVertices"
            ],
        }.get(producer.RegionFactoryPSet.ComponentName.value(), [])
        _copy(producer.RegionFactoryPSet.RegionPSet,
              regionProducer.RegionPSet,
              skip=skip)
        if producer.RegionFactoryPSet.ComponentName.value(
        ) == "GlobalRegionProducerFromBeamSpot":
            # to preserve old behaviour
            # if nSigmaZ/originHalfLength was missing, it was internally set to 0
            if not hasattr(producer.RegionFactoryPSet.RegionPSet, "nSigmaZ"):
                regionProducer.RegionPSet.nSigmaZ = 0
            if not hasattr(producer.RegionFactoryPSet.RegionPSet,
                           "originHalfLength"):
                regionProducer.RegionPSet.originHalfLength = 0

        # hit doublet generator
        doubletProducer = _hitPairEDProducer.clone(
            seedingLayers=producer.OrderedHitsFactoryPSet.SeedingLayers.value(
            ),
            trackingRegions=regionLabel,
            clusterCheck=clusterCheckLabel,
        )

        # hit triplet generator
        tripletProducer = None
        skip = ["ComponentName"]
        if producer.OrderedHitsFactoryPSet.ComponentName.value(
        ) == "StandardHitPairGenerator":
            doubletProducer.produceSeedingHitSets = True
            doubletProducer.maxElement = producer.OrderedHitsFactoryPSet.maxElement.value(
            )
        elif producer.OrderedHitsFactoryPSet.ComponentName.value(
        ) == "StandardHitTripletGenerator":
            doubletProducer.produceIntermediateHitDoublets = True

            tripletProducer = {
                "PixelTripletHLTGenerator": _pixelTripletHLTEDProducer,
                "PixelTripletLargeTipGenerator":
                _pixelTripletLargeTipEDProducer,
            }.get(
                producer.OrderedHitsFactoryPSet.GeneratorPSet.ComponentName.
                value(), None)
            if tripletProducer is None:  # got a triplet generator not migrated yet
                raise Exception(
                    "Encountered %s from module %s which is not yet migrated to the new seeding framework. Please migrate."
                    % (producer.OrderedHitsFactoryPSet.GeneratorPSet.
                       ComponentName.value(), producer.label()))
            tripletProducer = tripletProducer.clone(
                doublets=doubletLabel,
                produceSeedingHitSets=True,
            )
        elif producer.OrderedHitsFactoryPSet.ComponentName.value(
        ) == "StandardMultiHitGenerator":
            doubletProducer.produceIntermediateHitDoublets = True
            if producer.OrderedHitsFactoryPSet.GeneratorPSet.ComponentName.value(
            ) != "MultiHitGeneratorFromChi2":
                raise Exception(
                    "In %s, StandardMultiHitGenerator without MultiHitGeneratorFromChi2, but with %s"
                    % label,
                    producer.OrderedHitsFactoryPSet.GeneratorPSet.
                    ComponentName.value())
            tripletProducer = _multiHitFromChi2EDProducer.clone(
                doublets=doubletLabel, )
            # some instances have "debug" parameter set while the producer does not use it
            skip.append("debug")
        else:  # got a hit generator not migrated yet
            raise Exception(
                "Encountered %s from module %s which is not yet migrated to the new seeding framework. Please migrate."
                % (producer.OrderedHitsFactoryPSet.ComponentName.value(),
                   producer.label()))
        if tripletProducer:
            _copy(producer.OrderedHitsFactoryPSet.GeneratorPSet,
                  tripletProducer,
                  skip=skip)
            doubletProducer.maxElement = 0  # this was the old behaviour when calling doublet generator from triplet generator

        return (regionProducer, doubletProducer, tripletProducer)
Exemplo n.º 6
0
    ComponentName = 'displacedGeneralStepClusterShapeHitFilter',
    doStripShapeCut = cms.bool(False),
    clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTight')
)

from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
displacedGeneralStepHitDoublets = _hitPairEDProducer.clone(
    seedingLayers = "displacedGeneralStepSeedLayers",
    trackingRegions = "displacedGeneralStepTrackingRegions",
    maxElement = 50000000,
    produceIntermediateHitDoublets = True,
)

from RecoTracker.TkSeedGenerator.multiHitFromChi2EDProducer_cfi import multiHitFromChi2EDProducer as _multiHitFromChi2EDProducer
displacedGeneralStepHitTriplets = _multiHitFromChi2EDProducer.clone(
    doublets = "displacedGeneralStepHitDoublets",
    extraPhiKDBox = 0.01,
)


from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
from RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeSeedFilter_cfi import StripSubClusterShapeSeedFilter as _StripSubClusterShapeSeedFilter
displacedGeneralStepSeeds = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
    seedingHitSets = "displacedGeneralStepHitTriplets",
    SeedComparitorPSet = dict(
        ComponentName = 'CombinedSeedComparitor',
        mode = cms.string("and"),
        comparitors = cms.VPSet(
            cms.PSet(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
                ComponentName = cms.string('PixelClusterShapeSeedComparitor'),
                FilterAtHelixStage = cms.bool(True),
                FilterPixelHits = cms.bool(False),