Project
Loading...
Searching...
No Matches
o2::mft::TracksToRecords Class Reference

#include <TracksToRecords.h>

Inherits o2::mft::Aligner.

Public Member Functions

 TracksToRecords ()
 construtor
 
 ~TracksToRecords () override
 destructor
 
void init () override
 init Millipede and AlignPointHelper
 
void setClusterDictionary (const o2::itsmft::TopologyDictionary *d)
 
void setRunNumber (const int value)
 
void setBz (const float bz)
 
void setMinNumberClusterCut (const int value)
 
void setWithControl (const bool choice)
 
void setNEntriesAutoSave (const int value)
 
void setWithConstraintsRecWriter (const bool choice)
 
void processTimeFrame (o2::framework::ProcessingContext &ctx)
 access mft tracks and clusters in the timeframe provided by the workflow
 
void processRecoTracks ()
 use valid tracks (and associated clusters) from the workflow to build Mille records
 
void processROFs (TChain *mfttrackChain, TChain *mftclusterChain)
 use mft tracks and clusters provided by ROOT files accessed via TChain to build Mille records
 
void printProcessTrackSummary ()
 print a summary status of what happened in processRecoTracks() or processROFs()
 
void startRecordWriter ()
 init the utility needed to write data records and its control tree
 
void endRecordWriter ()
 end the utility used to write data records and its control tree
 
void startConstraintsRecWriter ()
 init the utility needed to write constraints records
 
void endConstraintsRecWriter ()
 end the utility used to write constraints records
 
- Public Member Functions inherited from o2::mft::Aligner
 Aligner ()
 construtor
 
virtual ~Aligner ()
 destructor
 
void setChi2CutNStdDev (const Int_t value)
 
void setResidualCutInitial (const Double_t value)
 
void setResidualCut (const Double_t value)
 
void setAllowedVariationDeltaX (const double value)
 
void setAllowedVariationDeltaY (const double value)
 
void setAllowedVariationDeltaZ (const double value)
 
void setAllowedVariationDeltaRz (const double value)
 
void setChi2CutFactor (const double value)
 
int getNDofPerSensor () const
 return the number of DOF per sensor
 

Protected Member Functions

bool setLocalDerivative (Int_t index, Double_t value)
 set array of local derivatives
 
bool setGlobalDerivative (Int_t index, Double_t value)
 set array of global derivatives
 
bool resetLocalDerivative ()
 reset the array of the Local derivative
 
bool resetGlocalDerivative ()
 reset the array of the Global derivative
 
bool setLocalEquationX ()
 set the first component of the local equation vector for a given alignment point
 
bool setLocalEquationY ()
 set the 2nd component of the local equation vector for a given alignment point
 
bool setLocalEquationZ ()
 set the last component of the local equation vector for a given alignment point
 
 ClassDefOverride (TracksToRecords, 0)
 
- Protected Member Functions inherited from o2::mft::Aligner
 ClassDef (Aligner, 0)
 

Protected Attributes

int mRunNumber
 run number
 
float mBz
 magnetic field status
 
int mNumberTFs
 number of timeframes processed
 
int mNumberOfClusterChainROFs
 number of ROFs in the cluster chain
 
int mNumberOfTrackChainROFs
 number of ROFs in the track chain
 
int mCounterLocalEquationFailed
 count how many times we failed to set a local equation
 
int mCounterSkippedTracks
 count how many tracks did not met the cut on the min. nb of clusters
 
int mCounterUsedTracks
 count how many tracks were used to make Mille records
 
std::vector< double > mGlobalDerivatives
 vector of global derivatives {dDeltaX, dDeltaY, dDeltaRz, dDeltaZ}
 
std::vector< double > mLocalDerivatives
 vector of local derivatives {dX0, dTx, dY0, dTz}
 
int mMinNumberClusterCut
 Minimum number of clusters in the track to be used for alignment.
 
double mWeightRecord
 the weight given to a single Mille record in Millepede algorithm
 
const o2::itsmft::TopologyDictionarymDictionary
 cluster patterns dictionary
 
o2::mft::AlignPointHelpermAlignPoint
 Alignment point helper.
 
bool mWithControl
 boolean to set the use of the control tree
 
long mNEntriesAutoSave = 10000
 number of entries needed to call AutoSave for the output TTrees
 
o2::mft::AlignPointControl mPointControl
 AlignPointControl handles the control tree.
 
o2::fwdalign::MilleRecordWritermRecordWriter
 utility that handles the writing of the data records to a ROOT file
 
bool mWithConstraintsRecWriter
 boolean to be set to true if one wants to also write constaints records
 
o2::fwdalign::MilleRecordWritermConstraintsRecWriter
 utility that handles the writing of the constraints records
 
