![]() |
|
|||
File indexing completed on 2025-06-03 00:12:28
0001 # configuration for TrackTriggerSetup 0002 0003 import FWCore.ParameterSet.Config as cms 0004 0005 TrackTrigger_params = cms.PSet ( 0006 0007 # Parameter to check if Process History is consistent with process configuration 0008 ProcessHistory = cms.PSet ( 0009 GeometryConfiguration = cms.string( "XMLIdealGeometryESSource@" ), # label of compared GeometryConfiguration 0010 TTStubAlgorithm = cms.string( "TTStubAlgorithm_official_Phase2TrackerDigi_@" ) # label of compared TTStubAlgorithm 0011 ), 0012 0013 # Common track finding parameter 0014 TrackFinding = cms.PSet ( 0015 BeamWindowZ = cms.double( 15. ), # half lumi region size in cm 0016 NumLayers = cms.int32 ( 8 ), # TMTT: number of detector layers a reconstructbale particle may cross, reduced to 7, 8th layer almost never corssed 0017 MinLayers = cms.int32 ( 4 ), # required number of stub layers to form a track 0018 MinPt = cms.double( 2.0 ), # min track pt in GeV, also defines region overlap shape 0019 MinPtCand = cms.double( 1.34 ), # min candiate pt in GeV 0020 MaxEta = cms.double( 2.5 ), # cut on stub eta 0021 MaxD0 = cms.double( 5.0 ), # in cm, constraints track reconstruction phase space 0022 ChosenRofPhi = cms.double( 55. ), # critical radius defining region overlap shape in cm 0023 ), 0024 0025 # TMTT specific parameter 0026 TMTT = cms.PSet ( 0027 WidthR = cms.int32 ( 12 ), # number of bits used for stub r - ChosenRofPhi 0028 WidthPhi = cms.int32 ( 15 ), # number of bits used for stub phi w.r.t. phi region centre 0029 WidthZ = cms.int32 ( 14 ) # number of bits used for stub z 0030 ), 0031 0032 # Hybrid specific parameter 0033 Hybrid = cms.PSet ( 0034 NumLayers = cms.int32 ( 4 ), # max number of layer connected to one DTC 0035 NumRingsPS = cms.vint32 ( 11, 11, 8, 8, 8 ), # number of outer PS rings for disk 1, 2, 3, 4, 5 0036 WidthsR = cms.vint32 ( 7, 7, 12, 7 ), # number of bits used for stub r w.r.t layer/disk centre for module types (barrelPS, barrel2S, diskPS, disk2S) 0037 WidthsZ = cms.vint32 ( 12, 8, 7, 7 ), # number of bits used for stub z w.r.t layer/disk centre for module types (barrelPS, barrel2S, diskPS, disk2S) 0038 WidthsPhi = cms.vint32 ( 14, 17, 14, 14 ), # number of bits used for stub phi w.r.t. region centre for module types (barrelPS, barrel2S, diskPS, disk2S) 0039 WidthsAlpha = cms.vint32 ( 0, 0, 0, 4 ), # number of bits used for stub row number for module types (barrelPS, barrel2S, diskPS, disk2S) 0040 WidthsBend = cms.vint32 ( 3, 4, 3, 4 ), # number of bits used for stub bend number for module types (barrelPS, barrel2S, diskPS, disk2S) 0041 WidthsRTB = cms.vint32 ( 7, 7, 12, 12 ), # number of bits used for stub r w.r.t layer/disk centre for module types (barrelPS, barrel2S, diskPS, disk2S) at TB output 0042 RangesR = cms.vdouble( 7.5, 7.5, 120. , 0. ), # range in stub r which needs to be covered for module types (barrelPS, barrel2S, diskPS, disk2S) 0043 RangesZ = cms.vdouble( 240., 240., 7.5, 7.5 ), # range in stub z which needs to be covered for module types (barrelPS, barrel2S, diskPS, disk2S) 0044 RangesAlpha = cms.vdouble( 0., 0., 0., 2048. ), # range in stub row which needs to be covered for module types (barrelPS, barrel2S, diskPS, disk2S) 0045 LayerRs = cms.vdouble( 24.9316, 37.1777, 52.2656, 68.7598, 86.0156, 108.3105 ), # mean radius of outer tracker barrel layer 0046 DiskZs = cms.vdouble( 131.1914, 154.9805, 185.3320, 221.6016, 265.0195 ), # mean z of outer tracker endcap disks 0047 Disk2SRsSet = cms.VPSet( # center radius of outer tracker endcap 2S diks strips 0048 cms.PSet( Disk2SRs = cms.vdouble( 66.4391, 71.4391, 76.2750, 81.2750, 82.9550, 87.9550, 93.8150, 98.8150, 99.8160, 104.8160 ) ), # disk 1 0049 cms.PSet( Disk2SRs = cms.vdouble( 66.4391, 71.4391, 76.2750, 81.2750, 82.9550, 87.9550, 93.8150, 98.8150, 99.8160, 104.8160 ) ), # disk 2 0050 cms.PSet( Disk2SRs = cms.vdouble( 63.9903, 68.9903, 74.2750, 79.2750, 81.9562, 86.9562, 92.4920, 97.4920, 99.8160, 104.8160 ) ), # disk 3 0051 cms.PSet( Disk2SRs = cms.vdouble( 63.9903, 68.9903, 74.2750, 79.2750, 81.9562, 86.9562, 92.4920, 97.4920, 99.8160, 104.8160 ) ), # disk 4 0052 cms.PSet( Disk2SRs = cms.vdouble( 63.9903, 68.9903, 74.2750, 79.2750, 81.9562, 86.9562, 92.4920, 97.4920, 99.8160, 104.8160 ) ) # disk 5 0053 ), 0054 BarrelHalfLength = cms.double( 120.0 ), # biggest barrel stub z position after TrackBuilder in cm 0055 InnerRadius = cms.double( 19.6 ), # smallest stub radius after TrackBuilder in cm 0056 ), 0057 0058 # Fimrware specific Parameter 0059 Firmware = cms.PSet ( 0060 EnableTruncation = cms.bool ( True ), # enable emulation of truncation for TM, DR, KF, TQ and TFP 0061 UseHybrid = cms.bool ( True ), # use Hybrid or TMTT as TT algorithm 0062 WidthDSPa = cms.int32 ( 27 ), # width of the 'A' port of an DSP slice 0063 WidthDSPb = cms.int32 ( 18 ), # width of the 'B' port of an DSP slice 0064 WidthDSPc = cms.int32 ( 48 ), # width of the 'C' port of an DSP slice 0065 WidthAddrBRAM36 = cms.int32 ( 9 ), # smallest address width of an BRAM36 configured as broadest simple dual port memory 0066 WidthAddrBRAM18 = cms.int32 ( 10 ), # smallest address width of an BRAM18 configured as broadest simple dual port memory 0067 NumFramesInfra = cms.int32 ( 6 ), # needed gap between events of emp-infrastructure firmware 0068 FreqLHC = cms.double( 40. ), # LHC bunch crossing rate in MHz 0069 FreqBEHigh = cms.double( 360. ), # processing Frequency of DTC, KF & TFP in MHz, has to be integer multiple of FreqLHC 0070 FreqBELow = cms.double( 240. ), # processing Frequency of DTC, KF & TFP in MHz, has to be integer multiple of FreqLHC 0071 TMP_FE = cms.int32 ( 8 ), # number of events collected in front-end 0072 TMP_TFP = cms.int32 ( 18 ), # time multiplexed period of track finding processor 0073 SpeedOfLight = cms.double( 2.99792458 ), # in e8 m/s 0074 ), 0075 0076 # Parameter specifying outer tracker 0077 Tracker = cms.PSet ( 0078 BField = cms.double ( 3.81120228767395 ), # in T 0079 BFieldError = cms.double ( 1.e-6 ), # accepted difference to EventSetup in T 0080 OuterRadius = cms.double ( 112.7 ), # outer radius of outer tracker in cm 0081 InnerRadius = cms.double ( 21.8 ), # inner radius of outer tracker in cm 0082 HalfLength = cms.double ( 270. ), # half length of outer tracker in cm 0083 TiltApproxSlope = cms.double ( 0.884 ), # In tilted barrel, grad*|z|/r + int approximates |cosTilt| + |sinTilt * cotTheta| 0084 TiltApproxIntercept = cms.double ( 0.507 ), # In tilted barrel, grad*|z|/r + int approximates |cosTilt| + |sinTilt * cotTheta| 0085 TiltUncertaintyR = cms.double ( 0.12 ), # In tilted barrel, constant assumed stub radial uncertainty * sqrt(12) in cm 0086 Scattering = cms.double ( 0.131283 ), # additional radial uncertainty in cm used to calculate stub phi residual uncertainty to take multiple scattering into account 0087 PitchRow2S = cms.double ( 0.009 ), # strip pitch of outer tracker sensors in cm 0088 PitchRowPS = cms.double ( 0.01 ), # pixel pitch of outer tracker sensors in cm 0089 PitchCol2S = cms.double ( 5.025 ), # strip length of outer tracker sensors in cm 0090 PitchColPS = cms.double ( 0.1467 ), # pixel length of outer tracker sensors in cm 0091 LimitPSBarrel = cms.double ( 125.0 ), # barrel layer limit r value to partition into PS and 2S region 0092 LimitsTiltedR = cms.vdouble( 30.0, 45.0, 60.0 ), # barrel layer limit r value to partition into tilted and untilted region 0093 LimitsTiltedZ = cms.vdouble( 15.5, 25.0, 34.3 ), # barrel layer limit |z| value to partition into tilted and untilted region 0094 LimitsPSDiksZ = cms.vdouble( 125.0, 150.0, 175.0, 200.0, 250.0 ), # endcap disk limit |z| value to partition into PS and 2S region 0095 LimitsPSDiksR = cms.vdouble( 66.0, 66.0, 63.0, 63.0, 63.0 ), # endcap disk limit r value to partition into PS and 2S region 0096 TiltedLayerLimitsZ = cms.vdouble( 15.5, 24.9, 34.3, -1., -1., -1. ), # barrel layer limit |z| value to partition into tilted and untilted region 0097 PSDiskLimitsR = cms.vdouble( 66.4, 66.4, 64.55, 64.55, 64.55 ), # endcap disk limit r value to partition into PS and 2S region 0098 ), 0099 0100 # Parmeter specifying front-end 0101 FrontEnd = cms.PSet ( 0102 WidthBend = cms.int32 ( 6 ), # number of bits used for internal stub bend 0103 WidthCol = cms.int32 ( 5 ), # number of bits used for internal stub column 0104 WidthRow = cms.int32 ( 11 ), # number of bits used for internal stub row 0105 BaseBend = cms.double( .25 ), # precision of internal stub bend in pitch units 0106 BaseCol = cms.double( 1. ), # precision of internal stub column in pitch units 0107 BaseRow = cms.double( .5 ), # precision of internal stub row in pitch units 0108 BaseWindowSize = cms.double( .5 ), # precision of window sizes in pitch units 0109 BendCut = cms.double( 1.3125 ) # used stub bend uncertainty in pitch units 0110 ), 0111 0112 # Parmeter specifying DTC 0113 DTC = cms.PSet ( 0114 NumRegions = cms.int32( 9 ), # number of phi slices the outer tracker readout is organized in 0115 NumOverlappingRegions = cms.int32( 2 ), # number of regions a reconstructable particles may cross 0116 NumATCASlots = cms.int32( 12 ), # number of Slots in used ATCA crates 0117 NumDTCsPerRegion = cms.int32( 24 ), # number of DTC boards used to readout a detector region, likely constructed to be an integerer multiple of NumSlots_ 0118 NumModulesPerDTC = cms.int32( 72 ), # max number of sensor modules connected to one DTC board 0119 NumRoutingBlocks = cms.int32( 2 ), # number of systiloic arrays in stub router firmware 0120 DepthMemory = cms.int32( 64 ), # fifo depth in stub router firmware 0121 WidthRowLUT = cms.int32( 4 ), # number of row bits used in look up table 0122 WidthInv2R = cms.int32( 9 ), # number of bits used for stub inv2R. lut addr is col + bend = 11 => 1 BRAM -> 18 bits for min and max val -> 9 0123 OffsetDetIdDSV = cms.int32( 1 ), # tk layout det id minus DetSetVec->detId 0124 OffsetDetIdTP = cms.int32( -1 ), # tk layout det id minus TrackerTopology lower det id 0125 OffsetLayerDisks = cms.int32( 10 ), # offset in layer ids between barrel layer and endcap disks 0126 OffsetLayerId = cms.int32( 1 ), # offset between 0 and smallest layer id (barrel layer 1) 0127 NumBarrelLayer = cms.int32( 6 ), # number of barrel layer 0128 NumBarrelLayerPS = cms.int32( 3 ), # number of barrel ps layer 0129 SlotLimitPS = cms.int32( 6 ), # slot number changing from PS to 2S 0130 SlotLimit10gbps = cms.int32( 3 ) # slot number changing from 10 gbps to 5gbps 0131 ), 0132 0133 # Parmeter specifying TFP 0134 TFP = cms.PSet ( 0135 WidthPhi0 = cms.int32( 12 ), # number of bist used for phi0 0136 WidthInvR = cms.int32( 15 ), # number of bist used for invR 0137 WidthCot = cms.int32( 16 ), # number of bist used for cot(theta) 0138 WidthZ0 = cms.int32( 12 ), # number of bist used for z0 0139 NumChannel = cms.int32( 2 ) # number of output links 0140 ), 0141 0142 # Parmeter specifying GeometricProcessor 0143 GeometricProcessor = cms.PSet ( 0144 NumBinsPhiT = cms.int32 ( 2 ), # number of phi sectors used in hough transform 0145 NumBinsZT = cms.int32 ( 32 ), # number of eta sectors used in hough transform 0146 ChosenRofZ = cms.double( 57.76 ), # critical radius defining r-z sector shape in cm 0147 DepthMemory = cms.int32 ( 32 ), # fifo depth in stub router firmware 0148 WidthModule = cms.int32 ( 3 ), # 0149 PosPS = cms.int32 ( 2 ), # 0150 PosBarrel = cms.int32 ( 1 ), # 0151 PosTilted = cms.int32 ( 0 ) # 0152 ), 0153 0154 # Parmeter specifying HoughTransform 0155 HoughTransform = cms.PSet ( 0156 NumBinsInv2R = cms.int32( 16 ), # number of used inv2R bins 0157 NumBinsPhiT = cms.int32( 32 ), # number of used phiT bins 0158 MinLayers = cms.int32( 5 ), # required number of stub layers to form a candidate 0159 DepthMemory = cms.int32( 32 ) # internal fifo depth 0160 ), 0161 0162 # Parmeter specifying Clean Track Builder 0163 0164 CleanTrackBuilder = cms.PSet ( 0165 NumBinsInv2R = cms.int32( 4 ), # number of inv2R bins 0166 NumBinsPhiT = cms.int32( 4 ), # number of phiT bins 0167 NumBinsCot = cms.int32( 4 ), # number of cot bins 0168 NumBinsZT = cms.int32( 4 ), # number of zT bins 0169 MinLayers = cms.int32( 4 ), # required number of stub layers to form a candidate 0170 MaxTracks = cms.int32( 16 ), # max number of output tracks per node 0171 MaxStubs = cms.int32( 4 ), # cut on number of stub per layer for input candidates 0172 DepthMemory = cms.int32( 16 ) # internal fifo depth 0173 ), 0174 0175 # Parmeter specifying KalmanFilter 0176 KalmanFilter = cms.PSet ( 0177 Use5ParameterFit = cms.bool ( False ), # double precision simulation of 5 parameter fit instead of bit accurate emulation of 4 parameter fit 0178 UseSimmulation = cms.bool ( False ), # simulate KF instead of emulate 0179 UseTTStubResiduals = cms.bool ( True ), # stub residuals and radius are recalculated from seed parameter and TTStub position 0180 UseTTStubParameters = cms.bool ( True ), # track parameter are recalculated from seed TTStub positions 0181 ApplyNonLinearCorrection = cms.bool ( True ), # aplly correction to stub position making trajectory appear linear 0182 NumWorker = cms.int32 ( 1 ), # number of kf worker 0183 MaxTracks = cms.int32 ( 63 ), # max number of tracks a kf worker can process 0184 RangeFactor = cms.double( 3.0 ), # search window of each track parameter in initial uncertainties 0185 MinLayers = cms.int32 ( 4 ), # required number of stub layers to form a track 0186 MinLayersPS = cms.int32 ( 0 ), # required number of ps stub layers to form a track 0187 MaxLayers = cms.int32 ( 8 ), # maximum number of layers added to a track 0188 MaxGaps = cms.int32 ( 4 ), # maximum number of layer gaps allowed during cominatorical track building 0189 MaxSeedingLayer = cms.int32 ( 4 ), # perform seeding in layers 0 to this 0190 NumSeedStubs = cms.int32 ( 2 ), # number of stubs forming a seed 0191 MinSeedDeltaR = cms.double( 1.6 ), # don't build seeds with smaller radial difference as this in cm 0192 ShiftInitialC00 = cms.int32 ( 0 ), # initial C00 is given by inv2R uncertainty squared times this power of 2 0193 ShiftInitialC11 = cms.int32 ( 0 ), # initial C11 is given by phiT uncertainty squared times this power of 2 0194 ShiftInitialC22 = cms.int32 ( 0 ), # initial C22 is given by cot uncertainty squared times this power of 2 0195 ShiftInitialC33 = cms.int32 ( 0 ), # initial C33 is given by zT uncertainty squared times this power of 2 0196 ShiftChi20 = cms.int32 ( -1 ), # shiting chi2 in r-phi plane by power of two when caliclating chi2 0197 ShiftChi21 = cms.int32 ( -5 ), # shiting chi2 in r-z plane by power of two when caliclating chi2 0198 CutChi2 = cms.double( 2.0 ), # cut on chi2 over degree of freedom 0199 WidthChi2 = cms.int32 ( 8 ) # number of bits used to represent chi2 over degree of freedom 0200 ), 0201 0202 # Parmeter specifying DuplicateRemoval 0203 DuplicateRemoval = cms.PSet ( 0204 DepthMemory = cms.int32( 16 ) # internal memory depth 0205 ), 0206 0207 # Parmeter specifying Track Quality 0208 TrackQuality = cms.PSet ( 0209 NumChannel = cms.int32( 2 ) # number of output channel 0210 ) 0211 0212 )
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |