Back to home page

EIC code displayed by LXR

 
 

    


Warning, /acts/README.md is written in an unsupported language. File is not indexed.

0001 # ACTS Common Tracking Software
0002 
0003 or *A Common Tracking Software* if you do not like recursive acronyms
0004 
0005 [![10.5281/zenodo.5141418](https://zenodo.org/badge/DOI/10.5281/zenodo.5141418.svg)](https://doi.org/10.5281/zenodo.5141418)
0006 [![Chat on Mattermost](https://badgen.net/badge/chat/on%20mattermost/cyan)](https://mattermost.web.cern.ch/acts/)
0007 [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=acts-project_acts&metric=coverage)](https://sonarcloud.io/summary/new_code?id=acts-project_acts)
0008 [![Latest release](https://badgen.net/github/release/acts-project/acts)](https://github.com/acts-project/acts/releases)
0009 [![Status](https://badgen.net/github/checks/acts-project/acts/main)](https://github.com/acts-project/acts/actions)
0010 [![Metrics](https://badgen.net/badge/metric/tracker/purple)](https://acts-project.github.io/metrics/)
0011 
0012 ACTS is an experiment-independent toolkit for (charged) particle track
0013 reconstruction in (high energy) physics experiments implemented in modern C++.
0014 
0015 More information can be found in the [ACTS documentation](https://acts.readthedocs.io/).
0016 
0017 ## Quick start
0018 
0019 ACTS is developed in C++ and is build using [CMake](https://cmake.org). Building
0020 the core library requires a C++20 compatible compiler,
0021 [Boost](https://www.boost.org), and [Eigen](https://eigen.tuxfamily.org). The
0022 following commands will clone the repository, configure, and build the core
0023 library
0024 
0025 ```sh
0026 git clone https://github.com/acts-project/acts <source>
0027 cmake -B <build> -S <source>
0028 cmake --build <build>
0029 ```
0030 
0031 For more details, e.g. specific versions and additional dependencies, have a
0032 look at the [getting started guide](docs/getting_started.md). If you find a bug,
0033 have a feature request, or want to contribute to ACTS, have a look at the
0034 [contribution guidelines](CONTRIBUTING.rst).
0035 
0036 ## Versioning and public API
0037 
0038 Release versions follow [semantic versioning](https://semver.org/spec/v2.0.0.html)
0039 to indicate whether a new version contains breaking changes within the public API.
0040 Currently, only a limited part of the visible API is considered the public API
0041 and subject to the semantic versioning rules. The details are outlined in the
0042 [versioning and public API documentation](docs/versioning.rst).
0043 
0044 ## Repository organization
0045 
0046 The repository contains all code of the ACTS projects, not just the core library
0047 that a physics experiment is expected to use as part of its reconstruction code.
0048 All optional components are disabled by default. Please see the
0049 [getting started guide](docs/getting_started.md) on how-to enable them.
0050 
0051 
0052 | *Folder*     | *include path*                              | *Namespace*       | *Python module*          |
0053 | :---         | :---                                        | :---              | :---                     |
0054 | `Core/`      | `#include "Acts/..."`                       | `Acts::`          | `acts`                   |
0055 | `Plugins/`   | `#include "ActsPlugins/PluginName/..."`     | `ActsPlugins::`   | `acts.pluginname`        |
0056 | `Fatras/`    | `#include "ActsFatras/..."`                 | `ActsFatras::`    | `acts.fatras`            |
0057 | `Alignment/` | `#include "ActsAlignment/..."`              | `ActsAlignment::` | `acts.alignment`         |
0058 | `Examples/`  | `#include "ActsExamples/..."`               | `ActsExamples::`  | `acts.examples`          |
0059 | `Python/`    | `#include "ActsPython/..."` (not much used) | `ActsPython::`    |  N/A                     |
0060 | `Tests/`     | `#include "ActsTests/..."` (not much used)  | `Acts::Tests::`   |  N/A                     |
0061 
0062 
0063 Short summary of the modules and directories:
0064 -   `Core/` contains all the core functionality with minimal dependencies and no framework or I/O related code
0065 -   `Plugins/` contains plugins for core functionality that require
0066     additional external packages.
0067 -   `Fatras/` provides fast track simulation tools based on the core
0068     library.
0069 -   `Examples/` contains simulation and reconstruction examples. These are
0070     internal tools for manual full-chain development and tests.
0071 -   `Tests/` contains automated unit tests, integration tests, and
0072     (micro-)benchmarks.
0073 -   `Python/` contains the python bindings for the different modules
0074 -   `thirdparty/` contains external dependencies that are usually not available
0075     through the system package manager.
0076 
0077 ## Authors and license
0078 
0079 Contributors to the ACTS project are listed in the [AUTHORS](AUTHORS) file.
0080 
0081 The ACTS project is published under the terms of the Mozilla Public License, v. 2.0.
0082 A copy of the license can be found in the [LICENSE](LICENSE) file or at
0083 https://mozilla.org/MPL/2.0/ .
0084 
0085 The ACTS project contains copies of the following external packages:
0086 
0087 -   [OpenDataDetector](https://github.com/acts-project/OpenDataDetector)
0088     licensed under the MPLv2 license.