|
| class | actor_chain |
| | The interface to the actors and aborters in the propagation. More...
|
| class | actor_chain<> |
| | Empty actor chain (placeholder). More...
|
| struct | aggregate_inspector |
| | An inspector that aggregates a number of different inspectors. More...
|
| struct | air |
| | Mixtures or Compounds. More...
|
| struct | aluminium |
| | Predefined aluminium material with tabulated bulk properties. More...
|
| struct | always_init |
| | Struct that represents the most conservative navigation policy: always re- initialize the current volume. More...
|
| class | annulus2D |
| | Geometrical shape of a stereo annulus that is used for the ITk strip endcaps. More...
|
| struct | antimuon |
| | Positive muon hypothesis. More...
|
| struct | argon_gas |
| | Predefined argon gas material with tabulated bulk properties. More...
|
| struct | argon_liquid |
| | Predefined argon liquid material with tabulated bulk properties. More...
|
| struct | array |
| | Define the plugin types. More...
|
| struct | attach |
| | An attach populator that adds a new entry to a given bin. More...
|
| class | axis_aligned_bounding_volume |
| | An axis aligned bounding box of a given. More...
|
| struct | axis_rotation |
| | Helper struct to rotate a vector around a given axis and angle counterclockwisely. More...
|
| class | barrel_generator |
| | Generates a number of surfaces in a barrel shape. More...
|
| struct | barrel_generator_config |
| | configuration for the barrel module generator More...
|
| struct | base_actor |
| | Base class actor implementation. More...
|
| class | base_stepper |
| | Base stepper implementation. More...
|
| struct | beryllium |
| | Predefined beryllium material with tabulated bulk properties. More...
|
| struct | beryllium_tml |
| | Elements Declaration for ACTS Generic detector. More...
|
| struct | bin_associator |
| | Fill a grid surface finder by bin association. More...
|
| struct | bound_parameters_vector |
| | Six-component parameter vector expressed in a surface-bound coordinate frame. More...
|
| struct | bound_track_parameters |
| | Combine the bound track parameter vector with the covariance and associated surface. More...
|
| class | brute_force_collection |
| | A collection of brute force surface finders, callable by index. More...
|
| struct | brute_force_scan |
| | struct that holds functionality to shoot a parametrized particle trajectory through a detector. More...
|
| class | caching_navigator |
| | Navigation class which caches a 'road' through the detector. More...
|
| struct | carbon_gas |
| | Predefined carbon gas material with tabulated bulk properties. More...
|
| struct | cartesian2D |
| | Projection into a 2D cartesian coordinate frame. More...
|
| struct | cartesian3D |
| | Projection into a 3D cartesian coordinate frame. More...
|
| struct | cesium_iodide |
| | Predefined cesium iodide material with tabulated bulk properties. More...
|
| struct | cesium_iodide_with_ded |
| | Predefined cesium iodide material with density-effect data. More...
|
| struct | complete |
| | A complete populator that adds entries to a bin which contains an array of entries until it is completed - ignored afterwards. More...
|
| class | composite_actor |
| | Composition of actors. More...
|
| class | concentric_cylinder2D |
| | Geometrical shape of a 2D concentric cylinder. More...
|
| struct | concentric_cylindrical2D |
| | Projection into a 2D concentric cylindrical frame (No rotation in coordinate transformation). More...
|
| struct | const_container_types |
| | Bundle container type definitions. More...
|
| struct | constant |
| | Physical and mathematical constants. More...
|
| struct | constrained_step |
| | Struct that can be configured with a number of different step sizes by other actors and will then resolve the strictest one. More...
|
| struct | container_types |
| | Bundle container type definitions. More...
|
| struct | copper |
| | Predefined copper material with tabulated bulk properties. More...
|
| struct | copper_with_ded |
| | Predefined copper material with density-effect data. More...
|
| class | cuboid3D |
| | Geometrical shape of a full 3D cuboid. More...
|
| struct | cuboid_intersector |
| | Checks if a cuboid bonuding box is intersected by a ray. More...
|
| class | cuboid_portal_generator |
| | Generates a portal box around a volume that already contains surfaces. More...
|
| struct | curvilinear_frame |
| | Frame and Jacobian data associated with a free track's curvilinear frame. More...
|
| class | cylinder2D |
| | Geometrical shape of a 2D cylinder. More...
|
| class | cylinder3D |
| | Geometrical shape of a full 3D cylinder. More...
|
| struct | cylinder_portal_config |
| | configuration for the cylinder portal generator More...
|
| class | cylinder_portal_generator |
| | Generates a portal box around a volume that already contains surfaces. More...
|
| struct | cylindrical2D |
| | Projection into a 2D cylindrical coordinate frame. More...
|
| struct | cylindrical3D |
| | Projection into a 3D cylindrical coordinate frame. More...
|
| struct | default_hash |
| | Default hash function makes use of default node in the hash tree. More...
|
| struct | default_metadata |
| | Type and storage policy used to assemble a detector from geometry and material components. More...
|
| class | detector_builder |
| | Provides functionality to build a detray detector volume by volume. More...
|
| struct | detector_traits |
| struct | detector_traits< detail::detector< metadata_t, container_t > > |
| | Unified interface to detector types - from any detector type. More...
|
| struct | detector_traits< metadata_t > |
| | Unified interface to detector types - from a metadata type. More...
|
| class | direct_navigator |
| | Navigator that visits an externally supplied sequence of surfaces in order. More...
|
| struct | eigen |
| | Define the plugin types. More...
|
| struct | electron |
| | Electron hypothesis. More...
|
| class | endcap_generator |
| | Generates surfaces for an endcap layer consisting of two rings. More...
|
| struct | endcap_generator_config |
| | configuration for the barrel module generator More...
|
| struct | euler_rotation |
| | Helper struct to perform an euler rotation for a given vector All rotation operations are counterclockwise. More...
|
| class | external_surface |
| | Surface descriptor used for geometry supplied outside the detector store. More...
|
| class | factory_decorator |
| | Decorator for the surface factories. More...
|
| struct | fastor |
| | Define the plugin types. More...
|
| struct | fill_by_bin |
| | Fill a surface grid using a local bin index of the grid and a payload. More...
|
| struct | fill_by_pos |
| | Fill a surface grid using the surface translation. More...
|
| struct | free_parameters_vector |
| | Six-component parameter vector expressed in global Cartesian coordinates. More...
|
| struct | gold |
| | Predefined gold material with tabulated bulk properties. More...
|
| class | grid_builder |
| | Build a grid of a certain shape. More...
|
| class | grid_collection |
| | A collection of grids that can be moved to device as part of the detector. More...
|
| class | grid_collection< detray::grid_impl< axes_t, bin_t, serializer_t > > |
| | Specialization for detray::grid. More...
|
| class | grid_collection< spatial_grid_impl< grid_t > > |
| | Accelerator collection specialization for detray::spatial_grid_impl. More...
|
| class | grid_factory |
| | Provides functionality to instantiate grids and grid collections. More...
|
| class | grid_impl |
| | An N-dimensional grid for object storage. More...
|
| struct | guided_navigation |
| | During guided navigation only the next surface should be re-evaluated. More...
|
| class | hash_tree |
| | Builds a hash tree from the data of an input collection. More...
|
| struct | helium_gas |
| | Predefined helium gas material with tabulated bulk properties. More...
|
| struct | helix_intersector_impl |
| | Intersection implementation for detector surfaces using a helix trajectory. More...
|
| struct | helix_intersector_impl< cartesian2D< algebra_t >, algebra_t > |
| | Intersection implementation for helical trajectories with planar surfaces. More...
|
| struct | helix_intersector_impl< concentric_cylindrical2D< algebra_t >, algebra_t > |
| | Helix intersector for a concentric cylindrical coordinate frame. More...
|
| struct | helix_intersector_impl< cylindrical2D< algebra_t >, algebra_t > |
| | Intersection implementation for cylinder surfaces using helical trajectories. More...
|
| struct | helix_intersector_impl< line2D< algebra_t >, algebra_t > |
| | Intersection implementation for helical trajectories with line surfaces. More...
|
| struct | helix_intersector_impl< polar2D< algebra_t >, algebra_t > |
| struct | hom_material_config |
| | Configuration for the homogeneous material generator. More...
|
| class | homogeneous_material_builder |
| | Build a volume containing surfaces with material. More...
|
| class | homogeneous_material_factory |
| | Factory class for homogeneous material. More...
|
| class | homogeneous_material_generator |
| | Surface factory decorator that adds homogeneous material to surfaces. More...
|
| class | homogeneous_volume_material_builder |
| | Build a volume with homogeneous volume material. More...
|
| struct | hydrogen_gas |
| | Predefined hydrogen gas material with tabulated bulk properties. More...
|
| struct | hydrogen_liquid |
| | Predefined hydrogen liquid material with tabulated bulk properties. More...
|
| struct | interaction |
| | Computes energy loss and multiple scattering in detector material. More...
|
| class | intersection2D |
| | This class holds the intersection information. More...
|
| struct | intersection_point |
| | Result of intersector: Point of intersection on a surface. More...
|
| struct | intersection_point< algebra_t, point_t, !intersection::contains_pos > |
| | Result of intersector: Only contains the distance (production). More...
|
| struct | intersection_point< algebra_t, point_t, intersection::contains_pos > |
| | Result of intersector: Distance and intersection point (debug). More...
|
| struct | intersection_point_err |
| | Result of intersector: Distance, intersection point (2D or 3D, local/global) and error estimate on distance (for mask resolution). More...
|
| struct | intersection_record |
| | Record of a surface intersection along a track. More...
|
| struct | intersector |
| | Intersection interface for detector surfaces. More...
|
| struct | intersector_base |
| | Base class for an intersector: Provides mask based call interfaces for convenience. More...
|
| struct | invalid |
| | Invalid particle hypothesis (PDG number zero). More...
|
| struct | iron |
| | Predefined iron material with tabulated bulk properties. More...
|
| struct | iron_with_ded |
| | Predefined iron material with density-effect data. More...
|
| struct | is_ratio_one |
| | Helper trait to check if the ratio is one. More...
|
| struct | isobutane |
| | Predefined isobutane material with tabulated bulk properties. More...
|
| class | landau_distribution |
| | Landau distribution based on CERNLIB G110 Computer Physics Communications 31(1984) 97—111). More...
|
| class | line |
| | Geometrical shape of a line surface. More...
|
| struct | line2D |
| | Projection into a line coordinate frame. More...
|
| class | line_stepper |
| | Straight line stepper implementation. More...
|
| class | mask |
| | Mask a region on a surface and link it to a volume. More...
|
| struct | material |
| | Material composition properties and density data used by interactions. More...
|
| class | material_data |
| | Bind components for material together. More...
|
| class | material_map_builder |
| | Build the material maps for a given volume. More...
|
| struct | material_map_config |
| | Configuration for the material map generator. More...
|
| class | material_map_factory |
| | Factory class for material maps. More...
|
| class | material_map_generator |
| | Surface factory decorator that adds material maps to surfaces. More...
|
| struct | material_record |
| | Contains the material parameters and the pathlength. More...
|
| struct | material_rod |
| | Rod structure to be mapped on the line mask. More...
|
| struct | material_slab |
| | Slab structure to be mapped on the mask (plane, cylinder). More...
|
| struct | mixture |
| | Compile-time material mixture type. More...
|
| struct | muon |
| | Negative muon hypothesis. More...
|
| struct | name_map |
| | Map volume indices to volume names and vice versa. More...
|
| class | navigator |
| | The geometry navigation class. More...
|
| class | navigator_base |
| | Navigation base class - interface towards the propagator. More...
|
| struct | nitrogen_gas |
| | Predefined nitrogen gas material with tabulated bulk properties. More...
|
| struct | odd_metadata |
| | Detector-specific aliases and storage policy for odd geometry. More...
|
| struct | oxygen_gas |
| | Predefined oxygen gas material with tabulated bulk properties. More...
|
| struct | oxygen_liquid |
| | Predefined oxygen liquid material with tabulated bulk properties. More...
|
| struct | pdg_particle |
| | Particle hypothesis identified by PDG number, mass, and electric charge. More...
|
| | Templated propagator class, using a stepper and a navigator object in succession. More...
|
| struct | perigee_stopper |
| | Actor that exits from a navigation stream, if it has reached the perigee. More...
|
| struct | photon |
| | Photon hypothesis. More...
|
| struct | pion_minus |
| | Negative pion hypothesis. More...
|
| struct | pion_plus |
| | Positive pion hypothesis. More...
|
| struct | pion_zero |
| | Neutral pion hypothesis. More...
|
| struct | polar2D |
| | Projection into a polar coordinate frame. More...
|
| struct | positron |
| | Positron hypothesis. More...
|
| struct | propagation_record |
| | Data for a single step. More...
|
| struct | propagation_validation_config |
| | Configure the Kalman Filter comparison test. More...
|
| struct | propagator |
| | Templated propagator class, using a stepper and a navigator object in succession. More...
|
| struct | propane |
| | Predefined propane material with tabulated bulk properties. More...
|
| class | random_track_generator |
| | Generates track states with random momentum directions. More...
|
| struct | random_track_generator_config |
| | Configuration for the random track generator. More...
|
| struct | ratio_sum |
| | Struct to sum over variadic std::ratio. More...
|
| struct | ratio_sum_helper |
| | Helper struct to sum over variadic std::ratio. More...
|
| struct | ratio_sum_helper< R > |
| | Base case for a one-element ratio sum. More...
|
| struct | ratio_sum_helper< ratio1, ratio2, ratios... > |
| | Recursive case that adds two ratios before processing any remainder. More...
|
| struct | ray_intersector_impl |
| | Intersection implementation for detector surfaces using a ray trajectory. More...
|
| struct | ray_intersector_impl< cartesian2D< algebra_t >, algebra_t, resolve_pos > |
| | A functor to find intersections between straight line and planar surface. More...
|
| struct | ray_intersector_impl< concentric_cylindrical2D< algebra_t >, algebra_t, resolve_pos > |
| | A functor to find intersections between a straight line and a cylindrical portal surface. More...
|
| struct | ray_intersector_impl< cylindrical2D< algebra_t >, algebra_t, resolve_pos > |
| | A functor to find intersections between a ray and a 2D cylinder mask. More...
|
| struct | ray_intersector_impl< line2D< algebra_t >, algebra_t, resolve_pos > |
| | A functor to find intersections between trajectory and line mask. More...
|
| struct | ray_intersector_impl< polar2D< algebra_t >, algebra_t, resolve_pos > |
| class | rectangle2D |
| | Geometrical shape of a rectangle2D. More...
|
| struct | replace |
| | A replace populator that overrides whatever current content is in the bin with a new entry. More...
|
| class | ring2D |
| | Geometrical shape of a closed ring. More...
|
| class | rk_stepper |
| | Runge-Kutta-Nystrom 4th order stepper implementation. More...
|
| struct | scattering_helper |
| | Generates a random direction after multiple scattering. More...
|
| struct | silicon |
| | Predefined silicon material with tabulated bulk properties. More...
|
| struct | silicon_tml |
| | Predefined silicon material using TrackML bulk properties. More...
|
| struct | silicon_with_ded |
| | Predefined silicon material with density-effect data. More...
|
| class | single3D |
| | Underlying geometry for a single parameter bound mask. More...
|
| struct | smatrix |
| | Define the plugin types. More...
|
| class | spatial_grid_impl |
| | An N-dimensional spatial grid for geometry object searches. More...
|
| struct | step_record |
| | Data for a single step. More...
|
| struct | stepper_default_policy |
| | Default navigation update policy for the steppers: If a constraint has been hit, lower the trustlevel to 'fair trust', otherwise stay in 'high trust'. More...
|
| struct | stepper_rk_policy |
| | Specific navigation policy for the Runge-Kutta stepper: Use the relative amount of step size correction as a measure for the change in direction of the track state. More...
|
| class | surface_data |
| | Bind transform and mask data together for surface building. More...
|
| class | surface_descriptor |
| | Templated surface class for detector surfaces and portals. More...
|
| class | surface_factory |
| | Generates a number of surfaces for a volume (can be portals, passives or sensitives) and fills them into the containers of a volume builder. More...
|
| class | surface_factory_interface |
| | How to generate surfaces with their corresponding masks and transforms. More...
|
| struct | tel_det_config |
| | Configure the toy detector. More...
|
| class | telescope_generator |
| | Generates a number of surfaces along a given direction. More...
|
| struct | telescope_metadata |
| | Defines a special telescope test detector type with only rectangle portals and one additional kind of contained module surfaces (mask_shape_t). More...
|
| struct | toy_det_config |
| | Configure the toy detector. More...
|
| struct | toy_metadata |
| | Detector-specific aliases and storage policy for toy geometry. More...
|
| class | tracking_surface |
| | Facade for a detray detector surface with extra tracking capabilities. More...
|
| class | tracking_volume |
| | Facade for a detray detector volume. More...
|
| class | trapezoid2D |
| | Geometrical shape of a trapezoid2D. More...
|
| struct | tungsten |
| | Predefined tungsten material with tabulated bulk properties. More...
|
| struct | tuple |
| | Default tuple type. More...
|
| struct | tuple< T, Ts... > |
| | Recursive tuple node holding one value and the remaining tuple tail. More...
|
| class | unbounded |
| | Wraps any shape, but does not enforce boundaries. More...
|
| struct | unconstrained_step |
| | Struct that represents unconstrained stepping. More...
|
| class | uniform_track_generator |
| | Generates track states with momentum directions in a uniform angle space. More...
|
| struct | uniform_track_generator_config |
| | Configuration for the uniform track generator. More...
|
| struct | unit |
| | Unit conversion factors. More...
|
| struct | unit_vectors |
| | Build the curvilinear unit basis perpendicular to a three-dimensional direction. More...
|
| class | unmasked |
| | Generic shape without boundaries. More...
|
| struct | vacuum |
| | Elements Declaration. More...
|
| struct | vc_aos |
| | Define the plugin types. More...
|
| struct | vc_soa |
| | Define the plugin types. More...
|
| struct | void_actor |
| | Placeholder struct for an action while walking through the graph. More...
|
| struct | void_node_inspector |
| | Placeholder struct for the implementation of an inspection function that will be executed, when a node is visited. More...
|
| class | volume_builder |
| | Provides basic functionality to build detector volumes. More...
|
| class | volume_builder_interface |
| | Interface for volume builders (and volume builder decorators). More...
|
| struct | volume_builder_options |
| | Options for the volume builder classes. More...
|
| class | volume_decorator |
| | Decorator for the volume builder. More...
|
| class | volume_descriptor |
| | The detray detector volume descriptor. More...
|
| class | volume_graph |
| | Uses the geometry implementations to walk through their graph-like structure breadth first. More...
|
| struct | wire_chamber_config |
| | Configuration for building a wire chamber detector. More...
|
| struct | wire_chamber_metadata |
| | Detector-specific aliases and storage policy for wire chamber geometry. More...
|
| class | wire_layer_generator |
| | Generates a number of drift cells or straw tubes for a barrel layer. More...
|
| struct | wire_layer_generator_config |
| | configuration for the wire layer generator More...
|
|
|
template<concepts::algebra algebra_t> |
| using | bound_matrix = dmatrix<algebra_t, e_bound_size, e_bound_size> |
| | Covariance matrix type for bound track parametrization.
|
|
template<concepts::algebra algebra_t> |
| using | bound_to_free_jacobian_submatrix = dmatrix<algebra_t, 3, 2> |
| | Submatrix for bound to free Jacobians for d(x,y,z) or d(nx, ny, nz) over d(l0, l1) or d(phi, theta).
|
|
template<concepts::algebra algebra_t> |
| using | bound_to_free_matrix = dmatrix<algebra_t, e_free_size, e_bound_size> |
| | Mapping from bound to free track parameters.
|
|
template<concepts::algebra algebra_t> |
| using | bound_vector = dmatrix<algebra_t, e_bound_size, 1> |
| | Vector type for bound track parametrization.
|
|
using | const_host_container_types = const_container_types<> |
| | Const-qualified host container policy based on vecmem vectors.
|
|
template<typename A, typename T> |
| using | dalgebra = get_algebra_t<A, T> |
| | Select the algebra backend with value type T.
|
|
template<typename value_t, std::size_t kDIM> |
| using | darray = std::array<value_t, kDIM> |
| | Fixed-size array container.
|
|
template<typename A> |
| using | dbool = get_boolean_t<A> |
| | Boolean type associated with the algebra backend.
|
|
using | dindex = unsigned int |
| | Default index type.
|
|
using | dindex_range = detail::index_range<dindex> |
| | Index ranges and sequences.
|
|
using | dindex_sequence = dvector<dindex> |
| | Compile-time sequence of detector indices.
|
|
template<typename A> |
| using | dindex_type = get_index_t<A> |
| | Index type provided by the algebra backend.
|
|
template<typename value_t> |
| using | djagged_vector = vecmem::jagged_vector<value_t> |
| | Jagged vector container backed by vecmem.
|
|
template<typename key_t, typename value_t> |
| using | dmap = std::map<key_t, value_t> |
| | Ordered key-value map container.
|
|
template<typename A, std::size_t R, std::size_t C, typename T = dvalue<A>> |
| using | dmatrix = get_matrix_t<A, R, C, T> |
| | R by C matrix type for algebra A and value type T.
|
|
template<typename index_t = dindex, std::size_t DIM = 3u> |
| using | dmulti_index = detail::multi_index<index_t, DIM> |
| | Index that consists of multiple subindices.
|
|
template<typename A, typename T = dvalue<A>> |
| using | dpoint2D = get_point2D_t<A, T> |
| | Two-dimensional point type for algebra A and value type T.
|
|
template<typename A, typename T = dvalue<A>> |
| using | dpoint3D = get_point3D_t<A, T> |
| | Three-dimensional point type for algebra A and value type T.
|
|
template<typename A, typename T = dvalue<A>> |
| using | dscalar = get_scalar_t<A, T> |
| | Scalar type for algebra A and value type T.
|
|
template<typename A, typename T> |
| using | dsimd = get_simd_t<A, T> |
| | SIMD type associated with value type T.
|
| using | dsized_index_range |
| | Index range whose size is known at compile time.
|
|
template<typename A, typename T = dvalue<A>> |
| using | dtransform3D = get_transform3D_t<A, T> |
| | Three-dimensional transform type for algebra A and value type T.
|
|
template<class... types> |
| using | dtuple = detray::tuple<types...> |
| | Tuple type used by detray storage and dispatch.
|
| template<typename id_t = dindex, typename index_t = dindex, typename value_t = std::uint_least32_t, value_t id_mask = 0xf0000000, value_t index_mask = ~id_mask> |
| using | dtyped_index |
| | Link consisting of a type ID and an index.
|
|
template<typename A> |
| using | dvalue = get_value_t<A> |
| | Value scalar type of the algebra backend.
|
|
template<typename value_t> |
| using | dvector = vecmem::vector<value_t> |
| | Vector container backed by vecmem.
|
|
template<typename A, typename T = dvalue<A>> |
| using | dvector2D = get_vector2D_t<A, T> |
| | Two-dimensional vector type for algebra A and value type T.
|
|
template<typename A, typename T = dvalue<A>> |
| using | dvector3D = get_vector3D_t<A, T> |
| | Three-dimensional vector type for algebra A and value type T.
|
|
template<concepts::algebra algebra_t> |
| using | free_matrix = dmatrix<algebra_t, e_free_size, e_free_size> |
| | Covariance matrix type for free track parametrization.
|
|
template<concepts::algebra algebra_t> |
| using | free_to_bound_jacobian_submatrix = dmatrix<algebra_t, 2, 3> |
| | Submatrix for free to bound Jacobians d(l0, l1) or d(phi, theta) over d(x,y,z) or d(nx, ny, nz).
|
|
template<concepts::algebra algebra_t> |
| using | free_to_bound_matrix = dmatrix<algebra_t, e_bound_size, e_free_size> |
| | Mapping from free to bound track parameters.
|
|
template<concepts::algebra algebra_t> |
| using | free_to_path_matrix = dmatrix<algebra_t, 1, e_free_size> |
| | Mapping from free to path.
|
|
template<concepts::algebra algebra_t> |
| using | free_track_parameters = free_parameters_vector<algebra_t> |
| | The free track parameters consist only of the parameter vector.
|
|
template<concepts::algebra algebra_t> |
| using | free_vector = dmatrix<algebra_t, e_free_size, 1> |
| | Vector type for free track parametrization.
|
|
template<typename A, typename T> |
| using | get_algebra_t = typename traits::get_algebra<A, T>::algebra_type |
| | Select the algebra type, optionally replacing its value type.
|
|
template<typename A> |
| using | get_boolean_t = typename traits::get_algebra<A>::boolean |
| | Get the algebra boolean type.
|
|
template<typename A> |
| using | get_index_t = typename traits::get_algebra<A>::index_type |
| | Get the algebra index type.
|
|
template<typename A, std::size_t R, std::size_t C, typename T = get_value_t<A>> |
| using | get_matrix_t = typename traits::get_algebra<A, T>::template matrix<R, C> |
| | Get a matrix type with the requested dimensions and value type.
|
|
template<typename A, typename T = get_value_t<A>> |
| using | get_point2D_t = typename traits::get_algebra<A, T>::point2D |
| | Get the 2D point type, optionally for a replacement value type.
|
|
template<typename A, typename T = get_value_t<A>> |
| using | get_point3D_t = typename traits::get_algebra<A, T>::point3D |
| | Get the 3D point type, optionally for a replacement value type.
|
|
template<typename A, typename T = get_value_t<A>> |
| using | get_scalar_t = typename traits::get_algebra<A, T>::scalar |
| | Get the algebra scalar type, optionally for a replacement value type.
|
|
template<typename A, typename T> |
| using | get_simd_t = typename traits::get_algebra<A>::template simd<T> |
| | Get the algebra SIMD type for a lane value type.
|
|
template<typename A, typename T = get_value_t<A>> |
| using | get_transform3D_t = typename traits::get_algebra<A, T>::transform3D |
| | Get the 3D transform type, optionally for a replacement value type.
|
|
template<typename A> |
| using | get_value_t = typename traits::get_algebra<A>::value |
| | Get the algebra value type.
|
|
template<typename A, typename T = get_value_t<A>> |
| using | get_vector2D_t = typename traits::get_algebra<A, T>::vector2D |
| | Get the 2D vector type, optionally for a replacement value type.
|
|
template<typename A, typename T = get_value_t<A>> |
| using | get_vector3D_t = typename traits::get_algebra<A, T>::vector3D |
| | Get the 3D vector type, optionally for a replacement value type.
|
| template<concepts::algebra algebra_t, typename axes_t, typename bin_t, template< std::size_t > class serializer_t = simple_serializer, typename containers = host_container_types, bool ownership = true> |
| using | grid |
| | Type alias for easier construction.
|
| template<concepts::detector detector_t, template< class, template< std::size_t > class, typename > class grid_factory_t, typename grid_shape_t, typename bin_t, template< std::size_t > class serializer_t, axis::bounds e_bounds = axis::bounds::e_closed, template< typename, typename > class... binning_ts> |
| using | grid_builder_type |
| | Grid builder from single components.
|
| template<concepts::grid grid_t> |
| using | grid_factory_type |
| | Infer a grid factory type from an already completely assembled grid type.
|
| template<typename shape_t, concepts::algebra algebra_t, bool = true> |
| using | helix_intersector |
| | Select the helix intersector specialization for a shape's local frame.
|
|
template<concepts::algebra algebra_t> |
| using | helix_scan = brute_force_scan<detail::helix<algebra_t>> |
| | Type of a helix scan for the selected algebra.
|
|
using | host_container_types = container_types<> |
| | Defining some common types Default host container policy based on vecmem vectors.
|
|
using | line_circular = line<false> |
| | Radial crossection, boundary check in polar coordinates.
|
|
using | line_square = line<true> |
| | Square crossection, boundary check in cartesian coordinates.
|
| template<concepts::algebra algebra_t> |
| using | material_grid_factory |
| | How to build material maps of various shapes.
|
| template<concepts::algebra algebra_t, typename shape_t, typename container_t = host_container_types, bool owning = false> |
| using | material_map |
| | Definition of binned material.
|
|
template<typename T1, typename T2> |
| using | pair = tuple<T1, T2> |
| | A two-element tuple alias.
|
|
template<concepts::algebra algebra_t> |
| using | path_to_free_matrix = dmatrix<algebra_t, e_free_size, 1> |
| | Mapping from path to free.
|
| template<typename shape_t, concepts::algebra algebra_t, bool resolve_pos = false> |
| using | ray_intersector |
| | Select the ray intersector specialization for a shape's local frame.
|
|
template<concepts::algebra algebra_t> |
| using | ray_scan = brute_force_scan<detail::ray<algebra_t>> |
| | Type of a ray scan for the selected algebra.
|
| template<concepts::arithmetic window_size_t, std::size_t DIM> |
| using | search_window = darray<window_size_t, DIM> |
| | Size around a query point for which to do the search in an acceleration structure.
|
| template<concepts::algebra algebra_t, typename axes_t, typename bin_t, template< std::size_t > class serializer_t = simple_serializer, typename containers = host_container_types, bool ownership = true> |
| using | spatial_grid |
| | Spatial grid alias built from coordinate axes and a bin type.
|
| template<typename D> |
| using | detector_metadata_t = typename detector_traits<D>::metadata_type |
| | Some predefined alias types.
|
|
template<typename D> |
| using | detector_host_t = typename detector_traits<D>::host |
| | Host detector type for metadata type D.
|
|
template<typename D> |
| using | detector_device_t = typename detector_traits<D>::device |
| | Device detector type for metadata type D.
|
|
template<typename D> |
| using | detector_view_t = typename detector_traits<D>::view |
| | Const view type for detector type D.
|
|
template<typename D> |
| using | detector_buffer_t = typename detector_traits<D>::buffer |
| | Buffer type for transferring detector type D.
|
|
| template<concepts::algebra algebra_t, typename mask_shape_t = rectangle2D, template< typename > class trajectory_t = detail::ray> |
| auto | build_telescope_detector (vecmem::memory_resource &resource, const tel_det_config< algebra_t, mask_shape_t, trajectory_t > &cfg=tel_det_config< algebra_t, mask_shape_t, trajectory_t >{ 20.f *unit< dscalar< algebra_t > >::mm, 20.f *unit< dscalar< algebra_t > >::mm}) |
| | Builds a detray geometry that contains only one volume with one type of surfaces.
|
| template<concepts::algebra algebra_t> |
| auto | build_toy_detector (vecmem::memory_resource &resource, toy_det_config< dscalar< algebra_t > > cfg={}) |
| | Builds a detray geometry that contains the innermost tml layers.
|
| template<concepts::algebra algebra_t, typename wire_shape_t> |
| auto | build_wire_chamber (vecmem::memory_resource &resource, wire_chamber_config< dscalar< algebra_t >, wire_shape_t > &cfg) |
| | Build a wire chamber detector.
|
| template<concepts::scalar scalar_t> |
| constexpr pdg_particle< scalar_t > | charge_conjugation (const pdg_particle< scalar_t > &ptc) |
| | Apply the charge conjugation operator to a particle hypothesis ptc.
|
| bool | check_covfie_file (const std::string &file_name) |
| | Function that reads the first 4 bytes of a potential bfield file and checks that it contains data for a covfie field.
|
| template<concepts::detector detector_t, concepts::point point_t> |
| constexpr dscalar< typename detector_t::algebra_type > | cos_angle (const typename detector_t::geometry_context &ctx, geometry::surface< detector_t > sf, const dvector3D< typename detector_t::algebra_type > &dir, const point_t &loc) |
| | Helper to get the incidence angle of a direction vector on a surface.
|
| template<typename T, concepts::vector3D vector3_t> |
| bfield::const_field_t< T > | create_const_field (const vector3_t &B) |
| template<typename T> |
| bfield::inhom_field_t< T > | create_inhom_field () |
| template<concepts::scalar scalar_t, typename function_t> |
| bool | expand_bracket (const scalar_t a, const scalar_t b, function_t &f, darray< scalar_t, 2 > &bracket, const scalar_t k=1.f) |
| | Try to find a bracket around a root.
|
| template<std::random_access_iterator rand_iter_t, std::sentinel_for< rand_iter_t > sentinel_t, class Predicate> |
| auto | find_if (rand_iter_t first, sentinel_t last, Predicate &&comp) |
| | find_if implementation for host/device (single thread)
|
| template<typename U, typename T, typename... Ts> |
| const auto & | get (const detray::tuple< T, Ts... > &t) noexcept |
| | Get a tuple element by type from a const tuple.
|
| template<std::size_t I, typename... Ts> |
| const auto & | get (const detray::tuple< Ts... > &t) noexcept |
| | Get a tuple element by index from a const tuple.
|
| template<typename U, typename T, typename... Ts> |
| auto & | get (detray::tuple< T, Ts... > &t) noexcept |
| | Get a tuple element by type from a mutable tuple.
|
| template<std::size_t I, typename... Ts> |
| auto & | get (detray::tuple< Ts... > &t) noexcept |
| | Get a tuple element by index from a mutable tuple.
|
| template<std::forward_iterator forw_iter_t, std::sentinel_for< forw_iter_t > sentinel_t, typename Value> |
| auto | lower_bound (forw_iter_t first, sentinel_t last, const Value &value) |
| | lower_bound implementation for host/device
|
| template<typename T1, typename T2> |
| constexpr detray::pair< std::decay_t< T1 >, std::decay_t< T2 > > | make_pair (T1 &&v1, T2 &&v2) |
| | Construct a pair by decaying and forwarding its two arguments.
|
| template<typename... Ts> |
| constexpr detray::tuple< std::decay_t< Ts >... > | make_tuple (Ts &&...vs) |
| | Construct a tuple by decaying and forwarding its arguments.
|
| template<std::size_t I = 0u, typename store_t> |
| std::size_t | n_grids (const store_t &store, std::size_t n=0u) |
| | Count grid collections in a detector store.
|
| template<concepts::detector detector_t> |
| std::size_t | n_material_maps (const detector_t &det) |
| template<concepts::detector detector_t> |
| std::size_t | n_material_rods (const detector_t &det) |
| template<concepts::detector detector_t> |
| std::size_t | n_material_slabs (const detector_t &det) |
| template<concepts::detector detector_t> |
| std::size_t | n_passives (const detector_t &det) |
| template<concepts::detector detector_t> |
| std::size_t | n_portals (const detector_t &det) |
| template<concepts::detector detector_t> |
| std::size_t | n_sensitives (const detector_t &det) |
| template<concepts::detector detector_t> |
| std::size_t | n_surface_grids (const detector_t &det) |
| template<typename scalar_t, typename function_t> |
| std::pair< scalar_t, scalar_t > | newton_raphson (function_t &evaluate_func, scalar_t s, const scalar_t convergence_tolerance=1.f *unit< scalar_t >::um, const std::size_t max_n_tries=1000u, const scalar_t max_path=5.f *unit< scalar_t >::m) |
| | Find a root using the Newton-Raphson algorithm.
|
| template<concepts::scalar scalar_t, typename function_t> |
| std::pair< scalar_t, scalar_t > | newton_raphson_safe (function_t &evaluate_func, scalar_t s, const scalar_t convergence_tolerance=1.f *unit< scalar_t >::um, const std::size_t max_n_tries=1000u, const scalar_t max_path=5.f *unit< scalar_t >::m) |
| | Find a root using the Newton-Raphson and Bisection algorithms.
|
| std::ostream & | operator<< (std::ostream &os, surface_id sid) |
| | Write the surface category identifier using its enumerator name.
|
| std::ostream & | operator<< (std::ostream &os, volume_id vid) |
| | Write the volume shape identifier using its enumerator name.
|
template<typename vector_t>
requires (concepts::vector<vector_t> || concepts::point<vector_t>) |
| std::ostream & | operator<< (std::ostream &out, const vector_t &v) |
| | Print a generic vector or point v.
|
| template<std::size_t N, concepts::scalar S> |
| constexpr bool | operator== (const Fastor::Tensor< S, N > &lhs, const Fastor::Tensor< S, N > &rhs) |
| | Compare two Fastor vectors component-wise for exact equality.
|
| template<concepts::detector detector_t> |
| void | prefill_detector (detector_t &d, typename detector_t::geometry_context ctx) |
| | Adds a few surfaces to the detector for testing the builder code on non-empty detectors.
|
| template<concepts::detector detector_t, typename bfield_view_t> |
| bool | propagation_validation (const detector_t &det, const typename detector_t::name_map &names, const std::optional< bfield_view_t > &bfield, const propagation_validation_config< typename detector_t::scalar_type > &cfg, const std::vector< free_track_parameters< typename detector_t::algebra_type > > &tracks, std::vector< dvector< intersection_record< detector_t > > > &truth_traces_fw) |
| | Run a detray propagation and compare the surfaces that were encountered against a reference of truth tracks givben as intersection traces.
|
| template<typename bfield_t> |
| bfield_t | read_bfield (const std::string &file_name) |
| | function that reads a covfie field from file
|
| template<typename intersection_t, typename trajectory_t, concepts::algebra algebra_t, concepts::point point_t, typename surface_descr_t, typename mask_t, concepts::transform3D transform3_t, concepts::scalar scalar_t> |
| constexpr void | resolve_mask (intersection_t &is, const trajectory_t &traj, const intersection_point< algebra_t, point_t, intersection::contains_pos > &ip, const surface_descr_t sf_desc, const mask_t &mask, const transform3_t &trf, const intersection::config &cfg={}, const scalar_t external_mask_tolerance=0.f) |
| | Fill an intersection with the result of the intersection alg.
|
| template<typename intersection_t, concepts::algebra algebra_t, typename surface_descr_t, typename mask_t, typename trajectory_t, concepts::transform3D transform3_t, concepts::scalar scalar_t> |
| constexpr void | resolve_mask (intersection_t &is, const trajectory_t &traj, const intersection_point_err< algebra_t > &ip, const surface_descr_t sf_desc, const mask_t &mask, const transform3_t &trf, const intersection::config &intr_cfg, const scalar_t=0.f) |
| | Fill an intersection with the result of the root finding.
|
| template<std::random_access_iterator rand_iter_t, std::sentinel_for< rand_iter_t > sentinel_t> |
| void | sequential_sort (rand_iter_t first, sentinel_t last) |
| | sequential (single thread) sort function
|
|
template<concepts::algebra algebra_t, typename shape_t, template< typename > class trajectory_t> |
| | tel_det_config (const mask< shape_t, algebra_t > &, const trajectory_t< algebra_t > &) -> tel_det_config< algebra_t, shape_t, trajectory_t > |
| | Deduce the type of telescope config.
|
| template<typename... Ts> |
| constexpr detray::tuple< Ts &... > | tie (Ts &...args) |
| | Create a tuple of references to the supplied objects.
|
|
template<concepts::detector detector_t, typename descr_t> |
| | tracking_surface (const detector_t &, const descr_t &) -> tracking_surface< detector_t > |
| | Deduce the detector type from a detector and surface descriptor pair.
|
|
template<concepts::detector detector_t> |
| | tracking_surface (const detector_t &, const geometry::identifier) -> tracking_surface< detector_t > |
| | Deduce the detector type when wrapping an existing surface.
|
|
template<concepts::detector detector_t> |
| | tracking_surface (const geometry::surface< const detector_t >) -> tracking_surface< detector_t > |
| | Deduce the detector type from a const geometry surface.
|
|
template<concepts::detector detector_t> |
| | tracking_surface (const geometry::surface< detector_t >) -> tracking_surface< detector_t > |
| | Deduce the detector type from a geometry identifier.
|
| template<concepts::scalar scalar_t, typename track_t> |
| constexpr pdg_particle< scalar_t > | update_particle_hypothesis (const pdg_particle< scalar_t > &ptc, const track_t ¶ms) |
| | Select the hypothesis matching the sign of the track charge over momentum.
|
| template<std::forward_iterator forw_iter_t, std::sentinel_for< forw_iter_t > sentinel_t, typename Value> |
| auto | upper_bound (forw_iter_t first, sentinel_t last, const Value &value) |
| | upper_bound implementation for host/device
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar1_t, concepts::scalar scalar2_t> |
| constexpr array_t< scalar1_t, 2 > | operator* (const array_t< scalar1_t, 2 > &a, scalar2_t s) |
| | Multiply an array-backed vector by a scalar.
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar_t> |
| constexpr array_t< scalar_t, 2 > | operator- (const array_t< scalar_t, 2 > &a, const array_t< scalar_t, 2 > &b) |
| | Subtract array-backed vectors component-wise.
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar_t> |
| constexpr array_t< scalar_t, 2 > | operator+ (const array_t< scalar_t, 2 > &a, const array_t< scalar_t, 2 > &b) |
| | Add array-backed vectors component-wise.
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar_t, std::size_t N> |
| constexpr array_t< scalar_t, N > | operator* (const array_t< scalar_t, N > &a, scalar_t s) noexcept |
| | Multiply an SoA vector by a scalar or another compatible vector.
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar_t, std::size_t N> |
| constexpr array_t< scalar_t, N > | operator/ (const array_t< scalar_t, N > &a, const array_t< scalar_t, N > &b) noexcept |
| | Divide compatible SoA vectors component-wise.
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar_t, std::size_t N> |
| constexpr array_t< scalar_t, N > | operator- (const array_t< scalar_t, N > &a, const array_t< scalar_t, N > &b) noexcept |
| | Subtract compatible SoA vectors component-wise.
|
| template<template< typename, std::size_t > class array_t, concepts::scalar scalar_t, std::size_t N> |
| constexpr array_t< scalar_t, N > | operator+ (const array_t< scalar_t, N > &a, const array_t< scalar_t, N > &b) noexcept |
| | Add compatible SoA vectors component-wise.
|