std::vector< o2::BaseCluster< double > > mMFTClustersLocal
 MFT clusters in local coordinate system.
 
std::vector< o2::BaseCluster< double > > mMFTClustersGlobal
 MFT clusters in global coordinate system.
 
o2::fwdalign::MillePede2mMillepede
 Millepede2 implementation copied from AliROOT.
 
gsl::span< const o2::mft::TrackMFTmMFTTracks
 
gsl::span< const o2::itsmft::ROFRecordmMFTTracksROF
 
gsl::span< const intmMFTTrackClusIdx
 
gsl::span< const o2::itsmft::CompClusterExtmMFTClusters
 
gsl::span< const o2::itsmft::ROFRecordmMFTClustersROF
 
gsl::span< const unsigned charmMFTClusterPatterns
 
gsl::span< constunsignedchar >::iterator mPattIt
 
- Protected Attributes inherited from o2::mft::Aligner
std::array< double, mNDofPerSensormAllowVar
 "Encouraged" variation for degrees of freedom {dx, dy, dRz, dz}
 
double mStartFac
 Initial value for chi2 cut, used to reject outliers i.e. bad tracks with sum(chi2) > Chi2DoFLim(fNStdDev, nDoF) * chi2CutFactor (if > 1, iterations in Millepede are turned on)
 
int mChi2CutNStdDev
 Number of standard deviations for chi2 cut.
 
double mResCutInitial
 Cut on residual on first iteration.
 
double mResCut
 Cut on residual for other iterations.
 
TString mMilleRecordsFileName
 output file name when saving the Mille records
 
TString mMilleConstraintsRecFileName
 output file name when saving the records of the constraints
 
bool mIsInitDone = false
 boolean to follow the initialisation status
 
std::vector< intmGlobalParameterStatus
 vector of effective degrees of freedom, used to fix detectors, parameters, etc.
 

Additional Inherited Members

- Static Protected Attributes inherited from o2::mft::Aligner
static constexpr int mNumberOfTrackParam = 4
 Number of track (= local) parameters (X0, Tx, Y0, Ty)
 
static constexpr int mNDofPerSensor = 4
 translation in global x, y, z, and rotation Rz around global z-axis
 
static o2::itsmft::ChipMappingMFT mChipMapping
 MFT chip <-> ladder, layer, disk, half mapping.
 
static constexpr int mNumberOfSensors = mChipMapping.getNChips()
 Total number of sensors (detection elements) in the MFT.
 
static constexpr int mNumberOfGlobalParam = mNDofPerSensor * mNumberOfSensors
 Number of alignment (= global) parameters.
 
static constexpr int mFixedParId = -1
 
static constexpr int mFreeParId = mFixedParId - 1
 

Detailed Description

Definition at line 44 of file TracksToRecords.h.

Constructor & Destructor Documentation

◆ TracksToRecords()

TracksToRecords::TracksToRecords ( )

construtor

Definition at line 30 of file TracksToRecords.cxx.

◆ ~TracksToRecords()

TracksToRecords::~TracksToRecords ( )
override

destructor

Definition at line 63 of file TracksToRecords.cxx.

Member Function Documentation

◆ ClassDefOverride()

o2::mft::TracksToRecords::ClassDefOverride ( TracksToRecords  ,
 
)
protected

◆ endConstraintsRecWriter()

void TracksToRecords::endConstraintsRecWriter ( )

end the utility used to write constraints records

Definition at line 459 of file TracksToRecords.cxx.

◆ endRecordWriter()

void TracksToRecords::endRecordWriter ( )

end the utility used to write data records and its control tree

Definition at line 436 of file TracksToRecords.cxx.

◆ init()

void TracksToRecords::init ( )
overridevirtual

init Millipede and AlignPointHelper

Implements o2::mft::Aligner.

Definition at line 84 of file TracksToRecords.cxx.

◆ printProcessTrackSummary()

void TracksToRecords::printProcessTrackSummary ( )

print a summary status of what happened in processRecoTracks() or processROFs()

Definition at line 407 of file TracksToRecords.cxx.

◆ processRecoTracks()

void TracksToRecords::processRecoTracks ( )

use valid tracks (and associated clusters) from the workflow to build Mille records

Definition at line 160 of file TracksToRecords.cxx.

◆ processROFs()

void TracksToRecords::processROFs ( TChain *  mfttrackChain,
TChain *  mftclusterChain 
)

use mft tracks and clusters provided by ROOT files accessed via TChain to build Mille records

Definition at line 267 of file TracksToRecords.cxx.

◆ processTimeFrame()

void TracksToRecords::processTimeFrame ( o2::framework::ProcessingContext ctx)

access mft tracks and clusters in the timeframe provided by the workflow

