ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::Experimental Namespace Reference

Contains code that is not considered stable yet and might change. More...

Namespaces

namespace  CombinatorialSeedSolver
namespace  Gx2fConstants

Classes

class  Blueprint
 This class is the top-level entry point to build a tracking geometry using the blueprint building mechanism. More...
class  BlueprintNode
 Base class for all nodes in the blueprint tree. More...
struct  BlueprintOptions
class  CompositeSpacePointLineFitter
 Generic Implementation to fit a straight line to set of composite space point measurements. More...
class  CompositeSpacePointLineSeeder
 Initial line parameters from a pattern recognition like the Hough transform are often not suitable for a line fit as the resolution of the hough bins usually exceeds the size of the straws. More...
class  ContainerBlueprintNode
 A blueprint node that can contain multiple child volumes. More...
class  CuboidContainerBlueprintNode
class  CylinderContainerBlueprintNode
class  CylindricalSpacePointKDTree
 A cylindrical space point KD-tree used for seeding in a cylindrical detector geometry. More...
class  CylindricalSpacePointKDTreeBuilder
class  Efficiency
 Multi-dimensional efficiency histogram using boost::histogram. More...
struct  GbtsConnection
class  GbtsConnector
class  GbtsDataStorage
class  GbtsEdge
struct  GbtsEdgeState
class  GbtsEtaBin
class  GbtsGeometry
class  GbtsLayer
class  GbtsNode
class  GbtsTrackingFilter
class  GeometryIdentifierBlueprintNode
 Blueprint node for configuring and applying geometry identifiers to volumes. More...
class  Gx2Fitter
 Global Chi Square fitter (GX2F) implementation. More...
struct  Gx2FitterExtensions
 Extension struct which holds delegates to customise the GX2F behaviour. More...
struct  Gx2FitterOptions
 Combined options for the Global-Chi-Square fitter. More...
struct  Gx2FitterResult
struct  Gx2fSystem
 A container to manage all properties of a gx2f system. More...
class  Histogram
 Multi-dimensional histogram wrapper using boost::histogram for data collection. More...
class  LayerBlueprintNode
 The layer node is essentially an auto-sizing wrapper around a set of surfaces. More...
class  MaterialDesignatorBlueprintNode
 This node type registers material proxies into its child volume during the blueprint construction. More...
class  MultiLayerNavigationPolicy
 A navigation policy that uses grid based navigation for indexed surfaces Navigate through a multilayer structure by creating an artificial path on the grid. More...
class  MultiWireVolumeBuilder
 A class to build multiwire tracking volumes (e.g wire chambers). More...
class  ProfileHistogram
 Multi-dimensional profile histogram using boost::histogram. More...
class  RoiDescriptor
struct  ScatteringProperties
 A container to store scattering properties for each material surface. More...
class  SeedFinderGbts
struct  SeedFinderGbtsConfig
class  StaticBlueprintNode
 The static blueprint node wraps a single already-constructred TrackingVolume. More...
class  TrigInDetSiLayer

Concepts

concept  CompositeSpacePoint
 Concept definition of the station space points.
concept  CompositeSpacePointCalibrator
 Interface concept for a CompositeSpacePointCalibrator.
concept  CompositeSpacePointContainer
 A station space point container is any std::container over space points.
concept  CompositeSpacePointFastCalibrator
 Interface concept to define the straw measurement calibrator used by the FastStrawLineFitter.
concept  CompositeSpacePointPtr
 Define the Space Point pointer concept as an ordinary / smart pointer over space points.

Typedefs

using AxisVariant
 Boost axis variant supporting variable, regular, and log-scale axes with metadata NOTE: It seems not to be possible to combine compile-time fixed number of axes with boost::histogram::axis::variant.
using BoostHist
 Underlying Boost type for histograms.
using BoostLogAxis
using BoostProfileHist
 Underlying Boost type for ProfileHistogram.
using BoostRegularAxis
using BoostVariableAxis = boost::histogram::axis::variable<double, std::string>
using Efficiency1 = Efficiency<1>
 Type aliases for common dimensions.
using Efficiency2 = Efficiency<2>
using GbtsMLLookupTable = std::vector<std::array<float, 5>>
using Histogram1 = Histogram<1>
 Type aliases for common dimensions.
using Histogram2 = Histogram<2>
using ProfileHistogram1 = ProfileHistogram<1>
 Type aliases for common dimensions.
