CbmRoot
Loading...
Searching...
No Matches
CbmLitRK4TrackExtrapolator Class Reference

#include <CbmLitRK4TrackExtrapolator.h>

Inheritance diagram for CbmLitRK4TrackExtrapolator:
[legend]
Collaboration diagram for CbmLitRK4TrackExtrapolator:
[legend]

Public Member Functions

 CbmLitRK4TrackExtrapolator (std::shared_ptr< CbmLitField > field)
 
virtual ~CbmLitRK4TrackExtrapolator ()
 
virtual LitStatus Extrapolate (const CbmLitTrackParam *parIn, CbmLitTrackParam *parOut, litfloat zOut, std::vector< litfloat > *F)
 Track parameters extrapolation with calculation of transport matrix.
 
virtual LitStatus Extrapolate (CbmLitTrackParam *par, litfloat zOut, std::vector< litfloat > *F)
 

Protected Member Functions

void RK4Order (const std::vector< litfloat > &xIn, litfloat zIn, std::vector< litfloat > &xOut, litfloat zOut, std::vector< litfloat > &derivs) const
 
litfloat CalcOut (litfloat in, const litfloat k[4]) const
 
void TransportC (const std::vector< litfloat > &cIn, const std::vector< litfloat > &F, std::vector< litfloat > &cOut) const
 

Private Attributes

std::shared_ptr< CbmLitFieldfField
 

Detailed Description

Definition at line 27 of file CbmLitRK4TrackExtrapolator.h.

Constructor & Destructor Documentation

◆ CbmLitRK4TrackExtrapolator()

CbmLitRK4TrackExtrapolator::CbmLitRK4TrackExtrapolator ( std::shared_ptr< CbmLitField field)

◆ ~CbmLitRK4TrackExtrapolator()

CbmLitRK4TrackExtrapolator::~CbmLitRK4TrackExtrapolator ( )
virtual

Definition at line 20 of file CbmLitRK4TrackExtrapolator.cxx.

Member Function Documentation

◆ CalcOut()

litfloat CbmLitRK4TrackExtrapolator::CalcOut ( litfloat  in,
const litfloat  k[4] 
) const
protected

Definition at line 229 of file CbmLitRK4TrackExtrapolator.cxx.

Referenced by RK4Order().

◆ Extrapolate() [1/2]

LitStatus CbmLitRK4TrackExtrapolator::Extrapolate ( CbmLitTrackParam par,
litfloat  zOut,
std::vector< litfloat > *  F 
)
virtual

brief Track parameters extrapolation with calculation of transport matrix.

Parameters
[in,out]parPointer to initial and output track parameters.
[in]zOutZ position to extrapolate to [cm].
[out]FOutput transport matrix. If F == NULL than transport matrix is not calculated.
Returns
Extrapolation status.

Implements CbmLitTrackExtrapolator.

Definition at line 29 of file CbmLitRK4TrackExtrapolator.cxx.

References CbmLitTrackParam::GetCovMatrix(), CbmLitTrackParam::GetStateVector(), CbmLitTrackParam::GetZ(), kLITSUCCESS, RK4Order(), CbmLitTrackParam::SetCovMatrix(), CbmLitTrackParam::SetStateVector(), CbmLitTrackParam::SetZ(), and TransportC().

◆ Extrapolate() [2/2]

LitStatus CbmLitRK4TrackExtrapolator::Extrapolate ( const CbmLitTrackParam parIn,
CbmLitTrackParam parOut,
litfloat  zOut,
std::vector< litfloat > *  F 
)
virtual

Track parameters extrapolation with calculation of transport matrix.

Parameters
[in]parInPointer to initial track parameters.
[out]parOutPointer to output track parameters.
[in]zOutZ position to extrapolate to [cm].
[out]FOutput transport matrix. If F == NULL than transport matrix is not calculated.
Returns
Extrapolation status.

Implements CbmLitTrackExtrapolator.

Definition at line 22 of file CbmLitRK4TrackExtrapolator.cxx.

References Extrapolate().

Referenced by Extrapolate().

◆ RK4Order()

void CbmLitRK4TrackExtrapolator::RK4Order ( const std::vector< litfloat > &  xIn,
litfloat  zIn,
std::vector< litfloat > &  xOut,
litfloat  zOut,
std::vector< litfloat > &  derivs 
) const
protected

Definition at line 52 of file CbmLitRK4TrackExtrapolator.cxx.

References CalcOut(), fField, CbmLitTrackParam::fSpeedOfLight, and x.

Referenced by Extrapolate().

◆ TransportC()

void CbmLitRK4TrackExtrapolator::TransportC ( const std::vector< litfloat > &  cIn,
const std::vector< litfloat > &  F,
std::vector< litfloat > &  cOut 
) const
protected

Definition at line 256 of file CbmLitRK4TrackExtrapolator.cxx.

References MultiplyMatrices(), and TransposeMatrix().

Referenced by Extrapolate().

Member Data Documentation

◆ fField

std::shared_ptr<CbmLitField> CbmLitRK4TrackExtrapolator::fField
private

Definition at line 68 of file CbmLitRK4TrackExtrapolator.h.

Referenced by RK4Order().


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