Definition at line 141 of file TracksToRecords.cxx.

◆ resetGlocalDerivative()

bool TracksToRecords::resetGlocalDerivative ( )
protected

reset the array of the Global derivative

Definition at line 513 of file TracksToRecords.cxx.

◆ resetLocalDerivative()

bool TracksToRecords::resetLocalDerivative ( )
protected

reset the array of the Local derivative

Definition at line 504 of file TracksToRecords.cxx.

◆ setBz()

void o2::mft::TracksToRecords::setBz ( const float  bz)
inline

Definition at line 60 of file TracksToRecords.h.

◆ setClusterDictionary()

void o2::mft::TracksToRecords::setClusterDictionary ( const o2::itsmft::TopologyDictionary d)
inline

Definition at line 58 of file TracksToRecords.h.

◆ setGlobalDerivative()

bool TracksToRecords::setGlobalDerivative ( Int_t  index,
Double_t  value 
)
protected

set array of global derivatives

Definition at line 487 of file TracksToRecords.cxx.

◆ setLocalDerivative()

bool TracksToRecords::setLocalDerivative ( Int_t  index,
Double_t  value 
)
protected

set array of local derivatives

Definition at line 470 of file TracksToRecords.cxx.

◆ setLocalEquationX()

bool TracksToRecords::setLocalEquationX ( )
protected

set the first component of the local equation vector for a given alignment point

Definition at line 522 of file TracksToRecords.cxx.

◆ setLocalEquationY()

bool TracksToRecords::setLocalEquationY ( )
protected

set the 2nd component of the local equation vector for a given alignment point

Definition at line 587 of file TracksToRecords.cxx.

◆ setLocalEquationZ()

bool TracksToRecords::setLocalEquationZ ( )
protected

set the last component of the local equation vector for a given alignment point

Definition at line 651 of file TracksToRecords.cxx.

◆ setMinNumberClusterCut()

void o2::mft::TracksToRecords::setMinNumberClusterCut ( const int  value)
inline

Definition at line 61 of file TracksToRecords.h.

◆ setNEntriesAutoSave()

void o2::mft::TracksToRecords::setNEntriesAutoSave ( const int  value)
inline

Definition at line 63 of file TracksToRecords.h.

◆ setRunNumber()

void o2::mft::TracksToRecords::setRunNumber ( const int  value)
inline

Definition at line 59 of file TracksToRecords.h.

◆ setWithConstraintsRecWriter()

void o2::mft::TracksToRecords::setWithConstraintsRecWriter ( const bool  choice)
inline

Definition at line 64 of file TracksToRecords.h.

◆ setWithControl()

void o2::mft::TracksToRecords::setWithControl ( const bool  choice)
inline

Definition at line 62 of file TracksToRecords.h.

◆ startConstraintsRecWriter()

void TracksToRecords::startConstraintsRecWriter ( )

init the utility needed to write constraints records

Definition at line 447 of file TracksToRecords.cxx.

◆ startRecordWriter()

void TracksToRecords::startRecordWriter ( )

init the utility needed to write data records and its control tree

Definition at line 424 of file TracksToRecords.cxx.

Member Data Documentation

◆ mAlignPoint

o2::mft::AlignPointHelper* o2::mft::TracksToRecords::mAlignPoint
protected

Alignment point helper.

Definition at line 104 of file TracksToRecords.h.

◆ mBz

float o2::mft::TracksToRecords::mBz
protected

magnetic field status

Definition at line 92 of file TracksToRecords.h.

◆ mConstraintsRecWriter

o2::fwdalign::MilleRecordWriter* o2::mft::TracksToRecords::mConstraintsRecWriter
protected

utility that handles the writing of the constraints records

Definition at line 110 of file TracksToRecords.h.

◆ mCounterLocalEquationFailed

int o2::mft::TracksToRecords::mCounterLocalEquationFailed
protected

count how many times we failed to set a local equation

Definition at line 96 of file TracksToRecords.h.

◆ mCounterSkippedTracks

int o2::mft::TracksToRecords::mCounterSkippedTracks
protected

count how many tracks did not met the cut on the min. nb of clusters

Definition at line 97 of file TracksToRecords.h.

◆ mCounterUsedTracks

int o2::mft::TracksToRecords::mCounterUsedTracks
protected

count how many tracks were used to make Mille records

Definition at line 98 of file TracksToRecords.h.

◆ mDictionary

const o2::itsmft::TopologyDictionary* o2::mft::TracksToRecords::mDictionary
protected

cluster patterns dictionary

Definition at line 103 of file TracksToRecords.h.

◆ mGlobalDerivatives

std::vector<double> o2::mft::TracksToRecords::mGlobalDerivatives
protected

