ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::test::detector_scan_config< track_generator_t, algebra_t > Struct Template Reference

Configuration for a detector scan test. More...

#include <detray/test/validation/detector_scan_config.hpp>

Inheritance diagram for detray::test::detector_scan_config< track_generator_t, algebra_t >:
[legend]
Collaboration diagram for detray::test::detector_scan_config< track_generator_t, algebra_t >:
[legend]

Public Types

using base_type = detray::test::configuration<scalar_type>
 Base test configuration type.
using scalar_type = dscalar<algebra_t>
 Scalar type used by the scan.
using trk_gen_config_t = typename track_generator_t::configuration
 Track generator configuration type.
using vector3_type = dvector3D<algebra_t>
 Three-dimensional vector type used by the scan.

Public Member Functions

const std::string & name () const
 GettersGet the test name.
const std::string & intersection_file () const
 Get the intersection input file name.
const std::string & track_param_file () const
 Get the track parameter input file name.
scalar_type mask_tolerance () const
 Get the intersector mask tolerance.
const vector3_type & B_vector ()
 Get the magnetic field vector.
bool write_intersections () const
 Check whether intersections are written.
trk_gen_config_t & track_generator ()
 Get the mutable track generator configuration.
const trk_gen_config_t & track_generator () const
 Get the track generator configuration.
bool overlaps_removal () const
 Check whether overlap removal is enabled.
float overlaps_tol () const
 Get the overlap tolerance.
const auto & svg_style () const
 Get the SVG style.
detector_scan_config & name (const std::string_view n)
 SettersSet the test name.
detector_scan_config & intersection_file (const std::string_view f)
 Set the intersection input file name.
detector_scan_config & track_param_file (const std::string_view f)
 Set the track parameter input file name.
detector_scan_config & mask_tolerance (const scalar_type tol)
 Set the intersector mask tolerance.
detector_scan_config & B_vector (const vector3_type &B)
 Set the magnetic field vector.
detector_scan_config & B_vector (const scalar_type B0, const scalar_type B1, const scalar_type B2)
 Set the magnetic field vector components.
detector_scan_config & overlaps_removal (const bool o)
 Set whether overlap removal is enabled.
detector_scan_config & overlaps_tol (const scalar_type tol)
 Set the overlap tolerance.
detector_scan_config & write_intersections (const bool do_write)
 Set whether intersections are written.
Public Member Functions inherited from detray::test::configuration< dscalar< algebra_t > >
configuration & tol (scalar_t t)
 SettersSet the tolerance for floating point comparisons.
propagation::config & propagation ()
 Get the propagation configuration.

Public Attributes

vector3_type m_B
 B-field vector for helix.
std::string m_intersection_file {"truth_intersections"}
 Name of the input file, containing the complete ray scan traces.
scalar_type m_mask_tol {std::numeric_limits<scalar_type>::epsilon()}
 Mask tolerance for the intersectors.
std::string m_name {"detector_scan"}
 Name of the test.
bool m_overlaps_removal {true}
 Perform overlaps removal (needed for detector converted from ACTS).
float m_overlaps_tol {1e-4f * unit<float>::mm}
 Tolerance for overlaps.
detray::svgtools::styling::style m_style
 Visualization style to be applied to the svgs.
std::string m_track_param_file {"truth_trk_parameters"}
 Name of the input file containing track parameters.
trk_gen_config_t m_trk_gen_cfg {}
 Configuration of the ray generator.
bool m_write_inters {false}
 Write intersection points for plotting.
Public Attributes inherited from detray::test::configuration< dscalar< algebra_t > >
scalar_t m_tolerance
 General testingTolerance to compare two floating point values.
scalar_t inf
 Shorthand for infinity.
scalar_t epsilon
 Shorthand for the floating point epsilon.
propagation::config m_prop_cfg
 Propagation.

Detailed Description

template<typename track_generator_t, concepts::algebra algebra_t>
struct detray::test::detector_scan_config< track_generator_t, algebra_t >

Configuration for a detector scan test.

Member Function Documentation

◆ B_vector() [1/3]

template<typename track_generator_t, concepts::algebra algebra_t>
const vector3_type & detray::test::detector_scan_config< track_generator_t, algebra_t >::B_vector ( )

Get the magnetic field vector.

Returns
The magnetic field vector.

◆ B_vector() [2/3]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::B_vector ( const scalar_type B0,
const scalar_type B1,
const scalar_type B2 )

