Skip to content

Commit

Permalink
fix: cross-covariance matrix in FullBilloirVertexFitter (#2771)
Browse files Browse the repository at this point in the history
Fixes incorrect cross-covariance matrix 

Finally resolves #2231 

Note: Var(T) <= 0 is still encountered sometimes but this is because we don't always fit time. I will remove this warning in another PR
  • Loading branch information
felix-russo authored Jan 23, 2024
1 parent 785654b commit 098afd5
Show file tree
Hide file tree
Showing 5 changed files with 1 addition and 3 deletions.
Binary file modified CI/physmon/reference/performance_ivf_orthogonal_hist.root
Binary file not shown.
Binary file modified CI/physmon/reference/performance_ivf_seeded_hist.root
Binary file not shown.
Binary file modified CI/physmon/reference/performance_ivf_truth_estimated_hist.root
Binary file not shown.
Binary file modified CI/physmon/reference/performance_ivf_truth_smeared_hist.root
Binary file not shown.
4 changes: 1 addition & 3 deletions Core/include/Acts/Vertexing/FullBilloirVertexFitter.ipp
Original file line number Diff line number Diff line change
Expand Up @@ -261,9 +261,7 @@ Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit(
transMat(5, 3) = 1.;

// cov(V,P)
// TODO: This is incorrect (see Ref. (3)), but it will not be needed
// anyway once we replace fittedParams with fittedMomentum
ActsMatrix<4, 3> covVP = billoirTrack.B;
ActsMatrix<4, 3> covVP = -covV * billoirTrack.BCinv;

// cov(P,P), 3x3 matrix, see Ref. (3)
ActsSquareMatrix<3> covP =
Expand Down

0 comments on commit 098afd5

Please sign in to comment.