Tracking Configuration Parameters
Here is the list of tracking configuration parameters and their defaults as printed out by hd_dump -Pprint=TRK explanations are below.
TRKFIND:EXCLUDE_STEREO = 1
TRKFIND:MAX_CIRCLE_DIST = 2 TRKFIND:MAX_DEBUG_BUFFERS = 0 TRKFIND:MAX_HIT_Z = 360 TRKFIND:MAX_PHI_Z_DIST = 10 TRKFIND:MAX_SEED_DIST = 5 TRKFIND:MAX_SEED_HITS = 10 TRKFIND:MIN_CANDIDATE_HITS = 6 TRKFIND:MIN_HIT_Z = -100 TRKFIND:MIN_PHI_Z_HITS = 4 TRKFIND:MIN_SEED_HITS = 4 TRKFIND:TARGET_Z_MAX = 80 TRKFIND:TARGET_Z_MIN = 50 TRKFIND:TRACKHIT_SOURCE = MC TRKFIND:XY_NOISE_CUT = 2 TRKFIT:CANDIDATE_TAG = TRKFIT:CANDIDATE_THROWN_SMEAR = 1 TRKFIT:CHISQ_MAX_RESI_SIGMAS = 5 TRKFIT:DEBUG_HISTS = 0 TRKFIT:DEFAULT_STEP_SIZE = 0.5 TRKFIT:LEAST_SQUARES_DP = 0.001 TRKFIT:LEAST_SQUARES_DX = 0.1 TRKFIT:LEAST_SQUARES_MAX_E2NORM = 1e+06 TRKFIT:LEAST_SQUARES_MIN_HITS = 3 TRKFIT:MAX_CHISQ_DIFF = 1e-06 TRKFIT:MAX_FIT_ITERATIONS = 20 TRKFIT:MAX_HIT_DIST = 10 TRKFIT:SIGMA_CDC = 0.02 TRKFIT:SIGMA_FDC_ANODE = 0.02 TRKFIT:SIGMA_FDC_CATHODE = 0.02 TRKFIT:USE_CDC = 1 TRKFIT:USE_FDC_ANODE = 1 TRKFIT:USE_FDC_CATHODE = 1 TRKMC:EXCLUDE_SECONDARIES = 0 TRKMC:MAX_HIT_R_FDC = 56.3
- 1 TRKFIND:EXCLUDE_STEREO
- 2 TRKFIND:MAX_CIRCLE_DIST
- 3 TRKFIND:MAX_DEBUG_BUFFERS
- 4 TRKFIND:MAX_HIT_Z
- 5 TRKFIND:MAX_PHI_Z_DIST
- 6 TRKFIND:MAX_SEED_DIST
- 7 TRKFIND:MAX_SEED_HITS
- 8 TRKFIND:MIN_CANDIDATE_HITS
- 9 TRKFIND:MIN_HIT_Z
- 10 TRKFIND:MIN_PHI_Z_HITS
- 11 TRKFIND:MIN_SEED_HITS
- 12 TRKFIND:TARGET_Z_MAX
- 13 TRKFIND:TARGET_Z_MIN
- 14 TRKFIND:TRACKHIT_SOURCE
- 15 TRKFIND:XY_NOISE_CUT
- 16 TRKFIT:CANDIDATE_TAG
- 17 TRKFIT:CANDIDATE_THROWN_SMEAR
- 18 TRKFIT:CHISQ_MAX_RESI_SIGMAS
- 19 TRKFIT:DEBUG_HISTS
- 20 TRKFIT:LEAST_SQUARES_DP
- 21 TKFIT:LEAST_SQUARES_DX
- 22 TRKFIT:LEAST_SQUARES_MAX_E2NORM
- 23 TRKFIT:LEAST_SQUARES_MIN_HITS
- 24 TRKFIT:MAX_CHISQ_DIFF
- 25 TRKFIT:MAX_FIT_ITERATIONS
- 26 TRKFIT:MAX_HIT_DIST
- 27 TRKFIT:SIGMA_CDC
- 28 TRKFIT:SIGMA_FDC_ANODE
- 29 TRKFIT:SIGMA_FDC_CATHODE
- 30 TRKFIT:USE_CDC
- 31 TRKFIT:USE_FDC_ANODE
- 32 TRKFIT:USE_FDC_CATHODE
- 33 TRKMC:EXCLUDE_SECONDARIES
- 34 TRKMC:MAX_HIT_R_FDC
Exclude CDC stereo layer hits from the track finding. This was implemented when track finding was done using truth information and may not make sense once a real hit-base track finder is implemented.
Maximum distance in cm a hit can be away from the circle (determined by seed fit) in X/Y plane in order to be considered "on circle".
Several objects and histograms are used in track finding that are discarded after each candidate is found. This value is used to determine how many should be kept around in the factory so they may be accessed when debugging. The buffers are automatically cleared at the start of the next event. This does not affect the results of the track finding.
Upper limit of z-value for hits that are included in track finding. This is used with TRKFIND:MIN_HIT_Z to specify a range of z-values for the hits used in track finding. The purpose is to limit ourselves to hits that fall in the high-field region of the solenoid. This may only make sense when finding with truth info since individual CDC hits do not contain z-information. A plot of the field region can be seen here: Track Finding/Fitting 2006
Maximum distance in cm a hit can be from the line of R*φ vs. z defined by a helix. This is used once a circle has been fit, and the "on circle" hits have been used to determine the slope,intercept of the line in phi/z space. Hits that fall within this distance are considered "on line" and will be used in the final determination of the helical parameters for the candidate.
Maximum distance in cm a hit can be in the X/Y plane from the previous hit in order to be considered part of the track seed. If the next nearest neighbor of a hit at the end of a track seed is further away than this distance, then the search for more seed hits on that end is terminated. See also TRKFIND:MAX_SEED_HITS.
Maximum number of seed hits needed before passing to the helical fitter. Once this number of hits are found, it is assumed there are enough hits to do a circle fit and continue finding the track.
Minimum number of hits on the final track candidate to allow it to become a true track candidate. After the final parameters for the candidate have been found using the helical fitter, one last pass is made to determine the hits that consistent with this helix. This implements a filter on candidates that don't contain at least this many hits nearby.
Minimum z-value in cm a hit can be to be included in track finding. See TRKFIND:MAX_HIT_Z above for details.
Minimum number of hits that are "on line" to allow candidate to procede to next level of helical fitter.
Minimum number of hits in a seed before the seed can be fit. If a seed cannot be fit, then the first hit in the seed is flagged as unusable in seed finding and a new seed is found. This is to say that rejecting a hit from the seed does not mean it is excluded from the helical fit.
Downstream location of the end of the target from which track is assumed to have come. In principle, one could open this up to look for tracks originating from exit windows or the scattering chamber etc.., This should be done with caution since it can lead to false identification of the z-vertex in the helical fitter.
Upstream location of the end of the target. See TRKFIND:TARGET_Z_MAX for more.
Used to switch whether hits are coming from Monte Carlo or real data. The intent is for this to be set automatically in DANA somewhere else. For now, it is always "MC" of course.
Maximum distance in cm a hit's nearest neighbor can be in the X/Y plane without the hit being conside a "lone hit". Lone hits are flagged at the beggining of the track finding to be ignored comletely since they are considered more likely to be noise. Note that the hits can (and will) still be used in track fitting.
Select the factory tag used to identify the factory from which to obtain DTrackCandidate objects used in the DTrack_factory. The default DTrackCandidate factory will find the candidates by searching through the hits. For Monte Carlo data, one can set this to "THROWN" to get candidates based on the thrown particle information. See TRKFIT:CANDIDATE_THROWN_SMEAR for more.
Turn on/off smearing of the thrown values' parameters when producing track candidates. By default, the thrown values are smeared out a little so that the fitter starts with less than perfect parameters. Setting this to "0" will cause the candidate to have exactly the parameters of the thrown particles. One place where this can be very useful is if one also sets TRKFIT:MAX_FIT_ITERATIONS=0 so the residuals will reflect a best-case-limit. Note that this parameter is really only meaningful when TRKFIT:CANDIDATE_TAG=THROWN (or if you look at the DTrackCandidate:THROWN objects explicitly).
Maximum number of standard deviations the residual of a hit can be and still be included in the χ2 calculation. This implents a filter to exclude hits that are unlikely to belong to the track. The σ values used for the standard deviations are (for now) given by TRKFIT:SIGMA_CDC, TRKFIT:SIGMA_FDC_ANODE, and TRKFIT:SIGMA_FDC_CATHODE.
Create and fill some ROOT debugging histogams for diagnosing the track fitting code. This does not change the result of the track fitting.
Change in momentum in GeV/c used in calculating numerical derivatives w.r.t px,py, and pz in the least squares fitting method.
Change in position in cm used in calculating numerical derivatives w.r.t. x and y in the least squares fitting method.
The least squares fitter relies on a matrix inversion. If the original (Jacobian) matrix has a column or row that contains only very small values, the inverted matrix will contain many very large values. The value E2norm is the square of the Euclidean norm (or sum of the squares of all of the elements) of the inverted matrix. This places a cut on this value so that inverted matrices with E2norm values higher than this will be considered failed fits.
Minimum number of "good" hits needed to procede with the fit. For a hit to be "good" it has to have a finite value for the residual for every track swum when calculating the numerical derivative. In addition, all residuals must be within TRKFIT:CHISQ_MAX_RESI_SIGMAS. If fewer than this many hits pass these cuts, then the track is considered unfittable.
Maximum χ<sup2</sup> difference between iterations of the least squares fitter to continue iterating. If the χ2 changes by less than this amount, then the fit is considered to be converged and the latest parameters are used for the track.
Maximum number of iterations the least squares fitter may attempt when fitting a track. If the track fails to converge within this many iterations, then the parameters from the last iteration are used to make the track. (This may need to be changed.)
Maximum distance a hit(wire) can be from a track and still be considered part of the track. NOTE: This is used to determine the subset of hits used in track fitting. A finer filter is applied when calculating the χ2 to reject some of these. See TRKFIT:CHISQ_MAX_RESI_SIGMAS.
Flag that determines whether CDC information is used in track fitting. Set it to "0" to have the CDC hits ignored in track fitting (though they will still be used in track finding).
Flag that determines whether FDC Anode information is used in track fitting. Set it to "0" to have the FDC drift times ignored in track fitting (though the distance along the wire can still be used).
Flag that determines whether FDC Cathode information is used in track fitting. Set it to "0" to have the FDC cathode strip information ignored in track fitting (though the drift times can still be used).
Filter out hits that are flagged as having come from secondary tracks by the simulation. This is only useful for Monte Carlo data.
Filter out hits from the FDC truth points for which the distance from the beamline exceeds this value. This only affects the FDC truth points so the full track fitter is not directly affected. The track finder, however will be so long as it uses truth info. This is only useful for Monte Carlo data.