CbmRoot
|
#include <CbmKF.h>
Public Member Functions | |
CbmKF (const char *name="KF", Int_t iVerbose=1) | |
~CbmKF () | |
void | SetParContainers () |
InitStatus | ReInit () |
InitStatus | Init () |
Int_t | GetMaterialIndex (Int_t uid) |
Int_t | Propagate (Double_t *T, Double_t *C, Double_t z_out, Double_t QP0) |
Int_t | PassMaterial (CbmKFTrackInterface &track, Double_t &QP0, Int_t ifst, Int_t ilst) |
Int_t | PassMaterialBetween (CbmKFTrackInterface &track, Double_t &QP0, Int_t ifst, Int_t ilst) |
Int_t | PassMaterialBetween (CbmKFTrackInterface &track, Double_t &QP0, CbmKFHit *fst, CbmKFHit *lst) |
FairField * | GetMagneticField () |
Int_t | GetMethod () |
int | GetNMvdStations () const |
const std::array< float, 3 > | GetTargetPosition () |
ClassDef (CbmKF, 1) | |
Static Public Member Functions | |
static CbmKF * | Instance () |
Public Attributes | |
std::vector< CbmKFMaterial * > | vMaterial |
std::vector< CbmKFTube > | vMvdMaterial |
std::vector< CbmKFTube > | vStsMaterial |
std::vector< CbmKFTube > | vMuchMaterial |
std::vector< CbmKFTube > | vMuchDetectors |
std::vector< CbmKFTube > | vRichMaterial |
std::vector< CbmKFWall > | vTrdMaterial |
std::vector< CbmKFTube > | vTargets |
std::vector< CbmKFCone > | vPipe |
std::vector< CbmKFTube > | vPassiveTube |
std::vector< CbmKFWall > | vPassiveWall |
std::vector< CbmKFBox > | vPassiveBox |
std::map< Int_t, Int_t > | MvdStationIDMap |
std::map< Int_t, Int_t > | StsStationIDMap |
std::map< Int_t, Int_t > | TrdStationIDMap |
std::map< Int_t, Int_t > | MuchMCID2StationMap |
std::map< Int_t, Int_t > | MuchStation2MCIDMap |
Private Member Functions | |
Int_t | ReadTube (CbmKFTube &tube, FairGeoNode *node) |
CbmKFMaterial * | ReadPassive (FairGeoNode *node) |
void | GetTargetInfo () |
void | FindTargetNode (TString &targetPath, TGeoNode *&targetNode) |
CbmKF (const CbmKF &) | |
void | operator= (const CbmKF &) |
Private Attributes | |
FairField * | fMagneticField |
Int_t | fMethod |
std::map< Int_t, Int_t > | fMaterialID2IndexMap |
std::array< float, 3 > | fTargetXYZ |
Static Private Attributes | |
static CbmKF * | fInstance |
CbmKF::CbmKF | ( | const char * | name = "KF", |
Int_t | iVerbose = 1 ) |
|
private |
CbmKF::ClassDef | ( | CbmKF | , |
1 | ) |
|
private |
Definition at line 337 of file CbmKF.cxx.
References FindTargetNode().
Referenced by FindTargetNode(), and GetTargetInfo().
|
inline |
Int_t CbmKF::GetMaterialIndex | ( | Int_t | uid | ) |
Definition at line 362 of file CbmKF.cxx.
References fMaterialID2IndexMap.
Referenced by CbmKFStsHit::Create(), and CbmKFStsHit::Create().
|
inline |
Definition at line 88 of file CbmKF.h.
References fMethod.
Referenced by CbmKFTrackInterface::Fit(), and CbmKFTrackInterface::Smooth().
|
inline |
Definition at line 90 of file CbmKF.h.
References Instance(), and vMvdMaterial.
|
private |
Definition at line 271 of file CbmKF.cxx.
References FindTargetNode(), fTargetXYZ, CbmKFMaterial::ID, shape, and vTargets.
Referenced by Init().
const std::array< float, 3 > CbmKF::GetTargetPosition | ( | ) |
Definition at line 335 of file CbmKF.cxx.
References fTargetXYZ.
InitStatus CbmKF::Init | ( | ) |
Definition at line 96 of file CbmKF.cxx.
References CbmKFMaterial::comparePDown(), CbmKFTube::dz, CbmKFMaterial::F, fMagneticField, fMaterialID2IndexMap, GetTargetInfo(), CbmKFMaterial::ID, ID, CbmDigiManager::Init(), CbmDigiManager::Instance(), CbmMvdTrackingInterface::Instance(), CbmStsTrackingInterface::Instance(), CbmTrackingDetectorInterfaceInit::Instance(), CbmDigiManager::IsPresent(), kMvd, MuchMCID2StationMap, MuchStation2MCIDMap, MvdStationIDMap, CbmKFTube::R, CbmKFTube::r, CbmKFMaterial::RadLength, CbmKFTube::RR, CbmKFTube::rr, sqrt(), StsStationIDMap, TrdStationIDMap, vMaterial, vMuchDetectors, vMuchMaterial, vMvdMaterial, vPassiveBox, vPassiveTube, vPassiveWall, vPipe, vRichMaterial, vStsMaterial, vTargets, vTrdMaterial, CbmKFTube::z, CbmKFMaterial::ZReference, and CbmKFMaterial::ZThickness.
Referenced by ReInit().
|
inlinestatic |
Definition at line 40 of file CbmKF.h.
References fInstance.
Referenced by CbmKFStsHit::Create(), CbmKFStsHit::Create(), CbmKFTrackFitQa::Exec(), CbmKFTrackInterface::Extrapolate(), CbmKFPrimaryVertexFinder::Fit(), CbmKFTrackInterface::Fit(), CbmKFTrErrMCPoints::GetNConsHitStations(), CbmKFTrErrMCPoints::GetNConsMCStations(), CbmKFTrErrMCPoints::GetNHitStations(), CbmKFTrErrMCPoints::GetNMaxMCPointsOnStation(), GetNMvdStations(), CbmKFParticleFinder::Init(), CbmKFTrackFitQa::Init(), CbmStsKFTrackFitter::Init(), CbmKFCone::Pass(), CbmKFMaterial::Pass(), CbmKFTrackInterface::Propagate(), and CbmKFTrackInterface::Smooth().
|
private |
Int_t CbmKF::PassMaterial | ( | CbmKFTrackInterface & | track, |
Double_t & | QP0, | ||
Int_t | ifst, | ||
Int_t | ilst ) |
Int_t CbmKF::PassMaterialBetween | ( | CbmKFTrackInterface & | track, |
Double_t & | QP0, | ||
CbmKFHit * | fst, | ||
CbmKFHit * | lst ) |
Definition at line 734 of file CbmKF.cxx.
References CbmKFHit::MaterialIndex, and PassMaterialBetween().
Int_t CbmKF::PassMaterialBetween | ( | CbmKFTrackInterface & | track, |
Double_t & | QP0, | ||
Int_t | ifst, | ||
Int_t | ilst ) |
Definition at line 723 of file CbmKF.cxx.
References vMaterial.
Referenced by PassMaterialBetween().
Int_t CbmKF::Propagate | ( | Double_t * | T, |
Double_t * | C, | ||
Double_t | z_out, | ||
Double_t | QP0 ) |
Propagation of (T, C) to z_out without material, using linearisation at qp0
Definition at line 639 of file CbmKF.cxx.
References CbmKFFieldMath::ExtrapolateALight(), CbmKFFieldMath::ExtrapolateLine(), CbmKFFieldMath::ExtrapolateRK4(), fMagneticField, and fMethod.
Referenced by CbmKFCone::Pass(), CbmKFMaterial::Pass(), CbmKFTrackInterface::Propagate(), and CbmKFTrackInterface::Smooth().
|
private |
Definition at line 504 of file CbmKF.cxx.
References ID, v, vPassiveBox, and vPassiveTube.
|
private |
Definition at line 372 of file CbmKF.cxx.
References CbmKFTube::dz, CbmKFMaterial::F, CbmKFMaterial::Fe, CbmKFMaterial::ID, CbmKFTube::R, CbmKFTube::r, CbmKFMaterial::RadLength, CbmKFTube::RR, CbmKFTube::rr, CbmKFTube::x, CbmKFTube::y, CbmKFTube::z, CbmKFMaterial::ZReference, and CbmKFMaterial::ZThickness.
|
staticprivate |
Definition at line 95 of file CbmKF.h.
Referenced by Instance(), and ~CbmKF().
|
private |
Definition at line 97 of file CbmKF.h.
Referenced by GetMagneticField(), Init(), and Propagate().
|
private |
Definition at line 105 of file CbmKF.h.
Referenced by GetMaterialIndex(), and Init().
|
private |
Definition at line 100 of file CbmKF.h.
Referenced by GetMethod(), and Propagate().
|
private |
Definition at line 114 of file CbmKF.h.
Referenced by GetTargetInfo(), and GetTargetPosition().
std::map<Int_t, Int_t> CbmKF::MuchMCID2StationMap |
std::map<Int_t, Int_t> CbmKF::MuchStation2MCIDMap |
std::map<Int_t, Int_t> CbmKF::MvdStationIDMap |
std::map<Int_t, Int_t> CbmKF::StsStationIDMap |
std::map<Int_t, Int_t> CbmKF::TrdStationIDMap |
std::vector<CbmKFMaterial*> CbmKF::vMaterial |
Definition at line 63 of file CbmKF.h.
Referenced by CbmKFStsHit::Create(), CbmKFStsHit::Create(), CbmKFTrackInterface::Extrapolate(), CbmKFTrackInterface::Fit(), Init(), PassMaterial(), PassMaterialBetween(), and CbmKFTrackInterface::Smooth().
std::vector<CbmKFTube> CbmKF::vMuchDetectors |
std::vector<CbmKFTube> CbmKF::vMuchMaterial |
std::vector<CbmKFTube> CbmKF::vMvdMaterial |
Definition at line 65 of file CbmKF.h.
Referenced by GetNMvdStations(), and Init().
std::vector<CbmKFBox> CbmKF::vPassiveBox |
Definition at line 76 of file CbmKF.h.
Referenced by Init(), and ReadPassive().
std::vector<CbmKFTube> CbmKF::vPassiveTube |
Definition at line 74 of file CbmKF.h.
Referenced by Init(), and ReadPassive().
std::vector<CbmKFWall> CbmKF::vPassiveWall |
std::vector<CbmKFTube> CbmKF::vRichMaterial |
std::vector<CbmKFTube> CbmKF::vStsMaterial |
std::vector<CbmKFTube> CbmKF::vTargets |
Definition at line 71 of file CbmKF.h.
Referenced by CbmKFPrimaryVertexFinder::Fit(), GetTargetInfo(), Init(), and CbmKFParticleFinder::Init().
std::vector<CbmKFWall> CbmKF::vTrdMaterial |