Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • athena athena
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Jira
    • Jira
  • Merge requests 135
    • Merge requests 135
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • Code review
    • Issue
    • Repository
  • Activity
  • Graph
  • Commits
Collapse sidebar
  • atlas
  • athenaathena
  • Merge requests
  • !24240

Closed
Created Jun 17, 2019 by Attila Krasznahorkay@akrasznaMaintainer
  • Report abuse
Report abuse

WIP: xAOD::TrackParticle Covariance Matrix Evolution, 21.2 branch (2019.06.17.)

  • Overview 16
  • Commits 1
  • Changes 8

This is meant as a replacement for !20947 (closed).

Following the discussions with the tracking and reconstruction experts, this is an attempt at implementing a schema evolution for xAOD::TrackParticle. In the new setup the covariance matrix of the defining parameters end up in two separate variables called "definingParametersCovMatrixDiag" and "definingParametersCovMatrixOffDiag". Making it possible to handle the diagonal and off-diagonal elements of the covariance matrix more easily in the I/O system.

One main change in the xAOD::TrackParticle interface is the introduction of the xAOD::TrackParticle::definingParametersCovMatrixFilled() method. This function is meant to return a 5x5 matrix of booleans, describing which elements of the covariance matrix are actually available for a given track particle. To avoid hardcoding knowledge about the internal implementation of xAOD::TrackParticle in "user code". Though in the helper functions provided in xAODTracking I still kept using the accessor to the underlying std::vector<float> variable for efficiency reasons. However in code outside of xAODTracking we should not do that...

Pinging @tstreble and @christos as people who should have a look at the changes already at this point.

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: TrackParticleCovMatrix-21.2-20190611