using SPContainerComponentsType

Enumerations

enum class  GlobalChiSquareFitterError { GlobalChiSquareFitterError::AIsNotInvertible = 1 , GlobalChiSquareFitterError::DidNotConverge = 2 , GlobalChiSquareFitterError::NotEnoughMeasurements = 3 , GlobalChiSquareFitterError::UpdatePushedToNewVolume = 4 }

Functions

template<typename track_state_t>
void addMaterialToGx2fSums (Gx2fSystem &extendedSystem, const std::size_t nMaterialsHandled, const std::unordered_map< GeometryIdentifier, ScatteringProperties > &scatteringMap, const track_state_t &trackState, const Logger &logger)
 Process material and fill the aMatrix and bVector.
template<std::size_t kMeasDim, typename track_state_t>
void addMeasurementToGx2fSums (Gx2fSystem &extendedSystem, const std::vector< BoundMatrix > &jacobianFromStart, const track_state_t &trackState, const Logger &logger)
 Process measurements and fill the aMatrix and bVector.
void addMeasurementToGx2fSumsBackend (Gx2fSystem &extendedSystem, const std::vector< BoundMatrix > &jacobianFromStart, const Eigen::MatrixXd &covarianceMeasurement, const BoundVector &predicted, const Eigen::VectorXd &measurement, const Eigen::MatrixXd &projector, const Logger &logger)
 Adds a measurement to the GX2F equation system in a modular backend function.
Eigen::VectorXd computeGx2fDeltaParams (const Gx2fSystem &extendedSystem)
 Solve the gx2f system to get the delta parameters for the update.
template<TrackProxyConcept track_proxy_t>
std::size_t countMaterialStates (const track_proxy_t track, const std::unordered_map< GeometryIdentifier, ScatteringProperties > &scatteringMap, const Logger &logger)
 Count the valid material states in a track for scattering calculations.
std::vector< double > extractBinEdges (const AxisVariant &axis)
 Extract bin edges from an AxisVariant.
template<TrackProxyConcept track_proxy_t>
void fillGx2fSystem (const track_proxy_t track, Gx2fSystem &extendedSystem, const bool multipleScattering, const std::unordered_map< GeometryIdentifier, ScatteringProperties > &scatteringMap, std::vector< GeometryIdentifier > &geoIdVector, const Logger &logger)
 Fill the GX2F system with data from a track.
std::error_code make_error_code (Acts::Experimental::GlobalChiSquareFitterError e)
Histogram1 projectionX (const Histogram2 &hist2d)
 Project a 2D histogram onto the X axis (axis 0).
Histogram1 projectionY (const Histogram2 &hist2d)
 Project a 2D histogram onto the Y axis (axis 1).
void updateGx2fCovarianceParams (BoundMatrix &fullCovariancePredicted, Gx2fSystem &extendedSystem)
 Calculate and update the covariance of the fitted parameters.
void updateGx2fParams (BoundTrackParameters &params, const Eigen::VectorXd &deltaParamsExtended, const std::size_t nMaterialSurfaces, std::unordered_map< GeometryIdentifier, ScatteringProperties > &scatteringMap, const std::vector< GeometryIdentifier > &geoIdVector)
 Update parameters (and scattering angles if applicable).
void to_json (nlohmann::json &j, const DoubletSeedFinder::Config &config)
 Convert DoubletSeedFinder::Config to JSON.
void to_json (nlohmann::json &j, const DoubletSeedFinder::DerivedConfig &config)
 Convert DoubletSeedFinder::DerivedConfig to JSON.
void to_json (nlohmann::json &j, const TripletSeedFinder::Config &config)
 Convert TripletSeedFinder::Config to JSON.
void to_json (nlohmann::json &j, const TripletSeedFinder::DerivedConfig &config)
 Convert TripletSeedFinder::DerivedConfig to JSON.
void to_json (nlohmann::json &j, const BroadTripletSeedFilter::Config &config)
 Convert BroadTripletSeedFilter::Config to JSON.
void to_json (nlohmann::json &j, const CylindricalSpacePointGrid2::Config &config)
 Convert CylindricalSpacePointGrid2::Config to JSON.
void from_json (const nlohmann::json &j, DoubletSeedFinder::Config &config)
 Convert JSON to DoubletSeedFinder::Config.