Set the magnetic field vector components.

Parameters
B0First field component.
B1Second field component.
B2Third field component.
Returns
This configuration.

◆ B_vector() [3/3]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::B_vector ( const vector3_type & B)

Set the magnetic field vector.

Parameters
BNew field vector.
Returns
This configuration.

◆ intersection_file() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
const std::string & detray::test::detector_scan_config< track_generator_t, algebra_t >::intersection_file ( ) const

Get the intersection input file name.

Returns
The intersection input file name.

◆ intersection_file() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::intersection_file ( const std::string_view f)

Set the intersection input file name.

Parameters
fNew file name.
Returns
This configuration.

◆ mask_tolerance() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
scalar_type detray::test::detector_scan_config< track_generator_t, algebra_t >::mask_tolerance ( ) const

Get the intersector mask tolerance.

Returns
The intersector mask tolerance.

◆ mask_tolerance() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::mask_tolerance ( const scalar_type tol)

Set the intersector mask tolerance.

Parameters
tolNew tolerance.
Returns
This configuration.

◆ name() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
const std::string & detray::test::detector_scan_config< track_generator_t, algebra_t >::name ( ) const

GettersGet the test name.

Returns
The configured test name.

◆ name() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::name ( const std::string_view n)

SettersSet the test name.

Parameters
nNew test name.
Returns
This configuration.

◆ overlaps_removal() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
bool detray::test::detector_scan_config< track_generator_t, algebra_t >::overlaps_removal ( ) const

Check whether overlap removal is enabled.

Returns
Whether overlap removal is enabled.

◆ overlaps_removal() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::overlaps_removal ( const bool o)

Set whether overlap removal is enabled.

Parameters
oWhether to remove overlaps.
Returns
This configuration.

◆ overlaps_tol() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
float detray::test::detector_scan_config< track_generator_t, algebra_t >::overlaps_tol ( ) const

Get the overlap tolerance.

Returns
The overlap tolerance.

◆ overlaps_tol() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::overlaps_tol ( const scalar_type tol)

Set the overlap tolerance.

Parameters
tolNew tolerance.
Returns
This configuration.

◆ svg_style()

template<typename track_generator_t, concepts::algebra algebra_t>
const auto & detray::test::detector_scan_config< track_generator_t, algebra_t >::svg_style ( ) const

Get the SVG style.

Returns
The SVG style.

◆ track_generator() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
trk_gen_config_t & detray::test::detector_scan_config< track_generator_t, algebra_t >::track_generator ( )

Get the mutable track generator configuration.

Returns
The mutable track generator configuration.

◆ track_generator() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
const trk_gen_config_t & detray::test::detector_scan_config< track_generator_t, algebra_t >::track_generator ( ) const

Get the track generator configuration.

Returns
The track generator configuration.

◆ track_param_file() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
const std::string & detray::test::detector_scan_config< track_generator_t, algebra_t >::track_param_file ( ) const

Get the track parameter input file name.

Returns
The track parameter input file name.

◆ track_param_file() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::track_param_file ( const std::string_view f)

Set the track parameter input file name.

Parameters
fNew file name.
Returns
This configuration.

◆ write_intersections() [1/2]

template<typename track_generator_t, concepts::algebra algebra_t>
bool detray::test::detector_scan_config< track_generator_t, algebra_t >::write_intersections ( ) const

Check whether intersections are written.

Returns
Whether intersections are written.

◆ write_intersections() [2/2]

template<typename track_generator_t, concepts::algebra algebra_t>
detector_scan_config & detray::test::detector_scan_config< track_generator_t, algebra_t >::write_intersections ( const bool do_write)

Set whether intersections are written.

Parameters
do_writeWhether to write intersections.
Returns
This configuration.

Member Data Documentation

◆ m_B

template<typename track_generator_t, concepts::algebra algebra_t>
vector3_type detray::test::detector_scan_config< track_generator_t, algebra_t >::m_B
Initial value:
static constexpr scalar_t T
Magnetic field, native unit GeV/(e*mm).
Definition units.hpp:108

B-field vector for helix.

◆ m_style

template<typename track_generator_t, concepts::algebra algebra_t>
detray::svgtools::styling::style detray::test::detector_scan_config< track_generator_t, algebra_t >::m_style
Initial value:
=
const styling::style style
Complete style configuration using the Tableau colorblind palette.
Definition styling.hpp:316

Visualization style to be applied to the svgs.