Skip to content

Commit 3a90d07

Browse files
authored
Merge pull request #1162 from JeffersonLab/eb-hit-kill-smear
Adding pass5_v9 smearing and killing constants, hit-based smearing
2 parents 6850e90 + 9f8b32b commit 3a90d07

File tree

11 files changed

+1428
-0
lines changed

11 files changed

+1428
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,220 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">
3+
<!--
4+
Steering file for pass-5 2021 reconstruction on MC readout data
5+
created: 12/18/2025
6+
@author Matthew Gignac <mgignac@slac.stanford.edu>, Sarah Gaiser <sgaiser@slac.stanford.edu>
7+
-->
8+
<execute>
9+
10+
<driver name="EventMarkerDriver"/>
11+
12+
<!-- Ecal reconstruction drivers -->
13+
<driver name="EcalRawConverter" />
14+
<driver name="EcalTimeCorrection"/>
15+
<driver name="ReconClusterer" />
16+
<driver name="CopyCluster" />
17+
18+
<!-- Hodoscope drivers -->
19+
<driver name="HodoRunningPedestal"/>
20+
<driver name="HodoRawConverter"/>
21+
22+
<!-- SVT reconstruction drivers -->
23+
<driver name="RawTrackerHitSensorSetup"/>
24+
<driver name="RawTrackerHitFitterDriver" />
25+
<driver name="RawHitTimeSmearer"/>
26+
<driver name="TrackerHitDriver"/>
27+
<driver name="StripHitKiller"/>
28+
29+
30+
<driver name="StripHitNHitsSmearer"/>
31+
32+
33+
<driver name="KalmanPatRecDriver"/>
34+
<driver name="TrackTimeSmearer"/>
35+
<driver name="TrackTruthMatching_KF"/>
36+
<driver name="ReconParticleDriver_Kalman" />
37+
38+
39+
40+
<!-- Event filtering -->
41+
<driver name="LCIOWriter"/>
42+
<driver name="AidaSaveDriver"/>
43+
<driver name="CleanupDriver"/>
44+
45+
</execute>
46+
<drivers>
47+
<driver name="SVTHitEfficiency" type="org.hps.recon.tracking.kalman.SvtHitEfficiencyKalman">
48+
<maxLayer>14</maxLayer>
49+
<useTrkTimeCut>false</useTrkTimeCut>
50+
<!--<trkTimeCut>10.0</trkTimeCut> -->
51+
<!-- <trkTimeMean>15.0</trkTimeMean> -->
52+
<debug>false</debug>
53+
</driver>
54+
<driver name="StripHitKiller" type="org.hps.recon.tracking.StripHitKiller">
55+
<ratioFiles>pass5v9run14272_L1b_axial_hole.txt pass5v9run14272_L1b_stereo_hole.txt pass5v9run14272_L1t_axial_hole.txt pass5v9run14272_L1t_stereo_hole.txt pass5v9run14272_L2b_axial_hole.txt pass5v9run14272_L2b_stereo_hole.txt pass5v9run14272_L2t_axial_hole.txt pass5v9run14272_L2t_stereo_hole.txt</ratioFiles>
56+
<debug>false</debug>
57+
</driver>
58+
<driver name="RawHitTimeSmearer" type="org.hps.recon.tracking.RawHitTimeSmearer">
59+
<smearTimeFile>timeSmearing-2nsL4L7-4nsL1L3.txt</smearTimeFile>
60+
<debug>false</debug>
61+
</driver>
62+
<driver name="TrackTimeSmearer" type="org.hps.recon.tracking.TrackTimeSmearer">
63+
<debug>false</debug>
64+
<smearBottom>0.8</smearBottom>
65+
<smearTop>0.8</smearTop>
66+
</driver>
67+
<driver name="StripHitNHitsSmearer" type="org.hps.recon.tracking.StripHitNHitsSmearer">
68+
<smearPositionFile>posSmearing_pass5_v9.txt</smearPositionFile>
69+
<debug>false</debug>
70+
</driver>
71+
<driver name="EventMarkerDriver" type="org.lcsim.job.EventMarkerDriver">
72+
<eventInterval>1000</eventInterval>
73+
</driver>
74+
<driver name="HodoRunningPedestal" type="org.hps.recon.ecal.HodoRunningPedestalDriver">
75+
<inputCollectionName>HodoscopeReadoutHits</inputCollectionName>
76+
<logLevel>CONFIG</logLevel>
77+
<isMC>true</isMC>
78+
</driver>
79+
<driver name="HodoRawConverter" type="org.hps.recon.ecal.HodoRawConverterDriver">
80+
<inputCollectionName>HodoscopeReadoutHits</inputCollectionName>
81+
<tETAllChannels>8</tETAllChannels>
82+
<logLevel>CONFIG</logLevel>
83+
<isMC>true</isMC>
84+
</driver>
85+
86+
<!-- Ecal reconstruction drivers -->
87+
<driver name="EcalRawConverter" type="org.hps.recon.ecal.EcalRawConverter2Driver">
88+
</driver>
89+
<driver name="EcalTimeCorrection" type="org.hps.recon.ecal.EcalTimeCorrectionDriver">
90+
<additionalShift>13.3</additionalShift>
91+
</driver>
92+
<driver name="ReconClusterer" type="org.hps.recon.ecal.cluster.ReconClusterDriver">
93+
<logLevel>WARNING</logLevel>
94+
<outputClusterCollectionName>EcalClusters</outputClusterCollectionName>
95+
</driver>
96+
<driver name="CopyCluster" type="org.hps.recon.ecal.cluster.CopyClusterCollectionDriver">
97+
<inputCollectionName>EcalClusters</inputCollectionName>
98+
<outputCollectionName>EcalClustersCorr</outputCollectionName>
99+
</driver>
100+
<!-- SVT reconstruction drivers -->
101+
<driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup">
102+
<readoutCollections>SVTRawTrackerHits</readoutCollections>
103+
</driver>
104+
<driver name="RawTrackerHitFitterDriver" type="org.hps.recon.tracking.RawTrackerHitFitterDriver">
105+
<chiSqrThresh>.5</chiSqrThresh>
106+
<doOldDT>1</doOldDT>
107+
<fitAlgorithm>Pileup</fitAlgorithm>
108+
<fitTimeMinimizer>Migrad</fitTimeMinimizer>
109+
<useTimestamps>true</useTimestamps>
110+
<tsCorrectionScale>165</tsCorrectionScale>
111+
<correctTimeOffset>true</correctTimeOffset>
112+
<correctT0Shift>true</correctT0Shift>
113+
<useTruthTime>false</useTruthTime>
114+
<subtractTOF>true</subtractTOF>
115+
<subtractTriggerTime>false</subtractTriggerTime>
116+
<correctChanT0>false</correctChanT0>
117+
<isMC>true</isMC>
118+
<debug>false</debug>
119+
</driver>
120+
<driver name="TrackerHitDriver" type="org.hps.recon.tracking.DataTrackerHitDriver">
121+
<neighborDeltaT>24.0</neighborDeltaT>
122+
<neighborDeltaTSigma>3.0</neighborDeltaTSigma>
123+
<saveMonsterEvents>false</saveMonsterEvents>
124+
<thresholdMonsterEvents>400</thresholdMonsterEvents>
125+
<clusterSeedThreshold>4.0</clusterSeedThreshold>
126+
<doTimeError>1.0</doTimeError>
127+
<clusterNeighborThreshold>3.0</clusterNeighborThreshold>
128+
<clusterThreshold>3.0</clusterThreshold>
129+
<doDeadFix>true</doDeadFix>
130+
<doVSplit>true</doVSplit>
131+
<debug>false</debug>
132+
</driver>
133+
<driver name="KalmanPatRecDriver" type="org.hps.recon.tracking.kalman.KalmanPatRecDriver">
134+
<addResiduals>true</addResiduals>
135+
<addKinks>true</addKinks>
136+
<numPatRecIteration> 2 </numPatRecIteration>
137+
<numKalmanIteration> 1 </numKalmanIteration>
138+
<maxPtInverse> 8.881915381218574 </maxPtInverse>
139+
<maxD0> 39.249197341740356 </maxD0>
140+
<maxZ0> 8.37847994612359 </maxZ0>
141+
<maxChi2> 11.546843987796496 </maxChi2>
142+
<minHitsTopIter1> 9 </minHitsTopIter1>
143+
<minHitsBotIter1> 9 </minHitsBotIter1>
144+
<minHitsTopIter2> 8 </minHitsTopIter2>
145+
<minHitsBotIter2> 8 </minHitsBotIter2>
146+
<minStereo> 3 </minStereo>
147+
<maxSharedHits> 2 </maxSharedHits>
148+
<maxTimeRange> 40.0 </maxTimeRange>
149+
<maxTanLambda> 5.0 </maxTanLambda>
150+
<maxChi2Inc> 12.320066328390354 </maxChi2Inc>
151+
<minChi2IncBad> 9.206482863412027 </minChi2IncBad>
152+
<maxChi2IncShare> 5.862027198856136 </maxChi2IncShare>
153+
<mxChi2Vtx> 5.508828061070076 </mxChi2Vtx>
154+
<numEvtPlots> 5 </numEvtPlots>
155+
<doDebugPlots> false </doDebugPlots>
156+
<siHitsLimit> 400 </siHitsLimit>
157+
<seedCompThr> 0.3473319986601534 </seedCompThr>
158+
<useBeamPositionConditions>true</useBeamPositionConditions>
159+
<beamSigmaX>0.055</beamSigmaX>
160+
<beamSigmaY>0.045</beamSigmaY>
161+
<useFixedVertexZPosition>true</useFixedVertexZPosition>
162+
<beamPositionZ>-1.1</beamPositionZ>
163+
<lowPhThresh> 7.197594353612735 </lowPhThresh>
164+
<verbose> false </verbose>
165+
</driver>
166+
<driver name="TrackTruthMatching_KF" type="org.hps.analysis.MC.TrackToMCParticleRelationsDriver">
167+
<trackCollectionName>KalmanFullTracks</trackCollectionName>
168+
<kalmanTracks>true</kalmanTracks>
169+
<debug>false</debug>
170+
</driver>
171+
<driver name="ReconParticleDriver_Kalman" type="org.hps.recon.particle.HpsReconParticleDriver" >
172+
<ecalClusterCollectionName>EcalClustersCorr</ecalClusterCollectionName>
173+
<trackCollectionNames>KalmanFullTracks</trackCollectionNames>
174+
<matcherTrackCollectionName>KalmanFullTracks</matcherTrackCollectionName>
175+
<trackClusterMatcherAlgo>TrackClusterMatcherMinDistance</trackClusterMatcherAlgo>
176+
<unconstrainedV0CandidatesColName>UnconstrainedV0Candidates_KF</unconstrainedV0CandidatesColName>
177+
<unconstrainedV0VerticesColName>UnconstrainedV0Vertices_KF</unconstrainedV0VerticesColName>
178+
<beamConV0CandidatesColName>BeamspotConstrainedV0Candidates_KF</beamConV0CandidatesColName>
179+
<beamConV0VerticesColName>BeamspotConstrainedV0Vertices_KF</beamConV0VerticesColName>
180+
<targetConV0CandidatesColName>TargetConstrainedV0Candidates_KF</targetConV0CandidatesColName>
181+
<targetConV0VerticesColName>TargetConstrainedV0Vertices_KF</targetConV0VerticesColName>
182+
<finalStateParticlesColName>FinalStateParticles_KF</finalStateParticlesColName>
183+
<otherElectronsColName>OtherElectrons_KF</otherElectronsColName>
184+
<includeUnmatchedTracksInFSP>true</includeUnmatchedTracksInFSP>
185+
<useInternalVertexXYPositions>false</useInternalVertexXYPositions>
186+
<useBeamPositionConditions>true</useBeamPositionConditions>
187+
<requireClustersForV0>false</requireClustersForV0>
188+
<beamSigmaX>0.055</beamSigmaX>
189+
<beamSigmaY>0.045</beamSigmaY>
190+
<beamPositionZ>-1.1</beamPositionZ>
191+
<maxElectronP>7.0</maxElectronP>
192+
<maxVertexP>7.0</maxVertexP>
193+
<minVertexChisqProb>0.0</minVertexChisqProb>
194+
<maxVertexClusterDt>40.0</maxVertexClusterDt>
195+
<maxMatchDt>40</maxMatchDt>
196+
<trackClusterTimeOffset>40</trackClusterTimeOffset>
197+
<useCorrectedClusterPositionsForMatching>false</useCorrectedClusterPositionsForMatching>
198+
<applyClusterCorrections>true</applyClusterCorrections>
199+
<useTrackPositionForClusterCorrection>true</useTrackPositionForClusterCorrection>
200+
<debug>false</debug>
201+
<isMC>true</isMC>
202+
<makeMollerCols>true</makeMollerCols>
203+
<unconstrainedMollerCandidatesColName>UnconstrainedMollerCandidates_KF</unconstrainedMollerCandidatesColName>
204+
<unconstrainedMollerVerticesColName>UnconstrainedMollerVertices_KF</unconstrainedMollerVerticesColName>
205+
<beamConMollerCandidatesColName>BeamspotConstrainedMollerCandidates_KF</beamConMollerCandidatesColName>
206+
<beamConMollerVerticesColName>BeamspotConstrainedMollerVertices_KF</beamConMollerVerticesColName>
207+
<targetConMollerCandidatesColName>TargetConstrainedMollerCandidates_KF</targetConMollerCandidatesColName>
208+
<targetConMollerVerticesColName>TargetConstrainedMollerVertices_KF</targetConMollerVerticesColName>
209+
</driver>
210+
<driver name="AidaSaveDriver" type="org.lcsim.job.AidaSaveDriver">
211+
<outputFileName>${outputFile}_hit_eff.root</outputFileName>
212+
</driver>
213+
<driver name="LCIOWriter" type="org.lcsim.util.loop.LCIODriver">
214+
<outputFilePath>${outputFile}.slcio</outputFilePath>
215+
</driver>
216+
<driver name="CleanupDriver" type="org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver"/>
217+
218+
</drivers>
219+
</lcsim>
220+

0 commit comments

Comments
 (0)