|
CbmRoot
|
Namespaces | |
| namespace | math |
| namespace | simd |
Classes | |
| struct | EnumClassHash |
| Hash for unordered_map with enum class keys. More... | |
| class | VecCopy |
| Copies all/one SIMD entries from one class to the other class. More... | |
| class | VecCopySpec |
| class | VecCopySpec< TdataA, TdataB, false, false > |
| class | VecCopySpec< TdataA, TdataB, false, true > |
| class | VecCopySpec< TdataA, TdataB, true, false > |
| class | VecCopySpec< TdataA, TdataB, true, true > |
Typedefs | |
| template<typename T> | |
| using | scaltype = typename std::conditional<std::is_same<T, fvec>::value, fscal, T>::type |
| template<typename T> | |
| using | masktype = typename std::conditional<std::is_same<T, fvec>::value, fmask, bool>::type |
Functions | |
| template<typename DataT> | |
| void | PrintSIMDmsg (std::stringstream &msg, DataT &v) |
| Stingstream output operation for simd data. | |
| template<> | |
| void | CheckSimdVectorEquality (fvec v, const char *name) |
| Checks, if a SIMD vector horizontally equal TODO: Find this method in the VC! | |
| fvec | iif (const fmask &m, const fvec &t, const fvec &f) |
| fvec | fabs (const fvec &v) |
| template<typename T> | |
| T | iif (bool b, T t, T f) |
| template<typename T> | |
| T | fabs (const T &v) |
| template<typename T> | |
| bool | isFull (const T &m) |
| template<typename T> | |
| T | max (const T &a, const T &b) |
| bool | IsLikely (bool b) |
| tell the CPU that the bool condition is likely to be true | |
| bool | IsUnlikely (bool b) |
| template<typename T> | |
| bool | IsUndefined (const T &val) |
| Checks whether a variable of a particular type defined. | |
| template<typename T> | |
| bool | IsFinite (const T &val) |
| Checks whether a variable of a particular type is finite. | |
| template<typename DataT> | |
| void | CheckSimdVectorEquality (DataT, const char *) |
| Checks, if a SIMD vector horizontally equal. | |
| template<> | |
| void | CheckSimdVectorEquality (fvec v, const char *name) |
| Checks, if a SIMD vector horizontally equal. | |
Namespace contains compile-time constants definition for the CA tracking algorithm
| using cbm::algo::kf::utils::masktype = typename std::conditional<std::is_same<T, fvec>::value, fmask, bool>::type |
| using cbm::algo::kf::utils::scaltype = typename std::conditional<std::is_same<T, fvec>::value, fscal, T>::type |
|
inline |
| void cbm::algo::kf::utils::CheckSimdVectorEquality | ( | fvec | v, |
| const char * | name ) |
Checks, if a SIMD vector horizontally equal TODO: Find this method in the VC!
Checks, if a SIMD vector horizontally equal.
Definition at line 29 of file KfUtils.cxx.
References PrintSIMDmsg(), cbm::algo::kf::fvec::size(), and v.
Referenced by cbm::algo::kf::FieldSlice< T >::CheckConsistency(), and cbm::algo::kf::FieldValue< T >::CheckConsistency().
| void cbm::algo::kf::utils::CheckSimdVectorEquality | ( | fvec | v, |
| const char * | name ) |
Checks, if a SIMD vector horizontally equal.
Checks, if a SIMD vector horizontally equal.
Definition at line 29 of file KfUtils.cxx.
References PrintSIMDmsg(), cbm::algo::kf::fvec::size(), and v.
Referenced by cbm::algo::kf::FieldSlice< T >::CheckConsistency(), and cbm::algo::kf::FieldValue< T >::CheckConsistency().
Definition at line 30 of file KfUtils.h.
References v.
Referenced by cbm::algo::kf::utils::math::CholeskyFactorization(), cbm::algo::ca::TripletConstructor::CollectHits(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::EnergyLossCorrection(), cbm::algo::ca::TrackExtender::FindMoreHits(), CbmL1PFFitter::GetChiToVertex(), cbm::algo::kf::TrackParamBase< T >::GetP(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::GuessTrack(), and cbm::algo::ca::CloneMerger::InvertCholesky().
|
inline |
|
inline |
Definition at line 29 of file KfUtils.h.
Referenced by cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::ApproximateBetheBloch(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::ApproximateBetheBloch(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::EnergyLossCorrection(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::EnergyLossCorrection(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::Extrapolate(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::ExtrapolateInOneStep(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::ExtrapolateNoField(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::Filter1d(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::FilterTime(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::FilterVi(), cbm::algo::kf::TrackParamBase< T >::GetCharge(), cbm::algo::kf::TrackParamBase< T >::GetP(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::GuessTrack(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::MeasureVelocityWithQp(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::MultipleScattering(), cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::MultipleScatteringInThickMaterial(), and cbm::algo::kf::FieldValue< T >::SetSimdEntries().
|
inline |
Checks whether a variable of a particular type is finite.
| val | Value to check |
Definition at line 100 of file KfUtils.h.
References cbm::algo::kf::defs::Undef.
Referenced by cbm::algo::kf::MatrixSym< T, N >::IsFinite(), cbm::algo::kf::MeasurementTime< DataT >::IsFinite(), cbm::algo::kf::MeasurementU< DataT >::IsFinite(), cbm::algo::kf::MeasurementXy< DataT >::IsFinite(), cbm::algo::kf::TrackParamBase< T >::IsFinite(), and cbm::algo::kf::Vertex< T >::IsFinite().
|
inline |
Definition at line 45 of file KfUtils.h.
Referenced by cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::Extrapolate().
|
inline |
|
inline |
Checks whether a variable of a particular type defined.
| val | Value to be checked |
Definition at line 78 of file KfUtils.h.
References isnan(), and cbm::algo::kf::defs::Undef.
Referenced by cbm::algo::kf::MaterialMap::IsUndefined(), cbm::algo::kf::MeasurementTime< DataT >::IsUndefined(), cbm::algo::kf::MeasurementU< DataT >::IsUndefined(), and cbm::algo::kf::MeasurementXy< DataT >::IsUndefined().
|
inline |
Definition at line 72 of file KfUtils.h.
Referenced by CbmL1RichENNRingFinderParallel::ENNRingFinder().
|
inline |
Definition at line 56 of file KfUtils.h.
Referenced by cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::EnergyLossCorrection(), and cbm::algo::kf::TrackKalmanFilter< DataT, Settings >::EnergyLossCorrection().
| void cbm::algo::kf::utils::PrintSIMDmsg | ( | std::stringstream & | msg, |
| DataT & | v ) |
Stingstream output operation for simd data.
Definition at line 13 of file KfUtils.cxx.
References v.
Referenced by CheckSimdVectorEquality().