All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
trackfindermodules.fcl
Go to the documentation of this file.
2 #include "clusteralgorithms.fcl"
3 #include "pmacosmictagalg.fcl"
4 #include "pmavertexalg.fcl"
5 #include "pmastitchalg.fcl"
6 
7 BEGIN_PROLOG
8 
9 # only save standard configuration, save experiment-specific configuration in experiment-specific fcl file
10 
12 {
13  module_type: "CCTrackMaker"
14  HitModuleLabel: "cccluster"
15  ClusterModuleLabel: "cccluster"
16  VertexModuleLabel: "cccluster"
17  MaxDAng: 0.6 # kink angle cut (radians)
18  ChainMaxdX: 1.0 # max dX for merging broken clusters
19  ChainVtxAng: 0.1 # kill 2-cluster US-DS vertices if angle diff < this cut
20  MergeChgAsym: 0.7 # charge asymmetry cut for merging clusters
21  # Order of algorithm calls (1 = vtx, 2 = pln)
22  # First find track matches using clusters associated with 3D vertices (neutrino interactions)
23  # Make tracks from the matches
24  # Next find long track matches (cosmic rays)
25  # Make tracks from the matches
26  # Last find track matches with looser cuts (garbage collection)
27  # Make tracks from the matches
28  MatchAlgs: [1, 2, 2]
29  XMatchErr: [0.2, 0.2, 2] # end X match uncertainty for alg
30  AngleMatchErr: [0.02, 0.02, 0.03] # end angle match uncertainty for alg
31  ChgAsymFactor: [1, 1, 1] # scale rms by charge asymmetry * this factor for alg
32  MatchMinLen: [2, 20, 5] # cluster match minimum length in 2/3 planes for alg
33  MakeAlgTracks: [true, true, true] # Sort track matches from alg and make tracks?
34  MakePFPs: true # make PFParticles
35  NVtxTrkHitsFit: 4 # number of hits/plane fitted to a vertex, 0 = no vertex fit
36  FiducialCut: 5 # cut (cm) for tagging cosmic rays
37  DeltaRayCut: 5 # cut (cm) for tagging delta-rays
38  HitFitErrFac: 0.1 # Factor applied to SigmaPeakTime for vertex fit
39  uBCode: true # uB code patches
40  DebugAlg: -1 # 1 = vtx, 2 = pln, 666 = MakeClusterChains
41  DebugPlane: -1 # -1 = none
42  DebugCluster: -1
43  PrintAllClusters: false # print clusters as well as cluster chains
44  errorOnFailureToPut: false
45 }
46 
47 # Does the full PMA job.
48 # Input: collection of unassociated clusters in 2D views.
49 # Output: 3D track-vertex structure.
50 # First, loops over clusters from each view in order to find/fit individual 3D tracks:
51 # - cluster pairs are processed from the largest, best matching by time, down to small
52 # clusters, new tracks are created and iteratively extended;
53 # - cluster are selected from any pair of views, and the 3rd view is used to validate
54 # the result (if available); all 3 views are used to fine-tune good track candidates;
55 # - track parts are stitched between TPCs;
56 # - vertex candidates are estimated from tracks, tracks connected in vtx are reoptimized
57 # - track-vertex structures are extended and finally PFParticle hierarchy is created,
58 # with tracks and vertices associated to PFPs.
59 standard_pmalgtrackmaker:
60 {
61  module_type: "PMAlgTrackMaker"
62  ProjectionMatchingAlg: @local::standard_projectionmatchingalg
63  PMAlgTracking: @local::standard_pmalgtracker
64  PMAlgCosmicTagging: @local::standard_pmalgtagger
65  PMAlgVertexing: @local::standard_pmavertexalg
66  PMAlgStitching: @local::standard_pmastitchalg
67  #
68  SaveOnlyBranchingVtx: false # use true to save only vertices interconnecting many tracks, otherwise
69  # vertex is added to the front of each track
70  SavePmaNodes: false # save track nodes (only for algorithm development purposes)
71  #
72  HitModuleLabel: "hits" # unclustered hits are used for tracks validation
73  WireModuleLabel: "caldata" # deconvoluted adc is also used for tracks validation
74 
75  ClusterModuleLabel: "cluster" # cluster module label, these clusters are used for track building
76  EmClusterModuleLabel: "" # EM-like clusters, will be excluded from tracking if provided
77 }
78 
79 # Trajectory fit using PMA.
80 # Input: clusters associated to PFParticles.
81 # Output: 3D trajectories associated to PFParticles.
82 # Simply use all clusters associated to each PFParticle and fit 3D trajectories (no pattern recognition at all,
83 # no corrections to input objects, etc). Resulting trajectories are associated to existing PFPs.
84 standard_pmalgtrajfitter:
85 {
86  module_type: "PMAlgTrajFitter"
87  ProjectionMatchingAlg: @local::standard_projectionmatchingalg
88  PMAlgFitting: @local::standard_pmalgfitter
89  PMAlgVertexing: @local::standard_pmavertexalg
90  #
91  SaveOnlyBranchingVtx: false # use true to save only vertices interconnecting many tracks, otherwise
92  # vertex is added to the front of each track
93  SavePmaNodes: false # save track nodes (only for algorithm development purposes)
94  #
95  HitModuleLabel: "hits" # tag of unclustered hits, which were used to produce PFPs and clusters
96  PfpModuleLabel: "pandora" # tag of the input PFParticles and associated clusters
97 }
98 
99 standard_featuretracker:
100 {
101  module_type: "FeatureTracker"
102  HitModuleLabel: "ffthit"
103  LineIntFraction: 0.90
104  LineIntThreshold: 3
105  CornerPset: @local::standard_cornerfinderalg
106  SpacepointPset: @local::microboone_spacepointalg
107 }
108 
109 standard_featuretracker.SpacepointPset.MinViews: 2
110 
111 
112 standard_seedfindermodule:
113 {
114  module_type: "SeedFinderModule"
115  InputSource: 1 # 1: use clusters
116  # 2: use hits
117  InputModuleLabel: "dbcluster"
118  SeedAlg: @local::standard_seedfinderalgorithm
119 }
120 
121 standard_beziertrackermodule:
122 {
123  module_type: "BezierTrackerModule"
124  SeedModuleLabel: "seedfinder"
125  HitModuleLabel: "ffthit"
126  ClusterModuleLabel: "dbcluster"
127  TrackMode: 3
128  MakeHitAssns: true
129  EnableCalo: false
130  BezierTrackerAlgorithm: @local::standard_beziertrackeralgorithm
131 }
132 
133 standard_trackcheater:
134 {
135  module_type: "TrackCheater"
136  CheatedClusterLabel: "cluster"
137  G4ModuleLabel: "largeant"
138 }
139 
140 standard_trackkalmancheater:
141 {
142  module_type: "TrackKalmanCheater"
143  Hist: false
144  UseClusterHits: true
145  HitModuleLabel: "ffthit"
146  ClusterModuleLabel: "dbcluster"
147  MaxTcut: 10. # Maximum delta ray energy in MeV for restricted dE/dx
148  KalmanFilterAlg: @local::standard_kalmanfilteralg
149  SpacePointAlg: @local::standard_spacepointalg
150 }
151 
152 standard_track3Dreco:
153 {
154  module_type: "Track3Dreco"
155  ClusterModuleLabel: "linemerger"
156  TMatch: 35
157  Chi2DOFmax: 10.0
158 }
159 
160 standard_cosmictracker:
161 {
162  module_type: "CosmicTracker"
163  ClusterModuleLabel: "linemerger"
164  SortDirection: "+z"
165  StitchTracks: false
166  DisCut: 20
167  AngCut: 0.1
168  TrajOnly: false
169  ClusterMatch: @local::standard_clustermatchtq
170  CTAlg: @local::standard_cosmictrackeralg
171 }
172 
173 standard_track3Dkalman:
174 {
175  module_type: "Track3DKalman"
176  SpacePtsModuleLabel: "spacepts"
177  GenieGenModuleLabel: "generator" # comment out for real data.
178  G4ModuleLabel: "largeant"
179  PosErr3: [0.02,0.02,0.02] # position resolution, cm.
180  MomErr3: [0.10,0.10,0.2] # momentum resolution, GeV/c.
181  MomStart3: [0.10,0.10,1.5] # GeV/c. Will *not* be Unit norm'd.
182  PerpLimit: 2.0
183  GenfPRINT: true
184 }
185 
186 standard_track3DkalmanSPS:
187 {
188  module_type: "Track3DKalmanSPS"
189  ClusterModuleLabel: "dbscan"
190  SpptModuleLabel: "spacepointfinder"
191  GenieGenModuleLabel: "generator" # comment out for real data.
192  G4ModuleLabel: "largeant"
193  PosErr3: [0.05,0.1,0.1] # position resolution, cm.
194  MomErr3: [0.5,0.5,1.8] # momentum resolution, GeV/c.
195  MomStart3: [0.10,0.10,1.5] # GeV/c. Will *not* be Unit norm'd.
196  PerpLimit: 50.0
197  PdgCode: -13 # mu+
198  ErrScaleSim: 0.
199  ErrScaleMeas: 500.
200  DecimateC: 1
201  MaxUpdateC: 0.1
202  DecimateU: 1 # on first pass. after that its increased.
203  DistanceU: 15.0
204  MaxUpdateU: 0.1
205  Chi2HitThresh: 1000000.0
206  SortDirection: "z"
207  SpacePointAlg: @local::standard_spacepointalg
208 }
209 
210 standard_pfpana:
211 {
212  module_type: "PFPAna"
213  HitsModuleLabel: "linecluster"
214  ClusterModuleLabel: "linecluster"
215  TrackModuleLabel: "cctrackmaker"
216  PFParticleModuleLabel: "cctrackmaker"
217  VertexModuleLabel: "cctrackmaker"
218  ElecKERange: [50, 10000] # Min, max KE (MeV) for matching Primary only
219  MuonKERange: [50, 10000] # Min, max KE (MeV) for matching
220  PionKERange: [50, 10000] # Min, max KE (MeV) for matching
221  KaonKERange: [50, 10000] # Min, max KE (MeV) for matching
222  ProtKERange: [50, 10000] # Min, max KE (MeV) for matching
223  TrackWeightOption: 1 # 0 = equal weighting, 1 = weight by kinetic energy
224  MergeDaughters: true # merge daughter MC particles with mothers (not electrons)
225  SkipCosmics: true # do not evaluate cosmic rays
226  PrintLevel: 0 # 0 = none, 1 = event summary, 2 += each MC particle, 3 += truth
227 }
228 
229 
230 standard_trackana:
231 {
232  module_type: "TrackAna"
233  TrackModuleLabel: "trackkalmanhit"
234  MCTrackModuleLabel: "mcreco"
235  SpacepointModuleLabel: "spacepointfinder"
236  StitchModuleLabel: "stitch"
237  TrkSpptAssocModuleLabel: "trackkalmanhit"
238  HitSpptAssocModuleLabel: "gaushit"
239  HitModuleLabel: "gaushit"
240  Dump: 10
241  MinMCKE: 0.02
242  MinMCLen: 10.
243  MatchColinearity: 0.98
244  MatchDisp: 2.0
245  WMatchDisp: 15.0
246  MatchLength: 0.8
247  IgnoreSign: true
248  StitchedAnalysis: false
249  MCTrackOrigin: "Any"
250  PrintLevel: 0
251 }
252 
253 
254 standard_seedana:
255 {
256  module_type: "SeedAna"
257  SeedModuleLabel: "seedfinder"
258  MCTrackModuleLabel: "mcreco"
259  Dump: 10
260  MinMCKE: 0.05
261  MinMCLen: 20.
262  MatchColinearity: 0.97
263  MatchDisp: 2.0
264  IgnoreSign: true
265 }
266 
267 standard_spacepts:
268 {
269  module_type: "SpacePts"
270  TicksOffset: 75.0
271  ClusterModuleLabel: "linemerger"
272  EndPoint2DModuleLabel: "vertex2d"
273  TMatch: 50.0
274  vertexclusterWindow: 100.
275 }
276 
277 standard_spacepointana:
278 {
279  module_type: "SpacePointAna"
280  HitModuleLabel: "ffthit"
281  UseClusterHits: true
282  ClusterModuleLabel: "dbcluster"
283  UseMC: false
284  SpacePointAlgTime: @local::standard_spacepointalg
285  SpacePointAlgSep: @local::standard_spacepointalg
286  SpacePointAlgDefault: @local::standard_spacepointalg
287 }
288 
289 standard_spacepointfinder:
290 {
291  module_type: "SpacePointFinder"
292  ClusterModuleLabel: "dbcluster"
293  MinHits: 10
294  ClusterAssns: true
295  SpacePointAlg: @local::standard_spacepointalg
296 }
297 
298 standard_spacepointcheater:
299 {
300  module_type: "SpacePointCheater"
301  ClusterModuleLabel: "dbcluster"
302  MinHits: 10
303  ClusterAssns: true
304  SpacePointAlg: @local::standard_spacepointalg
305 }
306 
307 development_beziertrackjoiner:
308 {
309  module_type: "BezierTrackJoiner"
310  TrackModuleLabel: "beziertracker"
311  JoinThreshold: 1
312  VertexAngle: 0.26
313  ExtrapDistance: 10
314 
315 }
316 
317 development_beziertrackana:
318 {
319  module_type: "BezierTrackAna"
320  BezierTrackModuleLabel: "beziertracker"
321 }
322 
323 standard_track3Dkalmanhit:
324 {
325  module_type: "Track3DKalmanHit"
326  Hist: false
327  UseClusterHits: true
328  UsePFParticleHits: false
329  UsePFParticleSeeds: false
330  HitModuleLabel: "ffthit"
331  ClusterModuleLabel: "dbcluster"
332  PFParticleModuleLabel: "pandora"
333  #MaxTcut: 10. # Maximum delta ray energy in MeV for restricted dE/dx
334  #DoDedx: false # dE/dx enable flag.
335  #SelfSeed: false # Generate seeds internally.
336  #LineSurface: false # Store hits on line surfaces.
337  #MinSeedHits: 12 # Minimum number of hits per track seed.
338  #MinSeedChopHits: 50 # Potentially chop seeds that exceed this length.
339  #MaxChopHits: 20 # Maximum number of hits to chop from each end of seed.
340  #MaxSeedChiDF: 20. # Maximum seed track chisquare/dof.
341  #MinSeedSlope: 0.0 # Minimum seed slope (dx/dz).
342  #InitialMomentum: 0.5 # Initial momentum (GeV/c).
343  #KalmanFilterAlg: @local::standard_kalmanfilteralg
344  #SeedFinderAlg: @local::standard_seedfinderalgorithm
345  Track3DKalmanHitAlg: @local::standard_track3Dkalmanhitalg
346  SpacePointAlg: @local::standard_spacepointalg
347 }
348 
349 standard_trackstitcher:
350 {
351  module_type: "TrackStitcher"
352  TrackModuleLabel: "trk3dsps"
353  SpptModuleLabel: "spacepts"
354  StitchAlg: @local::standard_trackstitcheralg
355 }
356 
357 standard_magdriftana:
358 {
359  module_type: "MagDriftAna"
360  HitsModuleLabel: "ffthit"
361  LArGeantModuleLabel: "largeant"
362 }
363 
364 standard_neutrinotrackingeff:
365 {
366  module_type: "NeutrinoTrackingEff"
367  MCTruthModuleLabel: "generator"
368  TrackModuleLabel: "pandora"
369  isNeutrinoInt: true
370  NeutrinoPDGcode: 14
371  LeptonPDGcode: 13
372  MaxNeutrinoE: 25.0
373  MaxLeptonP: 3.0
374  SaveMCTree: false
375  FidVolCutX: 10
376  FidVolCutY: 10
377  FidVolCutZ: 10
378 }
379 
380 standard_muontrackingeff:
381 {
382  module_type: "MuonTrackingEff"
383  MCTruthModuleLabel: "generator"
384  TrackModuleLabel: "pmtrack"
385  MuonPDGCode: 13
386  FidVolCutX: 0
387  FidVolCutY: 0
388  FidVolCutZ: 0
389 }
390 
391 END_PROLOG
process_name vertex
Definition: cheaterreco.fcl:51
ClusterModuleLabel join with tracks
process_name cluster
Definition: cheaterreco.fcl:51
process_name can override from command line with o or output stream1 physics producers trackkal PosErr3
BEGIN_PROLOG pandoraGausReCaloCryo0 TrackModuleLabel
esac done echo Signal files are
Definition: TrainMVA.sh:25
TrackMode
Definition: Mode.h:22
BEGIN_PROLOG AngleMatchErr
physics producers generator FiducialCut
#define the
do one_file $F done echo for F in find $TOP name CMakeLists txt print
BEGIN_PROLOG MakeAlgTracks
process_name use argoneut_mc_hitfinder track
BEGIN_PROLOG SN SingleParticle ProtKERange
then echo echo For and will not be changed by echo further linking echo echo B echo The symbol is in the uninitialized data multiple common symbols may appear with the echo same name If the symbol is defined the common echo symbols are treated as undefined references For more echo details on common see the discussion of warn common echo in *Note Linker see the discussion of warn common echo in *Note Linker such as a global int variable echo as opposed to a large global array echo echo I echo The symbol is an indirect reference to another symbol This echo is a GNU extension to the a out object file format which is echo rarely used echo echo N echo The symbol is a debugging symbol echo echo R echo The symbol is in a read only data section echo echo S echo The symbol is in an uninitialized data section for small echo objects echo echo T echo The symbol is in the the normal defined echo symbol is used with no error When a weak undefined symbol echo is linked and the symbol is not the value of the echo weak symbol becomes zero with no error echo echo W echo The symbol is a weak symbol that has not been specifically echo tagged as a weak object symbol When a weak defined symbol echo is linked with a normal defined the normal defined echo symbol is used with no error When a weak undefined symbol echo is linked and the symbol is not the value of the echo weak symbol becomes zero with no error echo echo echo The symbol is a stabs symbol in an a out object file In echo this the next values printed are the stabs other echo the stabs desc and the stab type Stabs symbols are echo used to hold debugging information For more echo see *Note or object file format specific echo echo For Mac OS X
pdgs mu
Definition: selectors.fcl:22
process_name ccluster WireModuleLabel
Definition: hitana.fcl:49
process_name gaushit a
physics analyzers analysistree true physics analyzers analysistree VertexModuleLabel
BEGIN_PROLOG SN SingleParticle KaonKERange
A value measured in the specified unit.
Definition: quantities.h:566
for($it=0;$it< $RaceTrack_number;$it++)
auto end(FixedBins< T, C > const &) noexcept
Definition: FixedBins.h:585
BEGIN_PROLOG standard_spacepointalg
return match has_match and(match.match_pdg==11 or match.match_pdg==-11)
BEGIN_PROLOG Z sum does not need to be standard_pmalgtracker
BEGIN_PROLOG ChgAsymFactor
BEGIN_PROLOG standard_cctrackmaker
auto norm(Vector const &v)
Return norm of the specified vector.
BEGIN_PROLOG SN SingleParticle PrintLevel
BEGIN_PROLOG Z planes
BEGIN_PROLOG MomErr3
BEGIN_PROLOG SN SingleParticle PionKERange
TrackingSkipPdg join with reoptimize track vertex structure standard_beziertrackeralgorithm
process_name can override from command line with o or output trkana stream1 Oct physics producers trackkal SpptModuleLabel
BEGIN_PROLOG Ave chg rms MinHits
BEGIN_PROLOG triggeremu_data_config_icarus settings PMTADCthresholds sequence::icarus_stage0_multiTPC_TPC physics sequence::icarus_stage0_EastHits_TPC physics sequence::icarus_stage0_WestHits_TPC physics producers purityana0 module_type
if &&[-z"$BASH_VERSION"] then echo Attempting to switch to bash bash shellSwitch exit fi &&["$1"= 'shellSwitch'] shift declare a IncludeDirectives for Dir in
BEGIN_PROLOG XMatchErr
BEGIN_PROLOG MatchMinLen
BEGIN_PROLOG cosmic
BEGIN_PROLOG true MakePFPs
BEGIN_PROLOG SN SingleParticle TrackWeightOption
finds tracks best matching by angle
BEGIN_PROLOG MomStart3
BEGIN_PROLOG SN SingleParticle MuonKERange