diff --git a/README.md b/README.md index cd7af2c27e663812c2a3903a957aba9f23d9cb2e..ca558e140a97513294d71fea0fc8c8e491fa16fa 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,15 @@ # Guide to Tracking Development in Juggler for ATHENA Collaboration +- [Overview](#overview) + * [What this guide is not](#what-this-guide-is-not) + * [What this guide is](#what-this-guide-is) +- [Data Model](#data-model) +- [Repositories and Workflow](#repositories-and-workflow) + * [Repositories](#repositories) + * [Pipelines and Artifacts](#pipelines-and-artifacts) + + [Pipeline](#pipeline) + + [Artifacts](#artifacts) + ## Overview This guide assumes the reader has some basic knowledge of tracking and computing. @@ -95,5 +105,44 @@ Artifacts can be browsed via the web interface, for example, the latest in recon +## Software Toolkit + +### ACTS + +"[Acts](https://acts.readthedocs.io/en/latest/) is an experiment-independent toolkit for (charged) particle track reconstruction in (high energy) physics experiments implemented in modern C++." + +#### The ACTS way of tracking + +First, the geometry has to be constructed. Assuming this is already done, we describe the data processing. + +##### Source Links and Measurements + +``` + Tracker Hit + Geometry --> Measurement + Hit CellID + Surface --> Source Link +``` + +A `SourceLinker` is an algorithm that looks up the surface and maps it to the hit's `cellID`. +Naturally the same algorithm outputs measurements which are also mapped to the hit and contain the position +and sensor size information (via covariance matrix). + + +##### Proto tracks + +Both track finding and fitting will use the information contained in the source links and measurements. +Track finding produces `proto tracks` or groupings of hits. Each proto track is simply a `std::vector<int>` storing the index of the +hits associated with a track seed. + +##### Initial Track parameters and Seeding + +A Kalman filter needs a starting point and those are the `Initial Track Parameters`. These can be determined many different ways. +Conceptually the process of determining these parameters begins with track seeding. + + + +### GenFit2 + +[GenFit](https://github.com/GenFit/GenFit) is a generic track fitting tool built on ROOT and the tgeo library. +