CbmRoot
|
#include <CaTrackExtender.h>
Public Member Functions | |
TrackExtender (const ca::Parameters< fvec > &pars, const fscal mass) | |
Default constructor. | |
~TrackExtender () | |
Destructor. | |
TrackExtender (const TrackExtender &)=default | |
Copy constructor. | |
TrackExtender (TrackExtender &&)=default | |
Move constructor. | |
TrackExtender & | operator= (const TrackExtender &)=delete |
Copy assignment operator. | |
TrackExtender & | operator= (TrackExtender &&)=delete |
Move assignment operator. | |
fscal | ExtendBranch (ca::Branch &t, WindowData &wData) |
Try to extrapolate and find additional hits on other stations. | |
Private Member Functions | |
void | FindMoreHits (ca::Branch &t, TrackParamV &T, const kf::FitDirection direction, const fvec qp0) |
void | FitBranch (const ca::Branch &t, TrackParamV &T, const kf::FitDirection direction, const fvec qp0, const bool initParams=true) |
like BranchFitterFast but more precise | |
void | FitBranchFast (const ca::Branch &t, TrackParamV &T, const kf::FitDirection direction, const fvec qp0, const bool initParams=true) |
Private Attributes | |
const Parameters< fvec > & | fParameters |
Object of Framework parameters class. | |
const cbm::algo::kf::Setup< fvec > & | fSetup |
WindowData * | frWData |
fscal | fDefaultMass {constants::phys::MuonMass} |
mass of the propagated particle [GeV/c2] | |
Class implements a clones merger algorithm for the CA track finder
Definition at line 30 of file CaTrackExtender.h.
cbm::algo::ca::TrackExtender::TrackExtender | ( | const ca::Parameters< fvec > & | pars, |
const fscal | mass ) |
Default constructor.
Definition at line 26 of file CaTrackExtender.cxx.
cbm::algo::ca::TrackExtender::~TrackExtender | ( | ) |
Destructor.
Definition at line 36 of file CaTrackExtender.cxx.
|
default |
Copy constructor.
|
default |
Move constructor.
fscal cbm::algo::ca::TrackExtender::ExtendBranch | ( | ca::Branch & | t, |
WindowData & | wData ) |
Try to extrapolate and find additional hits on other stations.
Find additional hits for existing track both downstream and upstream
Definition at line 313 of file CaTrackExtender.cxx.
References FindMoreHits(), FitBranch(), FitBranchFast(), frWData, cbm::algo::kf::kDownstream, and cbm::algo::kf::kUpstream.
Referenced by cbm::algo::ca::TrackFinderWindow::SelectTracks().
|
private |
Private methods Finds additional hits for already found track in the given direction
t | - track with hits |
T | - track params |
dir | - 0 - forward, 1 - backward |
qp0 | - momentum value to linearize the extrapolation |
Definition at line 152 of file CaTrackExtender.cxx.
References cbm::algo::ca::_fvecalignment, cbm::algo::ca::Hit::BackKey(), cbm::algo::kf::TrackParamBase< T >::C00(), cbm::algo::kf::TrackParamBase< T >::C11(), cbm::algo::kf::TrackParamBase< T >::C55(), cbm::algo::ca::WindowData::CurrentIteration(), cbm::algo::ca::GridArea::DoLoopOverEntireGrid(), cbm::algo::kf::TrackKalmanFilter< DataT >::EnergyLossCorrection(), cbm::algo::ca::Vector< T >::enlarge(), cbm::algo::kf::TrackKalmanFilter< DataT >::Extrapolate(), cbm::algo::kf::TrackKalmanFilter< DataT >::ExtrapolateLineXdX2(), cbm::algo::kf::TrackKalmanFilter< DataT >::ExtrapolateLineYdY2(), cbm::algo::kf::utils::fabs(), fDefaultMass, cbm::algo::ca::Station< DataT >::fieldSlice, cbm::algo::ca::utils::FilterHit(), fParameters, cbm::algo::ca::Hit::FrontKey(), frWData, fSetup, cbm::algo::ca::Station< DataT >::fZ, cbm::algo::kf::FieldSlice< T >::GetFieldValue(), cbm::algo::ca::Iteration::GetFirstStationIndex(), cbm::algo::ca::Iteration::GetMaxDZ(), cbm::algo::ca::GridArea::GetNextObjectId(), cbm::algo::ca::Iteration::GetPickGather(), cbm::algo::ca::WindowData::Grid(), cbm::algo::ca::WindowData::Hit(), cbm::algo::ca::Branch::Hits(), cbm::algo::ca::WindowData::IsHitKeyUsed(), cbm::algo::ca::WindowData::IsHitSuppressed(), cbm::algo::kf::kUpstream, cbm::algo::kf::TrackKalmanFilter< DataT >::MultipleScattering(), cbm::algo::kf::TrackParamBase< T >::NdfTime(), cbm::algo::ca::Branch::NofHits(), cbm::algo::kf::fmask::One(), cbm::algo::ca::Hit::RangeT(), cbm::algo::ca::Branch::RefHits(), cbm::algo::ca::Vector< T >::reserve(), cbm::algo::kf::FieldValue< T >::Set(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetMask(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetParticleMass(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetQp0(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetTrack(), sqrt(), cbm::algo::ca::Hit::Station(), cbm::algo::ca::Hit::T(), cbm::algo::kf::TrackParamBase< T >::Time(), cbm::algo::ca::Station< DataT >::timeInfo, cbm::algo::kf::TrackKalmanFilter< DataT >::Tr(), cbm::algo::kf::TrackParamBase< T >::Tx(), cbm::algo::kf::TrackParamBase< T >::Ty(), cbm::algo::ca::Hit::X(), cbm::algo::kf::TrackParamBase< T >::X(), x, cbm::algo::ca::Hit::Y(), cbm::algo::kf::TrackParamBase< T >::Y(), y, and cbm::algo::ca::Hit::Z().
Referenced by ExtendBranch().
|
private |
like BranchFitterFast but more precise
Fits the branch. Does few passes over the hits.
t | - track branch with hits |
T | - track parameters |
dir | - false - forward, true - backward |
qp0 | - momentum value to linearize the extrapolation |
initParams | - should params be ititialized. 1 - yes. |
Definition at line 141 of file CaTrackExtender.cxx.
References FitBranchFast().
Referenced by ExtendBranch().
|
private |
Fits the branch. Does only one pass over the hits.
t | - track branch with hits |
T | - track parameters |
dir | - false - forward, true - backward |
qp0 | - momentum value to linearize the extrapolation |
initParams | - should params be ititialized. 1 - yes. |
Definition at line 41 of file CaTrackExtender.cxx.
References cbm::algo::ca::_fvecalignment, CBMCA_DEBUG_ASSERT, cbm::algo::ca::Hit::dT2(), cbm::algo::ca::Hit::dX2(), cbm::algo::ca::Hit::dXY(), cbm::algo::ca::Hit::dY2(), cbm::algo::kf::TrackKalmanFilter< DataT >::EnergyLossCorrection(), cbm::algo::kf::TrackKalmanFilter< DataT >::Extrapolate(), fDefaultMass, cbm::algo::ca::Station< DataT >::fieldSlice, cbm::algo::ca::utils::FilterHit(), fParameters, frWData, fSetup, cbm::algo::ca::Station< DataT >::fZ, cbm::algo::kf::FieldSlice< T >::GetFieldValue(), cbm::algo::ca::WindowData::Hit(), cbm::algo::ca::Branch::Hits(), hits, cbm::algo::kf::kUpstream, cbm::algo::kf::TrackKalmanFilter< DataT >::MultipleScattering(), cbm::algo::ca::Branch::NofHits(), cbm::algo::kf::fmask::One(), cbm::algo::kf::FieldValue< T >::Set(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetMask(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetParticleMass(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetQp0(), cbm::algo::kf::TrackKalmanFilter< DataT >::SetTrack(), cbm::algo::ca::Hit::Station(), cbm::algo::ca::Hit::T(), cbm::algo::ca::Station< DataT >::timeInfo, cbm::algo::kf::TrackKalmanFilter< DataT >::Tr(), cbm::algo::ca::Hit::X(), cbm::algo::ca::Hit::Y(), and cbm::algo::ca::Hit::Z().
Referenced by ExtendBranch(), and FitBranch().
|
delete |
Copy assignment operator.
|
delete |
Move assignment operator.
|
private |
mass of the propagated particle [GeV/c2]
Definition at line 93 of file CaTrackExtender.h.
Referenced by FindMoreHits(), and FitBranchFast().
|
private |
Object of Framework parameters class.
Data members
Definition at line 90 of file CaTrackExtender.h.
Referenced by FindMoreHits(), and FitBranchFast().
|
private |
Definition at line 92 of file CaTrackExtender.h.
Referenced by ExtendBranch(), FindMoreHits(), and FitBranchFast().
|
private |
Definition at line 91 of file CaTrackExtender.h.
Referenced by FindMoreHits(), and FitBranchFast().