|
|
using | algebra_type = typename base_surface_t::algebra_type |
| | Algebra backend used for surface tracking calculations.
|
|
using | context = typename base_surface_t::context |
| | Geometry context type used to resolve contextual transforms.
|
|
using | point2_type = typename base_surface_t::point2_type |
| | Two-dimensional local point type.
|
|
using | point3_type = typename base_surface_t::point3_type |
| | Three-dimensional point type.
|
|
using | scalar_type = typename base_surface_t::scalar_type |
| | Scalar type used for track parameters and geometry values.
|
|
using | transform3_type = typename base_surface_t::transform3_type |
| | Transform type used by the underlying surface.
|
|
using | vector3_type = typename base_surface_t::vector3_type |
| | Three-dimensional vector type.
|
|
using | algebra_type |
| | Algebra backend used by the detector geometry.
|
|
using | context |
| | Geometry context type used for contextual transforms.
|
|
using | point2_type |
| | Two-dimensional local point type.
|
|
using | point3_type |
| | Three-dimensional point type.
|
|
using | scalar_type |
| | Scalar type used for geometry calculations.
|
|
using | transform3_type |
| | Transform type used to place the surface.
|
|
using | vector3_type |
| | Three-dimensional vector type.
|
|
| constexpr | tracking_surface (const base_surface_t sf) |
| | Decorate a geometric surface with tracking functionality.
|
| constexpr auto | bound_to_free_jacobian (const context &ctx, const bound_param_vector_type &bound_vec) const |
| constexpr auto | bound_to_free_vector (const context &ctx, const bound_param_vector_type &bound_vec) const |
| constexpr auto | free_to_bound_jacobian (const context &ctx, const free_param_vector_type &free_vec) const |
| constexpr auto | free_to_bound_vector (const context &ctx, const free_param_vector_type &free_vec) const |
| constexpr auto | free_to_path_derivative (const context &ctx, const vector3_type &pos, const vector3_type &dir, const vector3_type &dtds) const |
template<typename detector_type = detector_t>
requires (!std::is_const_v<detector_type>) |
| constexpr | operator tracking_surface< const detector_type > () const |
| | Conversion to surface interface around constant detector type, which has no semantic difference (the detector is always const internally).
|
| constexpr auto | path_correction (const context &ctx, const vector3_type &pos, const vector3_type &dir, const vector3_type &dtds, const scalar_type dqopds) const |
|
| surface ()=delete |
| | Not allowed: always needs a detector and a descriptor.
|
| constexpr auto | boundary (std::size_t index) const |
| constexpr auto | center (const context &ctx) const -> point3_type |
| constexpr auto | centroid () const -> point3_type |
| constexpr auto | extra () const -> dindex |
| constexpr point2_type | global_to_bound (const context &ctx, const point3_type &global, const vector3_type &dir) const |
| constexpr point3_type | global_to_local (const context &ctx, const point3_type &global, const vector3_type &dir) const |
| constexpr bool | has_material () const |
| constexpr auto | id () const -> surface_id |
| constexpr auto | identifier () const -> geometry::identifier |
| constexpr auto | index () const -> dindex |
| constexpr bool | is_inside (const point_t &loc_p, const scalar_type tol) const |
| constexpr auto | is_passive () const -> bool |
| constexpr auto | is_portal () const -> bool |
| constexpr auto | is_sensitive () const -> bool |
| constexpr point3_type | local_to_global (const context &ctx, const point_t &local, const vector3_type &dir) const |
| constexpr const material< scalar_type > * | material_parameters (const point2_type &loc_p) const |
| std::size_t | n_masks () const |
| constexpr auto | normal (const context &ctx, const point_t &p) const -> vector3_type |
| constexpr | operator surface< const detector_type > () const |
| | Allow conversion from surface<detector_t> to surface<const detector_t>, which has no semantic difference (the detector is always const internally).
|
| constexpr auto | operator== (const surface &rhs) const -> bool |
| | Equality operator.
|
| bool | self_check (std::ostream &os) const |
| | Do a consistency check on the surface after building the detector.
|
| constexpr auto | shape_id () const |
| std::string | shape_name () const |
| constexpr auto | source () const |
| constexpr auto | transform (const context &ctx) const -> const transform3_type & |
| constexpr auto | visit_mask (Args &&...args) const |
| | Call a functor on the surfaces mask with additional arguments.
|
| constexpr auto | visit_material (Args &&...args) const |
| | Call a functor on the surfaces material with additional arguments.
|
| constexpr auto | volume () const -> dindex |
| constexpr auto | volume_links () const |
template<concepts::detector det_t>
class detray::tracking_surface< det_t >
Facade for a detray detector surface with extra tracking capabilities.