CMS 3D CMS Logo

dedxEstimators_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 dedxHitInfo = cms.EDProducer("DeDxHitInfoProducer",
4  tracks = cms.InputTag("generalTracks"),
5 
6  minTrackHits = cms.uint32(0),
7  minTrackPt = cms.double(10),
8  minTrackPtPrescale = cms.double(0.5), # minimal pT for prescaled low pT tracks
9  maxTrackEta = cms.double(5.0),
10 
11  useStrip = cms.bool(True),
12  usePixel = cms.bool(True),
13  MeVperADCStrip = cms.double(3.61e-06*265),
14  MeVperADCPixel = cms.double(3.61e-06),
15 
16  useCalibration = cms.bool(False),
17  calibrationPath = cms.string("file:Gains.root"),
18  shapeTest = cms.bool(True),
19 
20  lowPtTracksPrescalePass = cms.uint32(100), # prescale factor for low pt tracks above the dEdx cut
21  lowPtTracksPrescaleFail = cms.uint32(2000), # prescale factor for low pt tracks below the dEdx cut
22  lowPtTracksEstimatorParameters = cms.PSet( # generalized truncated average
23  fraction = cms.double(-0.15), # negative = throw away the 15% with lowest charge
24  exponent = cms.double(-2.0),
25  ),
26  lowPtTracksDeDxThreshold = cms.double(3.5), # threshold on tracks
27 )
28 
29 dedxHarmonic2 = cms.EDProducer("DeDxEstimatorProducer",
30  tracks = cms.InputTag("generalTracks"),
31 
32  estimator = cms.string('generic'),
33  fraction = cms.double(0.4), #Used only if estimator='truncated'
34  exponent = cms.double(-2.0), #Used only if estimator='generic'
35 
36  UseStrip = cms.bool(True),
37  UsePixel = cms.bool(False),
38  ShapeTest = cms.bool(True),
39  MeVperADCStrip = cms.double(3.61e-06*265),
40  MeVperADCPixel = cms.double(3.61e-06),
41 
42  Reccord = cms.string("SiStripDeDxMip_3D_Rcd"), #used only for discriminators : estimators='productDiscrim' or 'btagDiscrim' or 'smirnovDiscrim' or 'asmirnovDiscrim'
43  ProbabilityMode = cms.string("Accumulation"), #used only for discriminators : estimators='productDiscrim' or 'btagDiscrim' or 'smirnovDiscrim' or 'asmirnovDiscrim'
44 
45  UseCalibration = cms.bool(False),
46  calibrationPath = cms.string(""),
47 )
48 
49 dedxPixelHarmonic2 = dedxHarmonic2.clone(UseStrip = False, UsePixel = True)
50 
51 dedxPixelAndStripHarmonic2T085 = dedxHarmonic2.clone(
52  UseStrip = True, UsePixel = True,
53  estimator = 'genericTruncated',
54  fraction = -0.15, # Drop the lowest 15% of hits
55  exponent = -2.0, # Harmonic02
56 )
57 
58 dedxTruncated40 = dedxHarmonic2.clone()
59 dedxTruncated40.estimator = cms.string('truncated')
60 
61 dedxMedian = dedxHarmonic2.clone()
62 dedxMedian.estimator = cms.string('median')
63 
64 dedxUnbinned = dedxHarmonic2.clone()
65 dedxUnbinned.estimator = cms.string('unbinnedFit')
66 
67 dedxDiscrimProd = dedxHarmonic2.clone()
68 dedxDiscrimProd.estimator = cms.string('productDiscrim')
69 
70 dedxDiscrimBTag = dedxHarmonic2.clone()
71 dedxDiscrimBTag.estimator = cms.string('btagDiscrim')
72 
73 dedxDiscrimSmi = dedxHarmonic2.clone()
74 dedxDiscrimSmi.estimator = cms.string('smirnovDiscrim')
75 
76 dedxDiscrimASmi = dedxHarmonic2.clone()
77 dedxDiscrimASmi.estimator = cms.string('asmirnovDiscrim')
78 
79 doAlldEdXEstimatorsTask = cms.Task(dedxTruncated40 , dedxHarmonic2 , dedxPixelHarmonic2 , dedxPixelAndStripHarmonic2T085 , dedxHitInfo)
80 doAlldEdXEstimators = cms.Sequence(doAlldEdXEstimatorsTask)