void from_json (const nlohmann::json &j, DoubletSeedFinder::DerivedConfig &config)
 Convert JSON to DoubletSeedFinder::DerivedConfig.
void from_json (const nlohmann::json &j, TripletSeedFinder::Config &config)
 Convert JSON to TripletSeedFinder::Config.
void from_json (const nlohmann::json &j, TripletSeedFinder::DerivedConfig &config)
 Convert JSON to TripletSeedFinder::DerivedConfig.
void from_json (const nlohmann::json &j, BroadTripletSeedFilter::Config &config)
 Convert JSON to BroadTripletSeedFilter::Config.
void from_json (const nlohmann::json &j, CylindricalSpacePointGrid2::Config &config)
 Convert JSON to CylindricalSpacePointGrid2::Config.

Variables

constexpr int MAX_SEG_PER_NODE = 1000
constexpr int N_SEG_CONNS = 6

Detailed Description

Contains code that is not considered stable yet and might change.

Longer desc

Typedef Documentation

◆ AxisVariant

Initial value:
boost::histogram::axis::variant<BoostVariableAxis, BoostRegularAxis,
boost::histogram::axis::regular< double, boost::histogram::axis::transform::log, std::string > BoostLogAxis
Definition Histogram.hpp:25
boost::histogram::axis::variable< double, std::string > BoostVariableAxis
Definition Histogram.hpp:21
boost::histogram::axis::regular< double, boost::histogram::use_default, std::string > BoostRegularAxis
Definition Histogram.hpp:22

Boost axis variant supporting variable, regular, and log-scale axes with metadata NOTE: It seems not to be possible to combine compile-time fixed number of axes with boost::histogram::axis::variant.

Therefore we use std::vector<AxisVariant> internally.

◆ BoostHist

Initial value:
decltype(boost::histogram::make_histogram(
std::declval<std::vector<AxisVariant>>()))

Underlying Boost type for histograms.

◆ BoostLogAxis

Initial value:
boost::histogram::axis::regular<
double, boost::histogram::axis::transform::log, std::string>

◆ BoostProfileHist

Initial value:
decltype(boost::histogram::make_profile(
std::declval<std::vector<AxisVariant>>()))

Underlying Boost type for ProfileHistogram.

◆ BoostRegularAxis

Initial value:
boost::histogram::axis::regular<double, boost::histogram::use_default,
std::string>

◆ BoostVariableAxis

using Acts::Experimental::BoostVariableAxis = boost::histogram::axis::variable<double, std::string>

◆ Efficiency1

Type aliases for common dimensions.

◆ Efficiency2

◆ GbtsMLLookupTable

using Acts::Experimental::GbtsMLLookupTable = std::vector<std::array<float, 5>>

◆ Histogram1

Type aliases for common dimensions.

◆ Histogram2

◆ ProfileHistogram1

Type aliases for common dimensions.

◆ SPContainerComponentsType

Initial value:
std::tuple<SpacePointContainer2, SpacePointColumnProxy<int, true>,
Additional column of data that can be added to the space point container.
Definition SpacePointColumnProxy2.hpp:26

Function Documentation

◆ extractBinEdges()

std::vector< double > Acts::Experimental::extractBinEdges ( const AxisVariant & axis)

Extract bin edges from an AxisVariant.

Works with all axis types (regular, variable, log) in the variant by accessing the generic axis interface.

Parameters
axisThe axis variant to extract edges from
Returns
Vector of bin edges (size = nBins + 1)

◆ make_error_code()

std::error_code Acts::Experimental::make_error_code ( Acts::Experimental::GlobalChiSquareFitterError e)

◆ projectionX()

Histogram1 Acts::Experimental::projectionX ( const Histogram2 & hist2d)

Project a 2D histogram onto the X axis (axis 0).

Parameters
hist2dThe 2D histogram to project
Returns
A 1D histogram containing the projection

◆ projectionY()

Histogram1 Acts::Experimental::projectionY ( const Histogram2 & hist2d)

Project a 2D histogram onto the Y axis (axis 1).

Parameters
hist2dThe 2D histogram to project
Returns
A 1D histogram containing the projection

Variable Documentation

◆ MAX_SEG_PER_NODE

int Acts::Experimental::MAX_SEG_PER_NODE = 1000
constexpr

◆ N_SEG_CONNS

int Acts::Experimental::N_SEG_CONNS = 6
constexpr