ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::MultiStepperSurfaceReached Struct Reference

#include <Acts/Propagator/MultiStepperAborters.hpp>

Inheritance diagram for Acts::MultiStepperSurfaceReached:
[legend]
Collaboration diagram for Acts::MultiStepperSurfaceReached:
[legend]

Public Member Functions

 MultiStepperSurfaceReached ()=default
template<typename propagator_state_t, typename stepper_t, typename navigator_t>
bool checkAbort (propagator_state_t &state, const stepper_t &stepper, const navigator_t &navigator, const Logger &logger) const
 boolean operator for abort condition without using the result
Public Member Functions inherited from Acts::ForcedSurfaceReached
 ForcedSurfaceReached ()
Public Member Functions inherited from Acts::SurfaceReached
 SurfaceReached ()=default
 SurfaceReached (double nLimit)
 Constructor with custom near limit.
template<typename propagator_state_t, typename stepper_t, typename navigator_t>
bool checkAbort (propagator_state_t &state, const stepper_t &stepper, const navigator_t &navigator, const Logger &logger) const
 boolean operator for abort condition without using the result

Public Attributes

bool averageOnSurface = true
 If this is set, we are also happy if the mean of the components is on the surface.
double averageOnSurfaceTolerance = 0.2
 A configurable tolerance within which distance to the intersection we consider the surface as reached.
Public Attributes inherited from Acts::SurfaceReached
BoundaryTolerance boundaryTolerance = BoundaryTolerance::None()
 Boundary tolerance for surface intersection checks.
double nearLimit = -100 * UnitConstants::um
 Distance limit to discard intersections "behind us".
const Surfacesurface = nullptr
 Target surface to reach for propagation termination.

Constructor & Destructor Documentation

◆ MultiStepperSurfaceReached()

Acts::MultiStepperSurfaceReached::MultiStepperSurfaceReached ( )
default

Member Function Documentation

◆ checkAbort()

template<typename propagator_state_t, typename stepper_t, typename navigator_t>
bool Acts::MultiStepperSurfaceReached::checkAbort ( propagator_state_t & state,
const stepper_t & stepper,
const navigator_t & navigator,
const Logger & logger ) const

boolean operator for abort condition without using the result

Template Parameters
propagator_state_tType of the propagator state
stepper_tType of the stepper
navigator_tType of the navigator
Parameters
[in,out]stateThe propagation state object
[in]stepperStepper used for propagation
[in]navigatorNavigator used for the propagation
loggera logger instance

Member Data Documentation

◆ averageOnSurface

bool Acts::MultiStepperSurfaceReached::averageOnSurface = true

If this is set, we are also happy if the mean of the components is on the surface.

How the averaging is performed depends on the stepper implementation

◆ averageOnSurfaceTolerance

double Acts::MultiStepperSurfaceReached::averageOnSurfaceTolerance = 0.2

A configurable tolerance within which distance to the intersection we consider the surface as reached.

Has no effect if averageOnSurface is false