public final class GarfieldTrackFinder extends Driver
See ExampleDriver.java on how to use it
This org.lcsim version is based on a previous hep.lcd version.
known dependencies on org.lcsim:
a few parameters are tuned specifically to SiD in org.lcsim, lines with
such dependencies are labeled with "FixMe".
MipStub
,
GarfieldTrack
,
GarfieldHit
Driver.AbortRunException, Driver.NextEventException
Modifier and Type | Field and Description |
---|---|
(package private) static int |
APPEND |
private double |
bestGrade |
private GarfieldHit |
bestHit |
private int |
bestTrackID |
(package private) static double |
bfield |
private int |
debugLevel
Level of verbosity: 0 no output, 1 some, 3 lot, 5 lots and lots
|
private double |
garfieldChi2ContribCut |
private double |
garfieldChi2Cut |
private double |
garfieldChi2Cut3Ndf |
private double |
garfieldKappaCut3Ndf |
private int |
garfieldnTRKHitMin |
private GarfieldHitConverter |
hitConverter |
private int |
issuedTrackIDValue |
(package private) static double |
k_cm |
private List<GarfieldHit> |
listOfHits |
private int |
listOfHitsHighestLayer |
private int |
listOfHitsLowestLayer |
private double |
maxDistanceFirstHitToBase |
(package private) static int |
maxTrkNmbr |
private double |
minDistanceInHits |
private boolean |
modeBestTrackOnly |
private boolean |
modeFromOutsideIn |
private int |
modeModifyTracklist |
private boolean |
modeUseAllMipStubs |
private boolean |
modeUseVXD |
private int |
nFitIterations |
private int |
nNewHitsMax |
(package private) static int |
NO |
(package private) static int |
NONE |
(package private) static int |
OVERWRITE |
private int |
pickEventNo |
private double |
pickMipStubAngle |
private int |
pickMipStubNo |
private boolean |
refitDuringPatternReco |
private double |
scaleSearchRegion |
private List<GarfieldHit> |
selectedHits |
(package private) static int |
YES |
HLEVEL_DEFAULT, HLEVEL_FULL, HLEVEL_HIGH, HLEVEL_NORMAL, HLEVEL_OFF
Constructor and Description |
---|
GarfieldTrackFinder()
Construct
GarfieldTrackFinder with default parameters
and no debugging output requested. |
GarfieldTrackFinder(int debugLevel)
Construct
GarfieldTrackFinder with default parameters. |
Modifier and Type | Method and Description |
---|---|
private boolean |
addHit(GarfieldTrack g,
GarfieldHit h)
Add a hit to an existing track including decisions on how to update helix paramters.
|
private void |
getNextHits(GarfieldTrack g,
double scale)
Compile a list of eligible hits in the next layer and put it into
selectedHits for pattern recognition code to use. |
private boolean |
isEven(int i) |
private int |
issueTrackID() |
private double |
overlapRatio(GarfieldTrack g1,
GarfieldTrack g2) |
private void |
panicPurge(List lst,
int ntrMax) |
void |
process(EventHeader event)
Process event (called by the framework).
|
void |
setChi2ContribCut(double d) |
void |
setChi2Cut(double d) |
void |
setDebugLevel(int i)
Set desired amount of debugging output and test histograms,
=0 no output, > 0 debug output
|
void |
setMode(String category,
int mode)
Set track finder's mode of operation.
|
void |
setNFitIterations(int i) |
void |
setNNewHitsMax(int i) |
void |
setNTrkHitMin(int i) |
void |
setPickEventNo(int i)
allows processing of a single event.
|
void |
setPickMipStubAngle(double a)
allows processing of a phi-region.
|
void |
setPickMipStubNo(int i)
allows processing of a single MipStub.
|
void |
setScaleSearchRegion(double d) |
void |
testEv5(EventHeader event)
another example on how to fit a track
|
void |
testEvent(EventHeader event) |
void |
testGenericTrackFit(EventHeader event)
example for stand-alone tracking for Wolfgang M.
|
add, clearStatistics, contains, detectorChanged, drivers, endOfData, getConditionsManager, getHistogramLevel, getLogger, getName, getRandom, printStatistics, processChildren, remove, resume, setHistogramLevel, setLogLevel, setRandom, startOfData, suspend
static final int APPEND
static final int OVERWRITE
static final int NONE
static final int YES
static final int NO
private List<GarfieldHit> listOfHits
private int listOfHitsLowestLayer
private int listOfHitsHighestLayer
private List<GarfieldHit> selectedHits
private GarfieldHitConverter hitConverter
static double k_cm
private int garfieldnTRKHitMin
private boolean refitDuringPatternReco
private double garfieldChi2ContribCut
private double garfieldChi2Cut
private double garfieldChi2Cut3Ndf
private double garfieldKappaCut3Ndf
private double scaleSearchRegion
private double maxDistanceFirstHitToBase
private int nNewHitsMax
private int nFitIterations
private int modeModifyTracklist
private boolean modeUseVXD
private boolean modeBestTrackOnly
private boolean modeFromOutsideIn
private boolean modeUseAllMipStubs
private int pickEventNo
private int pickMipStubNo
private double pickMipStubAngle
private int debugLevel
private int issuedTrackIDValue
private double minDistanceInHits
private GarfieldHit bestHit
private int bestTrackID
private double bestGrade
static int maxTrkNmbr
static double bfield
public GarfieldTrackFinder()
GarfieldTrackFinder
with default parameters
and no debugging output requested.public GarfieldTrackFinder(int debugLevel)
GarfieldTrackFinder
with default parameters.debugLevel
- The higher the debugLeve
, the more
debugging output and test histograms are produced.public void setDebugLevel(int i)
public void setMode(String category, int mode)
category
- Mode category (what to set)mode
- Requested mode
List of categories and correspondin mode choices
(default mode is listed first) :
"Modify Event TrackList"
"Use VXD Hits"
"Best Track Only"
"From Outside In"
public void setNNewHitsMax(int i)
public void setNTrkHitMin(int i)
public void setNFitIterations(int i)
public void setChi2ContribCut(double d)
public void setChi2Cut(double d)
public void setScaleSearchRegion(double d)
public void setPickEventNo(int i)
public void setPickMipStubNo(int i)
public void setPickMipStubAngle(double a)
public void process(EventHeader event)
process
in class Driver
event
- The event to be processedDriver.NextEventException
,
Driver.AbortRunException
private void getNextHits(GarfieldTrack g, double scale)
selectedHits
for pattern recognition code to use.private boolean addHit(GarfieldTrack g, GarfieldHit h)
true
if the hit is successfully added,
false
if the hit has too large chi^2.private int issueTrackID()
private boolean isEven(int i)
private double overlapRatio(GarfieldTrack g1, GarfieldTrack g2)
private void panicPurge(List lst, int ntrMax)
public void testEvent(EventHeader event)
public void testGenericTrackFit(EventHeader event)
public void testEv5(EventHeader event)
Copyright © 2016 Linear Collider Detector (LCD). All rights reserved.