vector of global derivatives {dDeltaX, dDeltaY, dDeltaRz, dDeltaZ}

Definition at line 99 of file TracksToRecords.h.

◆ mLocalDerivatives

std::vector<double> o2::mft::TracksToRecords::mLocalDerivatives
protected

vector of local derivatives {dX0, dTx, dY0, dTz}

Definition at line 100 of file TracksToRecords.h.

◆ mMFTClusterPatterns

gsl::span<const unsigned char> o2::mft::TracksToRecords::mMFTClusterPatterns
protected

Definition at line 122 of file TracksToRecords.h.

◆ mMFTClusters

gsl::span<const o2::itsmft::CompClusterExt> o2::mft::TracksToRecords::mMFTClusters
protected

Definition at line 120 of file TracksToRecords.h.

◆ mMFTClustersGlobal

std::vector<o2::BaseCluster<double> > o2::mft::TracksToRecords::mMFTClustersGlobal
protected

MFT clusters in global coordinate system.

Definition at line 112 of file TracksToRecords.h.

◆ mMFTClustersLocal

std::vector<o2::BaseCluster<double> > o2::mft::TracksToRecords::mMFTClustersLocal
protected

MFT clusters in local coordinate system.

Definition at line 111 of file TracksToRecords.h.

◆ mMFTClustersROF

gsl::span<const o2::itsmft::ROFRecord> o2::mft::TracksToRecords::mMFTClustersROF
protected

Definition at line 121 of file TracksToRecords.h.

◆ mMFTTrackClusIdx

gsl::span<const int> o2::mft::TracksToRecords::mMFTTrackClusIdx
protected

Definition at line 119 of file TracksToRecords.h.

◆ mMFTTracks

gsl::span<const o2::mft::TrackMFT> o2::mft::TracksToRecords::mMFTTracks
protected

Definition at line 117 of file TracksToRecords.h.

◆ mMFTTracksROF

gsl::span<const o2::itsmft::ROFRecord> o2::mft::TracksToRecords::mMFTTracksROF
protected

Definition at line 118 of file TracksToRecords.h.

◆ mMillepede

o2::fwdalign::MillePede2* o2::mft::TracksToRecords::mMillepede
protected

Millepede2 implementation copied from AliROOT.

Definition at line 113 of file TracksToRecords.h.

◆ mMinNumberClusterCut

int o2::mft::TracksToRecords::mMinNumberClusterCut
protected

Minimum number of clusters in the track to be used for alignment.

Definition at line 101 of file TracksToRecords.h.

◆ mNEntriesAutoSave

long o2::mft::TracksToRecords::mNEntriesAutoSave = 10000
protected

number of entries needed to call AutoSave for the output TTrees

Definition at line 106 of file TracksToRecords.h.

◆ mNumberOfClusterChainROFs

int o2::mft::TracksToRecords::mNumberOfClusterChainROFs
protected

number of ROFs in the cluster chain

Definition at line 94 of file TracksToRecords.h.

◆ mNumberOfTrackChainROFs

int o2::mft::TracksToRecords::mNumberOfTrackChainROFs
protected

number of ROFs in the track chain

Definition at line 95 of file TracksToRecords.h.

◆ mNumberTFs

int o2::mft::TracksToRecords::mNumberTFs
protected

number of timeframes processed

Definition at line 93 of file TracksToRecords.h.

◆ mPattIt

gsl::span<constunsignedchar>::iterator o2::mft::TracksToRecords::mPattIt
protected

Definition at line 123 of file TracksToRecords.h.

◆ mPointControl

o2::mft::AlignPointControl o2::mft::TracksToRecords::mPointControl
protected

AlignPointControl handles the control tree.

Definition at line 107 of file TracksToRecords.h.

◆ mRecordWriter

o2::fwdalign::MilleRecordWriter* o2::mft::TracksToRecords::mRecordWriter
protected

utility that handles the writing of the data records to a ROOT file

Definition at line 108 of file TracksToRecords.h.

◆ mRunNumber

int o2::mft::TracksToRecords::mRunNumber
protected

run number

Definition at line 91 of file TracksToRecords.h.

◆ mWeightRecord

double o2::mft::TracksToRecords::mWeightRecord
protected

the weight given to a single Mille record in Millepede algorithm

Definition at line 102 of file TracksToRecords.h.

◆ mWithConstraintsRecWriter

bool o2::mft::TracksToRecords::mWithConstraintsRecWriter
protected

boolean to be set to true if one wants to also write constaints records

Definition at line 109 of file TracksToRecords.h.

◆ mWithControl

bool o2::mft::TracksToRecords::mWithControl
protected

boolean to set the use of the control tree

Definition at line 105 of file TracksToRecords.h.


The documentation for this class was generated from the following files: