![]() |
Project
|
#include <TrackInterpolation.h>
Classes | |
struct | CacheStruct |
Structure for caching positions, covariances and angles for extrapolations from ITS and TRD/TOF and for interpolation. More... | |
struct | TrackParams |
Structure for on-the-fly re-calculated track parameters at the validation stage. More... | |
Public Types | |
enum | { ExtOut = 0 , ExtIn , Int , NIndices } |
Enumeration for indexing the arrays of the CacheStruct. More... | |
using | MatCorrType = o2::base::Propagator::MatCorrType |
Public Member Functions | |
TrackInterpolation ()=default | |
Default constructor. | |
TrackInterpolation (const TrackInterpolation &)=delete | |
TrackInterpolation & | operator= (const TrackInterpolation &)=delete |
void | init (o2::dataformats::GlobalTrackID::mask_t src, o2::dataformats::GlobalTrackID::mask_t srcMap) |
Initialize everything, set the requested track sources. | |
bool | isInputTrackAccepted (const o2::dataformats::GlobalTrackID &gid, const o2::globaltracking::RecoContainer::GlobalIDSet &gidTable, const o2::dataformats::PrimaryVertex &pv) const |
Check if input track passes configured cuts. | |
o2::dataformats::GlobalTrackID::Source | findValidSource (const o2::dataformats::GlobalTrackID::mask_t mask, const o2::dataformats::GlobalTrackID::Source src) const |
For given vertex track source which is not in mSourcesConfigured find the seeding source which is enabled. | |
void | prepareInputTrackSample (const o2::globaltracking::RecoContainer &inp) |
Prepare input track sample (not relying on CreateTracksVariadic functionality) | |
bool | isTrackSelected (const o2::track::TrackParCov &trk) const |
Given the defined downsampling factor tsalisThreshold check if track is selected. | |
void | process () |
Main processing function. | |
void | extrapolateTrack (int iSeed) |
void | interpolateTrack (int iSeed) |
void | reset () |
Reset cache and output vectors. | |
bool | validateTrack (const TrackData &trk, TrackParams ¶ms, const std::vector< TPCClusterResiduals > &clsRes) const |
bool | outlierFiltering (const TrackData &trk, TrackParams ¶ms, const std::vector< TPCClusterResiduals > &clsRes) const |
float | checkResiduals (const TrackData &trk, TrackParams ¶ms, const std::vector< TPCClusterResiduals > &clsRes) const |
bool | compareToHelix (const TrackData &trk, TrackParams ¶ms, const std::vector< TPCClusterResiduals > &clsRes) const |
void | diffToLocLine (const int np, int idxOffset, const std::array< float, param::NPadRows > &x, const std::array< float, param::NPadRows > &y, std::array< float, param::NPadRows > &diffY) const |
For a given set of points, calculate the differences from each point to the fitted lines from all other points in their neighbourhoods (+- nMAShort points) | |
void | diffToMA (const int np, const std::array< float, param::NPadRows > &y, std::array< float, param::NPadRows > &diffMA) const |
For a given set of points, calculate their deviation from the moving average (build from the neighbourhood +- nMALong points) | |
void | setTPCVDrift (const o2::tpc::VDriftCorrFact &v) |
void | setMatCorr (MatCorrType matCorr) |
Sets the flag if material correction should be applied when extrapolating the tracks. | |
void | setMaxTracksPerTF (int n) |
Sets the maximum number of tracks to be processed (successfully) per TF. | |
void | setAddTracksForMapPerTF (int n) |
In addition to mMaxTracksPerTF up to the set number of additional tracks can be processed. | |
void | setDumpTrackPoints () |
Enable full output. | |
void | setITSClusterDictionary (const o2::itsmft::TopologyDictionary *dict) |
Allow setting the ITS cluster dictionary from outside. | |
void | setProcessSeeds () |
Enable processing of seeds. | |
void | setProcessITSTPConly () |
Enable ITS-TPC only processing. | |
void | setSqrtS (float s) |
Set the centre of mass energy required for pT downsampling Tsalis function. | |
std::vector< UnbinnedResid > & | getClusterResiduals () |
std::vector< TrackDataCompact > & | getTrackDataCompact () |
std::vector< TrackDataExtended > & | getTrackDataExtended () |
std::vector< TrackData > & | getReferenceTracks () |
std::vector< TPCClusterResiduals > & | getClusterResidualsUnfiltered () |
std::vector< TrackData > & | getReferenceTracksUnfiltered () |
This class is retrieving the TPC space point residuals by interpolating ITS/TRD/TOF tracks. The residuals are stored in the specified vectors of TPCClusterResiduals It has been ported from the AliTPCcalibAlignInterpolation class from AliRoot.
Definition at line 136 of file TrackInterpolation.h.
Definition at line 139 of file TrackInterpolation.h.
anonymous enum |
Enumeration for indexing the arrays of the CacheStruct.
Enumerator | |
---|---|
ExtOut | extrapolation outwards of ITS track |
ExtIn | extrapolation inwards of TRD/TOF track |
Int | interpolation (mean positions of both extrapolations) |
NIndices | total number of indices (3) |
Definition at line 149 of file TrackInterpolation.h.
|
default |
Default constructor.
|
delete |
float TrackInterpolation::checkResiduals | ( | const TrackData & | trk, |
TrackParams & | params, | ||
const std::vector< TPCClusterResiduals > & | clsRes | ||
) | const |
Is called from outlierFiltering() and does the actual calculations (moving average filter etc.)
Definition at line 912 of file TrackInterpolation.cxx.
bool TrackInterpolation::compareToHelix | ( | const TrackData & | trk, |
TrackParams & | params, | ||
const std::vector< TPCClusterResiduals > & | clsRes | ||
) | const |
Calculates the differences in Y and Z for a given set of clusters to a fitted helix. First a circular fit in the azimuthal plane is performed and subsequently a linear fit in the transversal plane
Definition at line 749 of file TrackInterpolation.cxx.
void TrackInterpolation::diffToLocLine | ( | const int | np, |
int | idxOffset, | ||
const std::array< float, param::NPadRows > & | x, | ||
const std::array< float, param::NPadRows > & | y, | ||
std::array< float, param::NPadRows > & | diffY | ||
) | const |
For a given set of points, calculate the differences from each point to the fitted lines from all other points in their neighbourhoods (+- nMAShort points)
Definition at line 1008 of file TrackInterpolation.cxx.
void TrackInterpolation::diffToMA | ( | const int | np, |
const std::array< float, param::NPadRows > & | y, | ||
std::array< float, param::NPadRows > & | diffMA | ||
) | const |
For a given set of points, calculate their deviation from the moving average (build from the neighbourhood +- nMALong points)
Definition at line 1064 of file TrackInterpolation.cxx.
Extrapolate ITS-only track through TPC and store residuals to TPC clusters along the way
seed | index |
Definition at line 600 of file TrackInterpolation.cxx.
GTrackID::Source TrackInterpolation::findValidSource | ( | const o2::dataformats::GlobalTrackID::mask_t | mask, |
const o2::dataformats::GlobalTrackID::Source | src | ||
) | const |
For given vertex track source which is not in mSourcesConfigured find the seeding source which is enabled.
Definition at line 120 of file TrackInterpolation.cxx.
|
inline |
Definition at line 269 of file TrackInterpolation.h.
|
inline |
Definition at line 273 of file TrackInterpolation.h.
|
inline |
Definition at line 272 of file TrackInterpolation.h.
|
inline |
Definition at line 274 of file TrackInterpolation.h.
|
inline |
Definition at line 270 of file TrackInterpolation.h.
|
inline |
Definition at line 271 of file TrackInterpolation.h.
void TrackInterpolation::init | ( | o2::dataformats::GlobalTrackID::mask_t | src, |
o2::dataformats::GlobalTrackID::mask_t | srcMap | ||
) |
Initialize everything, set the requested track sources.
Definition at line 41 of file TrackInterpolation.cxx.
Interpolate ITS-TRD-TOF track inside TPC and store residuals to TPC clusters along the way
seed | index |
Definition at line 341 of file TrackInterpolation.cxx.
bool TrackInterpolation::isInputTrackAccepted | ( | const o2::dataformats::GlobalTrackID & | gid, |
const o2::globaltracking::RecoContainer::GlobalIDSet & | gidTable, | ||
const o2::dataformats::PrimaryVertex & | pv | ||
) | const |
Check if input track passes configured cuts.
Definition at line 73 of file TrackInterpolation.cxx.
bool TrackInterpolation::isTrackSelected | ( | const o2::track::TrackParCov & | trk | ) | const |
Given the defined downsampling factor tsalisThreshold check if track is selected.
Definition at line 225 of file TrackInterpolation.cxx.
|
delete |
bool TrackInterpolation::outlierFiltering | ( | const TrackData & | trk, |
TrackParams & | params, | ||
const std::vector< TPCClusterResiduals > & | clsRes | ||
) | const |
Filter out individual outliers from all cluster residuals of given track
Definition at line 894 of file TrackInterpolation.cxx.
void TrackInterpolation::prepareInputTrackSample | ( | const o2::globaltracking::RecoContainer & | inp | ) |
Prepare input track sample (not relying on CreateTracksVariadic functionality)
Definition at line 142 of file TrackInterpolation.cxx.
void TrackInterpolation::process | ( | ) |
Main processing function.
Definition at line 234 of file TrackInterpolation.cxx.
void TrackInterpolation::reset | ( | ) |
Reset cache and output vectors.
Definition at line 1092 of file TrackInterpolation.cxx.
In addition to mMaxTracksPerTF up to the set number of additional tracks can be processed.
Definition at line 251 of file TrackInterpolation.h.
|
inline |
Enable full output.
Definition at line 254 of file TrackInterpolation.h.
|
inline |
Allow setting the ITS cluster dictionary from outside.
Definition at line 257 of file TrackInterpolation.h.
|
inline |
Sets the flag if material correction should be applied when extrapolating the tracks.
Definition at line 245 of file TrackInterpolation.h.
Sets the maximum number of tracks to be processed (successfully) per TF.
Definition at line 248 of file TrackInterpolation.h.
|
inline |
Enable ITS-TPC only processing.
Definition at line 263 of file TrackInterpolation.h.
|
inline |
Enable processing of seeds.
Definition at line 260 of file TrackInterpolation.h.
|
inline |
Set the centre of mass energy required for pT downsampling Tsalis function.
Definition at line 266 of file TrackInterpolation.h.
void TrackInterpolation::setTPCVDrift | ( | const o2::tpc::VDriftCorrFact & | v | ) |
Definition at line 1111 of file TrackInterpolation.cxx.
bool TrackInterpolation::validateTrack | ( | const TrackData & | trk, |
TrackParams & | params, | ||
const std::vector< TPCClusterResiduals > & | clsRes | ||
) | const |
Validates the given input track and its residuals
trk | The track parameters, e.g. q/pT, eta, ... |
params | Structure with per pad information recalculated on the fly |
Definition at line 726 of file TrackInterpolation.cxx.