1 #ifndef TIMEPIXLOCALROADSEARCHPROCESSOR_H
2 #define TIMEPIXLOCALROADSEARCHPROCESSOR_H
4 #include "RowTripletBasedTrackFinderProcessor.h"
6 #include <marlin/Processor.h>
7 #include <marlin/Global.h>
11 #include <gear/TPCModule.h>
14 #include "EVENT/TrackerHit.h"
21 #include "TMatrixDSym.h"
81 virtual Processor* newProcessor() {
89 virtual void processRunHeader(EVENT::LCRunHeader* run);
93 virtual void check(EVENT::LCEvent* evt);
134 tp_Pixel(
const int,
const EVENT::TrackerHit&,
const double,
const double);
143 void getPos(
double*)
const;
159 const double _sigma2XY;
160 const double _sigma2Z;
166 typedef std::vector<tp_Pixel*> pixelListType;
167 typedef std::map<int, pixelListType> chipPixelMapType;
183 void getPos(
double*)
const;
184 double getVarXY(
const double,
const double)
const;
196 pixelListType _pixels;
212 typedef std::vector<tp_MacroPixel*> macroPixelListType;
213 typedef std::pair<tp_MacroPixel*, tp_MacroPixel*> macroPixelPairType;
214 typedef std::vector<macroPixelPairType> macroPixelPairListType;
215 typedef std::map<int, macroPixelPairListType> macroPixelPairListMapType;
220 tp_PixelBin(
const int,
const int, pixelListType&,
const int,
const double,
const double);
232 macroPixelListType _macroPixels;
235 typedef std::vector<tp_PixelBin*> pixelBinListType;
240 tp_PixelRoad(macroPixelPairType, pixelBinListType&,
const double*);
255 std::vector<double> _sList;
256 macroPixelListType _macroPixels;
262 tp_PixelSegment(
const int,
const int,
const double, macroPixelListType&);
271 void getPar(
double *)
const;
272 const TVectorD&
getPar()
const;
273 const TMatrixDSym&
getCov()
const;
283 macroPixelListType _macroPixels;
290 TVectorD _parameters;
291 TMatrixDSym _covariance;
294 typedef std::vector<tp_PixelSegment*> pixelSegmentListType;
295 typedef std::map<int, pixelSegmentListType> pixelSegmentListMapType;
300 tp_PixelChip(
const int, pixelListType&,
const int,
const double);
307 int findSegments(
const double,
const int*,
const double*);
308 pixelSegmentListType getPixelSegments()
const;
315 pixelBinListType _pixelBins;
316 pixelSegmentListType _pixelSegments;
319 typedef std::vector<tp_PixelChip*> pixelChipListType;
325 pixelSegmentListType
run(
const int,
const int, pixelSegmentListType&,
const double,
const double);
332 #endif // TIMEPIXLOCALROADSEARCHPROCESSOR_H
double _xOffset
offset in x of (local) coordinate system (default 0.)
Definition: TimePixLocalRoadSearchProcessor.h:107
int getNumPix() const
Get (number of) pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:818
tp_MacroPixel(const int, pixelListType &, const int)
Construct TimePix macro pixel.
Definition: TimePixLocalRoadSearchProcessor.cc:444
std::string _inputColName
Name of the input collection.
Definition: TimePixLocalRoadSearchProcessor.h:99
double getChi2() const
Get Chi2/Ndf.
Definition: TimePixLocalRoadSearchProcessor.cc:828
int getNumBins() const
Get (number of) pixels bins.
Definition: TimePixLocalRoadSearchProcessor.cc:1136
double _yOffset
offset in y of (local) coordinate system (default 1500.)
Definition: TimePixLocalRoadSearchProcessor.h:108
virtual void processEvent(EVENT::LCEvent *evt)
Process event.
Definition: TimePixLocalRoadSearchProcessor.cc:119
const TVectorD & getPar() const
Get parameter vector.
Definition: TimePixLocalRoadSearchProcessor.cc:972
double _sigmaZ
resolution in Z (default: 3.0)
Definition: TimePixLocalRoadSearchProcessor.h:106
void print() const
Print.
Definition: TimePixLocalRoadSearchProcessor.cc:916
double getSigma2XY() const
Get XY resolution (squared).
Definition: TimePixLocalRoadSearchProcessor.cc:523
double _minZmeas
min. measured Z value (default 0.)
Definition: TimePixLocalRoadSearchProcessor.h:104
int getNumPar() const
Get number of parameters.
Definition: TimePixLocalRoadSearchProcessor.cc:942
double _maxPull2Z
max. pull squared to road in Z (default: 15.)
Definition: TimePixLocalRoadSearchProcessor.h:113
pixelSegmentListType run(const int, const int, pixelSegmentListType &, const double, const double)
Run segment combiner.
Definition: TimePixLocalRoadSearchProcessor.cc:1277
double _chi2CutOcto
max. Chi2/Ndf for octoboard segment matching (default: 30.)
Definition: TimePixLocalRoadSearchProcessor.h:120
bool _refAtPCA
Use Pca as reference point (else 1. hit)
Definition: TimePixLocalRoadSearchProcessor.h:123
int _mpSize
macro pixel (bin) size (default: 32)
Definition: TimePixLocalRoadSearchProcessor.h:103
TimePix pixel segment.
Definition: TimePixLocalRoadSearchProcessor.h:260
tp_PixelChip(const int, pixelListType &, const int, const double)
Construct TimePix (macro) pixel bin.
Definition: TimePixLocalRoadSearchProcessor.cc:1068
int getId() const
Get Id.
Definition: TimePixLocalRoadSearchProcessor.cc:697
TimePix (macro) pixel road.
Definition: TimePixLocalRoadSearchProcessor.h:238
void getLCIOStateAtRefPoint(const double *, TVectorD &, TMatrixDSym &) const
Get segment state at reference point.
Definition: TimePixLocalRoadSearchProcessor.cc:995
macroPixelListType getMacroPixels() const
Get macro pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:833
TimePix pixel segment combiner.
Definition: TimePixLocalRoadSearchProcessor.h:322
TimePix pixel.
Definition: TimePixLocalRoadSearchProcessor.h:132
void setUsed()
Set use flag.
Definition: TimePixLocalRoadSearchProcessor.cc:568
TimePix macro pixel.
Definition: TimePixLocalRoadSearchProcessor.h:170
void setUsed()
Set use flag.
Definition: TimePixLocalRoadSearchProcessor.cc:429
int getHitNum() const
Get index to input hit collection.
Definition: TimePixLocalRoadSearchProcessor.cc:364
double _chi2CutChip
max. Chi2/Ndf for chip segment matching (default: 30.)
Definition: TimePixLocalRoadSearchProcessor.h:119
int getChip() const
Get chip number.
Definition: TimePixLocalRoadSearchProcessor.cc:369
void print() const
Print.
Definition: TimePixLocalRoadSearchProcessor.cc:1116
const TMatrixDSym & getCov() const
Get covariance matrix.
Definition: TimePixLocalRoadSearchProcessor.cc:977
~tp_PixelChip()
Destructor.
Definition: TimePixLocalRoadSearchProcessor.cc:1105
TimePix (macro) pixel bin.
Definition: TimePixLocalRoadSearchProcessor.h:218
double getSigma2XY() const
Get XY variance.
Definition: TimePixLocalRoadSearchProcessor.cc:409
void getPos(double *) const
Get position.
Definition: TimePixLocalRoadSearchProcessor.cc:402
~tp_PixelRoad()
Destructor.
Definition: TimePixLocalRoadSearchProcessor.cc:801
int getNumMPix() const
Get (number of) macro pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:1131
void print() const
Print.
Definition: TimePixLocalRoadSearchProcessor.cc:807
TimePixLocalRoadSearchProcessor()
Construct processor.
Definition: TimePixLocalRoadSearchProcessor.cc:50
int getId() const
Get Id.
Definition: TimePixLocalRoadSearchProcessor.cc:1121
double _distCut
max. relative (to track length sum) distance (of centers) for segment matching (default: 2...
Definition: TimePixLocalRoadSearchProcessor.h:122
TimePix pixel chip.
Definition: TimePixLocalRoadSearchProcessor.h:298
int getRow() const
Get row number.
Definition: TimePixLocalRoadSearchProcessor.cc:513
pixelListType getPixels() const
Get pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:573
void print() const
Print.
Definition: TimePixLocalRoadSearchProcessor.cc:492
int getNdf() const
Get Chi2/Ndf.
Definition: TimePixLocalRoadSearchProcessor.cc:937
double _bfieldScaleFactor
scale factor for magnetic field (default: 1.0)
Definition: TimePixLocalRoadSearchProcessor.h:101
macroPixelListType getMacroPixels() const
Get macro pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:712
double _maxPull2XY
max. pull squared to road in XY (default: 15.)
Definition: TimePixLocalRoadSearchProcessor.h:112
int getId() const
Get Id.
Definition: TimePixLocalRoadSearchProcessor.cc:498
int _octoScale
octoboard number scale (in module=(octo+offset)/scale) (default 12)
Definition: TimePixLocalRoadSearchProcessor.h:118
tp_PixelSegmentCombiner(const double)
Construct TimePix pixel segment combiner.
Definition: TimePixLocalRoadSearchProcessor.cc:1264
double _maxChi2
max. Chi2/Ndf for road (default 5.)
Definition: TimePixLocalRoadSearchProcessor.h:114
bool getUsed() const
Get use flag.
Definition: TimePixLocalRoadSearchProcessor.cc:419
void setArcLength(const double)
Set arc length.
Definition: TimePixLocalRoadSearchProcessor.cc:434
double _maxGap
max. (arc-length) gap for road (default: 4.0)
Definition: TimePixLocalRoadSearchProcessor.h:116
double getArcLength() const
Get arc length.
Definition: TimePixLocalRoadSearchProcessor.cc:424
double getVarZ() const
Get Z variance.
Definition: TimePixLocalRoadSearchProcessor.cc:558
int getNumMPix() const
Get (number of) pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:823
double getSigma2Z() const
Get Z variance.
Definition: TimePixLocalRoadSearchProcessor.cc:414
bool getUsed() const
Get use flag.
Definition: TimePixLocalRoadSearchProcessor.cc:563
tp_PixelBin(const int, const int, pixelListType &, const int, const double, const double)
Construct TimePix (macro) pixel bin.
Definition: TimePixLocalRoadSearchProcessor.cc:589
bool isValid() const
Get validity flag.
Definition: TimePixLocalRoadSearchProcessor.cc:813
double _maxSvar
max. relative arc-length variance for road (default: 0.15)
Definition: TimePixLocalRoadSearchProcessor.h:115
tp_Pixel(const int, const EVENT::TrackerHit &, const double, const double)
Construct TimePix pixel.
Definition: TimePixLocalRoadSearchProcessor.cc:351
double getY() const
Get Y coordinate.
Definition: TimePixLocalRoadSearchProcessor.cc:389
int findSegments(const double, const int *, const double *)
Find segments.
Definition: TimePixLocalRoadSearchProcessor.cc:1163
void print() const
Print.
Definition: TimePixLocalRoadSearchProcessor.cc:692
int _maxMult
max. multiplicity for road seeding bins (default: 3)
Definition: TimePixLocalRoadSearchProcessor.h:109
double getLength() const
Get length.
Definition: TimePixLocalRoadSearchProcessor.cc:927
Track finder for TimePix data based on local road search.
Definition: TimePixLocalRoadSearchProcessor.h:78
int getCol() const
Get column number.
Definition: TimePixLocalRoadSearchProcessor.cc:518
tp_PixelRoad(macroPixelPairType, pixelBinListType &, const double *)
Construct TimePix (macro) pixel road.
Definition: TimePixLocalRoadSearchProcessor.cc:722
int getNumPix() const
Get (number of) pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:1126
int _octoOffset
octoboard number offset (in module=(octo+offset)/scale) (default 8)
Definition: TimePixLocalRoadSearchProcessor.h:117
void getPos(double *) const
Get position.
Definition: TimePixLocalRoadSearchProcessor.cc:546
double getSigma2Z() const
Get Z resolution (squared).
Definition: TimePixLocalRoadSearchProcessor.cc:528
std::string _outputColName
Name of the output collection.
Definition: TimePixLocalRoadSearchProcessor.h:100
~tp_PixelBin()
Destructor.
Definition: TimePixLocalRoadSearchProcessor.cc:683
int _minTrackLevel
min. track level for output (default 1)
Definition: TimePixLocalRoadSearchProcessor.h:102
void getRefPoint(double *) const
Get reference point.
Definition: TimePixLocalRoadSearchProcessor.cc:955
int getNumMPix() const
Get (number of) pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:707
int getLevel() const
Get level.
Definition: TimePixLocalRoadSearchProcessor.cc:947
double _maxZmeas
max. measured Z value (default 600.)
Definition: TimePixLocalRoadSearchProcessor.h:105
macroPixelListType getMacroPixels() const
Get macro pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:982
~tp_MacroPixel()
Destructor.
Definition: TimePixLocalRoadSearchProcessor.cc:486
bool match(tp_PixelSegment *, const double, const double) const
Compare the (4 (line) or 5 (helix)) track parameters (at the mid point).
Definition: TimePixLocalRoadSearchProcessor.cc:1020
double getVarXY(const double, const double) const
Get XY variance.
Definition: TimePixLocalRoadSearchProcessor.cc:553
double _chi2CutMod
max. Chi2/Ndf for module segment matching (default: 50.)
Definition: TimePixLocalRoadSearchProcessor.h:121
int getCol() const
Get column number.
Definition: TimePixLocalRoadSearchProcessor.cc:379
double getX() const
Get X coordinate.
Definition: TimePixLocalRoadSearchProcessor.cc:384
virtual void init()
Initialize processor.
Definition: TimePixLocalRoadSearchProcessor.cc:110
int getNumPix() const
Get (number of) pixels.
Definition: TimePixLocalRoadSearchProcessor.cc:702
void print() const
Print.
Definition: TimePixLocalRoadSearchProcessor.cc:358
int getRow() const
Get row number.
Definition: TimePixLocalRoadSearchProcessor.cc:374
tp_PixelSegment(const int, const int, const double, macroPixelListType &)
Construct TimePix pixel segment.
Definition: TimePixLocalRoadSearchProcessor.cc:844
double getY() const
Get Y-position.
Definition: TimePixLocalRoadSearchProcessor.cc:538
~tp_PixelSegment()
Destructor.
Definition: TimePixLocalRoadSearchProcessor.cc:910
int getEntries() const
Get (number of) entries.
Definition: TimePixLocalRoadSearchProcessor.cc:508
int getSize() const
Get size.
Definition: TimePixLocalRoadSearchProcessor.cc:503
int _minDist
min. distance for road seeding bins (default: 2)
Definition: TimePixLocalRoadSearchProcessor.h:111
double getChi2() const
Get Chi2/Ndf.
Definition: TimePixLocalRoadSearchProcessor.cc:932
double getX() const
Get X-position.
Definition: TimePixLocalRoadSearchProcessor.cc:533
double getZ() const
Get Z coordinate.
Definition: TimePixLocalRoadSearchProcessor.cc:394
int _minPixels
min. number of pixels for road seeding maxro pixel (default: 3)
Definition: TimePixLocalRoadSearchProcessor.h:110