|
ACTS
Experiment-independent tracking
|
A single axis. More...
#include <detray/utils/grid/axis.hpp>
Public Types | |
| using | binning_type = binning_t |
| Make axis binning type accessible. | |
| using | bounds_type = bounds_t |
| Make axis bounds accessible. | |
| using | scalar_type = typename binning_type::scalar_type |
| Scalar type used by the binning implementation. | |
| using | container_types = typename binning_type::container_types |
| Extract container typesContainer types used to store axis edges. | |
| template<typename T> | |
| using | vector_type = typename binning_type::template vector_type<T> |
| Container type for vectors with element type T. | |
Public Member Functions | |
| constexpr | single_axis ()=default |
| Parameterized constructor - empty binning. | |
| template<typename... Args> | |
| single_axis (const dsized_index_range &indx_range, const vector_type< scalar_type > *edges) | |
| Parametrized constructor that builds the binning scheme. | |
| dindex | bin (const scalar_type v) const |
| Given a value on the axis, find the correct bin. | |
| vector_type< scalar_type > | bin_edges () const |
| darray< scalar_type, 2 > | bin_edges (const dindex ibin) const |
| template<typename... Args> | |
| constexpr scalar_type | bin_width (Args &&...args) const |
| constexpr auto | binning () const -> axis::binning |
| constexpr auto | bounds () const -> axis::bounds |
| constexpr auto | label () const -> axis::label |
| scalar_type | max () const |
| scalar_type | min () const |
| constexpr dindex | nbins () const |
| constexpr bool | operator== (const single_axis &rhs) const =default |
| Equality operator. | |
| template<typename neighbor_t> | |
| bin_range | range (const scalar_type v, const darray< neighbor_t, 2 > &nhood) const |
| Given a value on the axis and a neighborhood, find the correct bin range. | |
| darray< scalar_type, 2 > | span () const |
Public Attributes | |
| binning_type | m_binning {} |
| Defines the binning on the axis as a service: regular vs irregular. | |
| bounds_type | m_bounds {} |
| Defines the geometrical bounds of the axis as a service: open, closed or circular. | |
A single axis.
An axis ties bounds and binning behaviour with the bin edges storage. The bounds determine how bin indices are mapped at the over- and underflow bins. The type of binning determines whether the axis has regular or irregular binning. The bin edges needed to find bin indices are not owned by the axis, but are passed to the binning type.
| detray::axis::single_axis< bounds_t, binning_t >::single_axis | ( | const dsized_index_range & | indx_range, |
| const vector_type< scalar_type > * | edges ) |
Parametrized constructor that builds the binning scheme.
| indx_range | Range of bins represented by the supplied edges. |
| edges | Pointer to the bin-edge values. |
| dindex detray::axis::single_axis< bounds_t, binning_t >::bin | ( | const scalar_type | v | ) | const |
Given a value on the axis, find the correct bin.
| v | is the value for the bin search |
| vector_type< scalar_type > detray::axis::single_axis< bounds_t, binning_t >::bin_edges | ( | ) | const |
| darray< scalar_type, 2 > detray::axis::single_axis< bounds_t, binning_t >::bin_edges | ( | const dindex | ibin | ) | const |
| ibin | . |
|
constexpr |
| args | Arguments required by the binning policy. |
|
constexpr |
|
constexpr |
|
constexpr |
| scalar_type detray::axis::single_axis< bounds_t, binning_t >::max | ( | ) | const |
| scalar_type detray::axis::single_axis< bounds_t, binning_t >::min | ( | ) | const |
|
constexpr |
|
constexprdefault |
Equality operator.
| rhs | is the right-hand side of the comparison |
| bin_range detray::axis::single_axis< bounds_t, binning_t >::range | ( | const scalar_type | v, |
| const darray< neighbor_t, 2 > & | nhood ) const |
Given a value on the axis and a neighborhood, find the correct bin range.
| v | is the value for the bin search |
| nhood | is the neighborhood range (in bins or value interval) |
| darray< scalar_type, 2 > detray::axis::single_axis< bounds_t, binning_t >::span | ( | ) | const |