1 of 2

Track Seeding/Fitting Output in EICrecon

  • EDM4eic#141: feat: add quality field to TrackSeed
    • Already has triplet of hits and track parameters as relations (triplet empty for truth)
    • Added the quality field with output from Acts track seeding
    • Data structure has never been stored in EICrecon output before
    • EICrecon#2306: feat: store both seeds (incl triplets) and seed track parameters

edm4eic::TrackSeed:

Description: "Seed info from the realistic seed finder"

Author: "S. Li, B. Schmookler, J. Osborn"

Members:

- edm4hep::Vector3f perigee // Vector for the perigee (line surface)

- float quality // Seed quality reported by finder

OneToManyRelations:

- edm4eic::TrackerHit hits // Tracker hits triplet for seeding

OneToOneRelations:

- edm4eic::TrackParameters params // Initial track parameters

2 of 2

Track Seeding/Fitting Output in EICrecon

Acts seed quality definition (Acts/Seeding/SeedFilter.ipp):

Starting weight: float weight = -(impact * m_cfg.impactWeightFactor(=1));

Additional terms are added:

  • Compatible seed bonus: weight += m_cfg.compatSeedWeight(=200) for each compatible seed found (up to compatSeedLimit)
  • Seed increment bonus: If the number of compatible seeds exceeds numSeedIncrement, add seedWeightIncrement
  • Z-origin penalty: weight += -(std::abs(zOrigin) * m_cfg.zOriginWeightFactor(=1)) + m_cfg.compatSeedWeight
  • Experiment-specific adjustments: Custom weights can be added via IExperimentCuts::seedWeight()(=0)

Typical values clustered around 0, 200, 400, where ‘better’ seeds have higher values. Background-mixed track seed finding returns many seeds with quality around 0, which need to be evaluated for appropriateness.