Skip to content
Snippets Groups Projects

Ca: bugfix with nans in the track fit

Merged Sergey Gorbunov requested to merge se.gorbunov/cbmroot:dev into master
2 files
+ 40
27
Compare changes
  • Side-by-side
  • Inline

Files

+ 12
7
@@ -175,18 +175,23 @@ namespace cbm::algo::ca
///------------------------------
/// Data members
DataT fX {constants::Undef<DataT>}; ///< x coordinate of the measurement
DataT fY {constants::Undef<DataT>}; ///< y coordinate of the measurement
DataT fDx2 {constants::Undef<DataT>}; ///< rms^2 of the x coordinate measurement
DataT fDy2 {constants::Undef<DataT>}; ///< rms^2 of the y coordinate measurement
DataT fDxy {constants::Undef<DataT>}; ///< covariance of the x and y coordinate measurements
// Initializing parameters with NANs spoils the track fit where
// the masked-out SIMD entries are suppressed by a multication by 0.
// Therefore, we initialize the data members here with finite numbers.
// For the numerical safety, with some reasonable numbers.
DataT fX {0.}; ///< x coordinate of the measurement
DataT fY {0.}; ///< y coordinate of the measurement
DataT fDx2 {1.}; ///< rms^2 of the x coordinate measurement
DataT fDy2 {1.}; ///< rms^2 of the y coordinate measurement
DataT fDxy {0.}; ///< covariance of the x and y coordinate measurements
/// number of degrees of freedom (used for chi2 calculation)
/// if ndf == 1, the measurement is used in the chi2 calculation
/// if ndf == 0, the measurement is not used in the chi2 calculation
DataT fNdfX = constants::Undef<DataT>; ///< ndf for the x coordinate measurement
DataT fNdfY = constants::Undef<DataT>; ///< ndf for the y coordinate measurement
DataT fNdfX = 0.; ///< ndf for the x coordinate measurement
DataT fNdfY = 0.; ///< ndf for the y coordinate measurement
} _fvecalignment;
Loading