Analysis Software
Documentation for sPHENIX simulation software
|
These functions perform the transport of a covariance matrix using given Jacobians. The required data is provided by the stepper object with some additional data. Since this is a purely algebraic problem the calculations are identical for StraightLineStepper
and EigenStepper
. As a consequence the methods can be located in a separate file.
More...
Namespaces | |
namespace | Test |
namespace | VerticesHelper |
Helper methods for polyhedron vertices drawing and inside/outside checks. | |
Classes | |
struct | CorrectedFreeToBoundTransformer |
Corrected free to bound transform class based on covariance matrix sqrt root in UKF: https://doi.org/10.1117/12.280797. More... | |
struct | covariance_helper |
check and correct covariance matrix More... | |
struct | DynamicColumnBase |
struct | DynamicColumn |
struct | DynamicColumn< bool > |
struct | UnrestrictedParameterTraits |
Traits class for an unrestricted parameter. More... | |
struct | RestrictedParameterTraits |
struct | CyclicParameterTraits |
struct | PhiBoundParameterLimits |
struct | ThetaBoundParameterLimits |
struct | ParameterTraitsImpl< BoundIndices, BoundIndices::eBoundPhi > |
struct | ParameterTraitsImpl< BoundIndices, BoundIndices::eBoundTheta > |
struct | ParameterTraitsImpl< BoundIndices, kIndex > |
struct | ParameterTraitsImpl< FreeIndices, kIndex > |
struct | ParametersTraitsImpl< BoundIndices > |
struct | ParametersTraitsImpl< FreeIndices > |
struct | visit_measurement_callable |
struct | is_same_template |
struct | is_same_template< T, T > |
class | SmallObjectCache |
Small opaque cache type which uses small buffer optimization. More... | |
struct | abort_list_impl< first, others...> |
struct | abort_list_impl< last > |
This is the check call on the a last of all conditions. More... | |
struct | abort_list_impl<> |
This is the empty call list - never abort. More... | |
struct | action_list_impl< first, others...> |
struct | action_list_impl< last > |
struct | action_list_impl<> |
The empty action list call implementation. More... | |
struct | VoidAuctioneer |
Auctioneer that takes all extensions as valid that make a valid bid. More... | |
struct | FirstValidAuctioneer |
Auctioneer that states only the first one that makes a valid bid. More... | |
struct | HighestValidAuctioneer |
Auctioneer that makes only the highest bidding extension valid. If multiple elements have the same int, the first one with this value is picked. More... | |
struct | GenericDefaultExtension |
Default evaluater of the k_i's and elements of the transport matrix D of the RKN4 stepping. This is a pure implementation by textbook. More... | |
struct | GenericDenseEnvironmentExtension |
Evaluater of the k_i's and elements of the transport matrix D of the RKN4 stepping. This implementation involves energy loss due to ioninisation, bremsstrahlung, pair production and photonuclear interaction in the propagation and the jacobian. These effects will only occur if the propagation is in a TrackingVolume with attached material. More... | |
struct | stepper_bound_parameters |
struct | stepper_curvilinear_parameters |
struct | PointwiseMaterialInteraction |
Struct to handle pointwise material interaction. More... | |
struct | Step |
The step information for recording. More... | |
struct | SteppingLogger |
a step length logger for debugging the stepping More... | |
struct | VoidNavigator |
The void navigator struct as a default navigator. More... | |
struct | VolumeMaterialInteraction |
Struct to handle volume material interaction. More... | |
struct | FacesHelper |
Helper for writing out faces for polyhedron representation. More... | |
struct | IntersectionHelper2D |
struct | GaussianComponent |
struct | GsfResult |
struct | GsfActor |
The actor carrying out the GSF algorithm. More... | |
class | ScopedGsfInfoPrinterAndChecker |
struct | MultiTrajectoryProjector |
Projector type which maps a MultiTrajectory-Index to a tuple of [weight, parameters, covariance]. Therefore, it contains a MultiTrajectory and for now a std::map for the weights. More... | |
class | SymmetricKLDistanceMatrix |
Class representing a symmetric distance matrix. More... | |
struct | IsMultiComponentBoundParameters |
struct | IsMultiComponentBoundParameters< MultiComponentBoundTrackParameters > |
class | NeighborHoodIndices |
exception | Axis< AxisType::Equidistant, bdt > |
calculate bin indices for an equidistant binning More... | |
exception | Axis< AxisType::Variable, bdt > |
calculate bin indices for a variable binning More... | |
struct | Extendable |
class | Grid |
class for describing a regular multi-dimensional grid More... | |
class | GlobalNeighborHoodIndices |
struct | grid_helper_impl |
struct | grid_helper_impl< 0u > |
struct | grid_helper |
helper functions for grid-related operations More... | |
struct | can_interpolate |
check types for requirements needed by interpolation More... | |
struct | get_dimension |
determine number of dimension from power of 2 More... | |
struct | result_type_extractor |
struct | action_type_extractor |
struct | RealQuadraticEquation |
class | FixedSizeSubspace |
struct | CyclicAngle |
Angle descriptions for the combineBoundGaussianMixture function. More... | |
struct | CyclicRadiusAngle |
struct | AngleDescription |
A compile time map to provide angle descriptions for different surfaces. More... | |
struct | AngleDescription< Surface::Disc > |
struct | AngleDescription< Surface::Cylinder > |
struct | RefHolder |
Internal holder type for referencing a backend without ownership. More... | |
struct | ConstRefHolder |
struct | ValueHolder |
Internal holder type holding a backend container by value. More... | |
struct | nonesuch |
Helper struct which cannot be constructed (or destroyed) at all. More... | |
struct | detector |
struct | detector< Default, std::void_t< Op< Args...> >, Op, Args...> |
class | CantorEdge |
struct | TorchTypeMap |
So far this is only needed for integers. More... | |
struct | TorchTypeMap< int64_t > |
struct | TorchTypeMap< int32_t > |
struct | TorchTypeMap< int16_t > |
struct | TorchTypeMap< int8_t > |
struct | TorchTypeMap< float > |
struct | TorchTypeMap< double > |
Typedefs | |
template<typename index_t , index_t kIndex> | |
using | ParameterTraits = typename ParameterTraitsImpl< index_t, kIndex >::Type |
template<typename stepper_t > | |
using | stepper_bound_parameters_type_t = typename stepper_bound_parameters< stepper_t >::type |
template<typename stepper_t > | |
using | stepper_curvilinear_parameters_type_t = typename stepper_curvilinear_parameters< stepper_t >::type |
using | RotationToAxes = std::tuple< RotationMatrix3, RotationMatrix3, RotationMatrix3 > |
using | EquidistantAxis = Axis< AxisType::Equidistant > |
using | VariableAxis = Axis< AxisType::Variable > |
template<typename T > | |
using | result_type_t = typename result_type_extractor::extractor_impl< T > |
template<typename T > | |
using | action_type_t = typename action_type_extractor::extractor_impl< T > |
using | TrackStateTraits = TrackStateTraits< MultiTrajectoryTraits::MeasurementSizeMax, true > |
Enumerations | |
enum | StatesType |
enum | AxisBoundaryType |
enum | AxisType |
Enum which determines the binning type of the axis. More... | |
Functions | |
template<typename index_container_t , typename measured_t , typename residuals_t > | |
void | calculateResiduals (BoundIndices size, const index_container_t &indices, const BoundVector &reference, const Eigen::MatrixBase< measured_t > &measured, Eigen::MatrixBase< residuals_t > &residuals) |
template<typename index_container_t , typename measured_t , typename residuals_t > | |
void | calculateResiduals (FreeIndices size, const index_container_t &indices, const FreeVector &reference, const Eigen::MatrixBase< measured_t > &measured, Eigen::MatrixBase< residuals_t > &residuals) |
void | printBoundParameters (std::ostream &os, const Surface &surface, const BoundVector ¶ms, const BoundSquareMatrix *cov=nullptr) |
void | printFreeParameters (std::ostream &os, const FreeVector ¶ms, const FreeMatrix *cov=nullptr) |
void | printMeasurement (std::ostream &os, BoundIndices size, const uint8_t *indices, const ActsScalar *params, const ActsScalar *cov) |
void | printMeasurement (std::ostream &os, FreeIndices size, const uint8_t *indices, const ActsScalar *params, const ActsScalar *cov) |
FreeVector | transformBoundToFreeParameters (const Surface &surface, const GeometryContext &geoCtx, const BoundVector &boundParams) |
Result< BoundVector > | transformFreeToBoundParameters (const FreeVector &freeParams, const Surface &surface, const GeometryContext &geoCtx, ActsScalar tolerance=s_onSurfaceTolerance) |
Result< BoundVector > | transformFreeToBoundParameters (const Vector3 &position, ActsScalar time, const Vector3 &direction, ActsScalar qOverP, const Surface &surface, const GeometryContext &geoCtx, ActsScalar tolerance=s_onSurfaceTolerance) |
BoundVector | transformFreeToCurvilinearParameters (ActsScalar time, const Vector3 &direction, ActsScalar qOverP) |
BoundVector | transformFreeToCurvilinearParameters (ActsScalar time, ActsScalar phi, ActsScalar theta, ActsScalar qOverP) |
MaterialSlab | combineSlabs (const MaterialSlab &slab1, const MaterialSlab &slab2) |
Result< std::tuple < BoundTrackParameters, BoundMatrix, double > > | boundState (const GeometryContext &geoContext, BoundSquareMatrix &covarianceMatrix, BoundMatrix &jacobian, FreeMatrix &transportJacobian, FreeVector &derivatives, BoundToFreeMatrix &jacToGlobal, FreeVector ¶meters, const ParticleHypothesis &particleHypothesis, bool covTransport, double accumulatedPath, const Surface &surface, const FreeToBoundCorrection &freeToBoundCorrection=FreeToBoundCorrection(false)) |
It does not check if the transported state is at the surface, this needs to be guaranteed by the propagator. | |
std::tuple < CurvilinearTrackParameters, BoundMatrix, double > | curvilinearState (BoundSquareMatrix &covarianceMatrix, BoundMatrix &jacobian, FreeMatrix &transportJacobian, FreeVector &derivatives, BoundToFreeMatrix &jacToGlobal, const FreeVector ¶meters, const ParticleHypothesis &particleHypothesis, bool covTransport, double accumulatedPath) |
This creates a curvilinear state. | |
void | transportCovarianceToBound (const GeometryContext &geoContext, BoundSquareMatrix &boundCovariance, BoundMatrix &fullTransportJacobian, FreeMatrix &freeTransportJacobian, FreeVector &freeToPathDerivatives, BoundToFreeMatrix &boundToFreeJacobian, FreeVector &freeParameters, const Surface &surface, const FreeToBoundCorrection &freeToBoundCorrection=FreeToBoundCorrection(false)) |
Method for on-demand covariance transport of a bound/curvilinear to another bound representation. | |
void | transportCovarianceToCurvilinear (BoundSquareMatrix &boundCovariance, BoundMatrix &fullTransportJacobian, FreeMatrix &freeTransportJacobian, FreeVector &freeToPathDerivatives, BoundToFreeMatrix &boundToFreeJacobian, const Vector3 &direction) |
Method for on-demand covariance transport of a bound/curvilinear to a new curvilinear representation. | |
FreeToBoundMatrix | freeToCurvilinearJacobian (const Vector3 &direction) |
Evaluate the projection Jacobian from free to curvilinear parameters without transport jacobian. | |
BoundToFreeMatrix | curvilinearToFreeJacobian (const Vector3 &direction) |
Evaluate the projection Jacobian from curvilinear to free parameters without transport jacobian. | |
ActsMatrix< 7, 8 > | directionToAnglesJacobian (const Vector3 &direction) |
This function calculates the jacobian from a free parameterisation to a mixed one with angular representation. | |
ActsMatrix< 8, 7 > | anglesToDirectionJacobian (const Vector3 &direction) |
This function calculates the jacobian from a free parameterisation to a mixed one with angular representation. | |
BoundMatrix | boundToBoundTransportJacobian (const GeometryContext &geoContext, const FreeVector &freeParameters, const BoundToFreeMatrix &boundToFreeJacobian, const FreeMatrix &freeTransportJacobian, const FreeVector &freeToPathDerivatives, const Surface &surface) |
This function calculates the full transport jacobian from a bound curvilinear representation to a new bound representation. | |
BoundMatrix | boundToCurvilinearTransportJacobian (const Vector3 &direction, const BoundToFreeMatrix &boundToFreeJacobian, const FreeMatrix &freeTransportJacobian, const FreeVector &freeToPathDerivatives) |
This function calculates the full jacobian from a given bound/curvilinear parameterisation from a surface to new curvilinear parameterisation. | |
BoundToFreeMatrix | boundToFreeTransportJacobian (const BoundToFreeMatrix &boundToFreeJacobian, const FreeMatrix &freeTransportJacobian) |
This function calculates the full jacobian from a given bound/curvilinear parameterisation from a new free parameterisation. | |
FreeToBoundMatrix | freeToBoundTransportJacobian (const GeometryContext &geoContext, const FreeVector &freeParameters, const ActsMatrix< 7, 8 > &directionToAnglesJacobian, const ActsMatrix< 8, 7 > &anglesToDirectionJacobian, const FreeMatrix &freeTransportJacobian, const FreeVector &freeToPathDerivatives, const Surface &surface) |
This function calculates the full jacobian from a given free parameterisation to a new curvilinear bound parameterisation. | |
FreeToBoundMatrix | freeToCurvilinearTransportJacobian (const Vector3 &direction, const ActsMatrix< 7, 8 > &directionToAnglesJacobian, const ActsMatrix< 8, 7 > &anglesToDirectionJacobian, const FreeMatrix &freeTransportJacobian, const FreeVector &freeToPathDerivatives) |
This function calculates the full transport jacobian from a free parameterisation to a bound one. Since a variation of the start parameters within a given uncertainty would lead to a variation of the end parameters, these need to be propagated onto the target surface. This an approximated approach to treat the (assumed) small change. | |
FreeMatrix | freeToFreeTransportJacobian (const ActsMatrix< 7, 8 > &directionToAnglesJacobian, const ActsMatrix< 8, 7 > &anglesToDirectionJacobian, const FreeMatrix &freeTransportJacobian) |
This function calculates the free transfport jacobian from a free parameterisation. | |
template<typename path_aborter_t , typename propagator_state_t , typename stepper_t > | |
void | setupLoopProtection (propagator_state_t &state, const stepper_t &stepper, path_aborter_t &pathAborter, bool releaseLimit, const Logger &logger) |
Estimate the loop protection limit. | |
template<typename stepper_t > | |
Acts::Intersection3D::Status | updateSingleSurfaceStatus (const stepper_t &stepper, typename stepper_t::State &state, const Surface &surface, Direction navDir, const BoundaryCheck &bcheck, ActsScalar surfaceTolerance, const Logger &logger) |
template<typename stepper_t , typename object_intersection_t > | |
void | updateSingleStepSize (typename stepper_t::State &state, const object_intersection_t &oIntersection, bool release=true) |
RotationToAxes | rotationToLocalAxesDerivative (const RotationMatrix3 &rotation) |
Evaluate the derivative of local frame axes vector w.r.t. its rotation around global x/y/z axis : add parameter for rotation axis order. | |
std::unordered_map< int, std::vector< int > > | clusterDuplicateTracks (const std::multimap< int, std::pair< int, std::vector< int >>> &trackMap) |
void | transformComponent (const GaussianComponent &cmp, double &transformed_weight, double &transformed_mean, double &transformed_var) |
auto | inverseTransformComponent (double transformed_weight, double transformed_mean, double transformed_var) |
template<typename component_range_t , typename projector_t > | |
bool | weightsAreNormalized (const component_range_t &cmps, const projector_t &proj, double tol=s_normalizationTolerance) |
template<typename component_range_t , typename projector_t > | |
void | normalizeWeights (component_range_t &cmps, const projector_t &proj) |
ActsScalar | calculateDeterminant (const double *fullCalibrated, const double *fullCalibratedCovariance, TrackStateTraits< MultiTrajectoryTraits::MeasurementSizeMax, true >::Covariance predictedCovariance, TrackStateTraits< MultiTrajectoryTraits::MeasurementSizeMax, true >::Projector projector, unsigned int calibratedSize) |
template<typename traj_t > | |
void | computePosteriorWeights (const traj_t &mt, const std::vector< MultiTrajectoryTraits::IndexType > &tips, std::map< MultiTrajectoryTraits::IndexType, double > &weights) |
std::ostream & | operator<< (std::ostream &os, StatesType type) |
template<typename traj_t , typename parameters_t = BoundTrackParameters> | |
std::pair< ActsDynamicMatrix, std::unordered_map< size_t, size_t > > | globalTrackParametersCovariance (const traj_t &multiTraj, const size_t &entryIndex) |
template<typename propagator_state_t , typename stepper_t , typename extensions_t , typename traj_t > | |
auto | kalmanHandleMeasurement (const CalibrationContext &calibrationContext, propagator_state_t &state, const stepper_t &stepper, const extensions_t &extensions, const Surface &surface, const SourceLink &source_link, traj_t &fittedStates, const size_t lastTrackIndex, bool doCovTransport, const Logger &logger, const FreeToBoundCorrection &freeToBoundCorrection=FreeToBoundCorrection(false)) -> Result< typename traj_t::TrackStateProxy > |
template<typename propagator_state_t , typename stepper_t , typename traj_t > | |
auto | kalmanHandleNoMeasurement (propagator_state_t &state, const stepper_t &stepper, const Surface &surface, traj_t &fittedStates, const size_t lastTrackIndex, bool doCovTransport, const Logger &logger, const FreeToBoundCorrection &freeToBoundCorrection=FreeToBoundCorrection(false)) -> Result< typename traj_t::TrackStateProxy > |
template<typename component_t , typename component_projector_t > | |
auto | computeSymmetricKlDivergence (const component_t &a, const component_t &b, const component_projector_t &proj) |
template<typename component_t , typename component_projector_t , typename angle_desc_t > | |
auto | mergeComponents (const component_t &a, const component_t &b, const component_projector_t &proj, const angle_desc_t &angle_desc) |
template<typename traj_t > | |
void | voidFitterCalibrator (const GeometryContext &, const CalibrationContext &, const SourceLink &, typename traj_t::TrackStateProxy) |
template<typename traj_t > | |
Result< void > | voidFitterUpdater (const GeometryContext &, typename traj_t::TrackStateProxy trackState, Direction, const Logger &) |
template<typename traj_t > | |
Result< void > | voidFitterSmoother (const GeometryContext &, traj_t &trackStates, size_t entry, const Logger &) |
template<typename traj_t > | |
bool | voidOutlierFinder (typename traj_t::ConstTrackStateProxy) |
template<typename traj_t > | |
bool | voidReverseFilteringLogic (typename traj_t::ConstTrackStateProxy) |
const Surface * | voidSurfaceAccessor (const SourceLink &) |
template<typename T > | |
constexpr T | ipow (T num, unsigned int pow) |
template<typename T > | |
T | wrap_periodic (T value, T start, T range) |
Wrap a periodic value back into the nominal range. | |
template<typename T > | |
T | difference_periodic (T lhs, T rhs, T range) |
template<typename T > | |
T | radian_pos (T x) |
Calculate the equivalent angle in the [0, 2*pi) range. | |
template<typename T > | |
T | radian_sym (T x) |
Calculate the equivalent angle in the [-pi, pi) range. | |
template<typename T > | |
std::pair< T, T > | normalizePhiTheta (T phi, T theta) |
template<typename Callable > | |
auto | angleDescriptionSwitch (const Surface &surface, Callable &&callable) |
template<int D, typename components_t , typename projector_t , typename angle_desc_t > | |
auto | gaussianMixtureCov (const components_t components, const ActsVector< D > &mean, double sumOfWeights, projector_t &&projector, const angle_desc_t &angleDesc) |
template<typename components_t , typename projector_t = Identity, typename angle_desc_t = AngleDescription<Surface::Plane>::Desc> | |
auto | gaussianMixtureMeanCov (const components_t components, projector_t &&projector=projector_t{}, const angle_desc_t &angleDesc=angle_desc_t{}) |
Combine multiple components into one representative track state object. The function takes iterators to allow for arbitrary ranges to be combined. The dimension of the vectors is infeared from the inputs. | |
constexpr HashedString | fnv1a_32 (char const *s, std::size_t count) |
constexpr HashedString | fnv1a_32 (std::string_view s) |
constexpr int | length (const char *str) |
template<typename intersection_t , typename logger_t = std::false_type> | |
bool | checkIntersection (const intersection_t &intersection, double pLimit, double oLimit, double tolerance, const Logger &logger=getDummyLogger()) |
double | roundWithPrecision (double val, int precision) |
ActsScalar | calculateDeterminant (const double *fullCalibrated, const double *fullCalibratedCovariance, TrackStateTraits::Covariance predictedCovariance, TrackStateTraits::Projector projector, unsigned int calibratedSize) |
at::Tensor | postprocessEdgeTensor (at::Tensor edges, bool removeSelfLoops=true, bool removeDuplicates=true, bool flipDirections=false) |
Post process edges. | |
at::Tensor | buildEdgesFRNN (at::Tensor &embedFeatures, float rVal, int kVal, bool flipDirections=false) |
at::Tensor | buildEdgesKDTree (at::Tensor &embedFeatures, float rVal, int kVal, bool flipDirections=false) |
at::Tensor | buildEdges (at::Tensor &embedFeatures, float rVal, int kVal, bool flipDirections=false) |
template<typename T > | |
bool | operator== (const CantorEdge< T > &a, const CantorEdge< T > &b) |
template<typename T > | |
bool | operator< (const CantorEdge< T > &a, const CantorEdge< T > &b) |
template<typename T > | |
at::Tensor | vectorToTensor2D (std::vector< T > &vec, std::size_t cols) |
template<typename T > | |
std::vector< T > | tensor2DToVector (const at::Tensor &tensor) |
Variables | |
template<typename indices_t > | |
constexpr size_t | kParametersSize = ParametersTraitsImpl<indices_t>::kSize |
The maximum parameters vector size definable for an indices enum. | |
template<bool... values> | |
constexpr bool | all_of_v = all_of<values...>::value |
template<bool... values> | |
constexpr bool | any_of_v = any_of<values...>::value |
template<typename... Args> | |
constexpr bool | has_duplicates_v = has_duplicates<Args...>::value |
constexpr auto | type_collector |
template<typename helper , typename... items> | |
constexpr auto | type_collector_t |
template<typename T > | |
constexpr bool | has_result_type_v |
template<typename T > | |
constexpr bool | has_action_type_v |
These functions perform the transport of a covariance matrix using given Jacobians. The required data is provided by the stepper object with some additional data. Since this is a purely algebraic problem the calculations are identical for StraightLineStepper
and EigenStepper
. As a consequence the methods can be located in a separate file.
These functions perform the calculation of the Jacobians for the the covariance transport. This is a purely algebraic problem the calculations are identical for StraightLineStepper
and EigenStepper
. As a consequence the methods can be located in a separate file.
using Acts::detail::action_type_t = typedef typename action_type_extractor::extractor_impl<T> |
Meta function which gets the action for an aborter
T | The type to extract from |
Definition at line 107 of file type_collector.hpp.
View newest version in sPHENIX GitHub at line 107 of file type_collector.hpp
using Acts::detail::EquidistantAxis = typedef Axis<AxisType::Equidistant> |
Definition at line 40 of file AxisFwd.hpp.
View newest version in sPHENIX GitHub at line 40 of file AxisFwd.hpp
using Acts::detail::ParameterTraits = typedef typename ParameterTraitsImpl<index_t, kIndex>::Type |
Parameter traits for one specific parameter in one of the indices enums.
index_t | Parameter indices enum |
kIndex | Enum index value to identify a parameter |
This type resolves directly to one of the parameter traits classes defined above and allows for uniform access.
Definition at line 151 of file ParameterTraits.hpp.
View newest version in sPHENIX GitHub at line 151 of file ParameterTraits.hpp
using Acts::detail::result_type_t = typedef typename result_type_extractor::extractor_impl<T> |
Meta function which gets the result type from an action
T | The type to extract from |
Definition at line 92 of file type_collector.hpp.
View newest version in sPHENIX GitHub at line 92 of file type_collector.hpp
using Acts::detail::RotationToAxes = typedef std::tuple<RotationMatrix3, RotationMatrix3, RotationMatrix3> |
Definition at line 25 of file AlignmentHelper.hpp.
View newest version in sPHENIX GitHub at line 25 of file AlignmentHelper.hpp
using Acts::detail::stepper_bound_parameters_type_t = typedef typename stepper_bound_parameters<stepper_t>::type |
Definition at line 30 of file ParameterTraits.hpp.
View newest version in sPHENIX GitHub at line 30 of file ParameterTraits.hpp
using Acts::detail::stepper_curvilinear_parameters_type_t = typedef typename stepper_curvilinear_parameters<stepper_t>::type |
Definition at line 41 of file ParameterTraits.hpp.
View newest version in sPHENIX GitHub at line 41 of file ParameterTraits.hpp
using Acts::detail::TrackStateTraits = typedef TrackStateTraits<MultiTrajectoryTraits::MeasurementSizeMax, true> |
Definition at line 19 of file GsfUtils.cpp.
View newest version in sPHENIX GitHub at line 19 of file GsfUtils.cpp
using Acts::detail::VariableAxis = typedef Axis<AxisType::Variable> |
Definition at line 41 of file AxisFwd.hpp.
View newest version in sPHENIX GitHub at line 41 of file AxisFwd.hpp
Enum which determines how the axis handle its outer boundaries possible values values
Definition at line 21 of file AxisFwd.hpp.
View newest version in sPHENIX GitHub at line 21 of file AxisFwd.hpp
Enum which determines the binning type of the axis.
Definition at line 24 of file AxisFwd.hpp.
View newest version in sPHENIX GitHub at line 24 of file AxisFwd.hpp
Enumeration type to allow templating on the state we want to project on with a MultiTrajectory
Definition at line 208 of file GsfUtils.hpp.
View newest version in sPHENIX GitHub at line 208 of file GsfUtils.hpp
auto Acts::detail::angleDescriptionSwitch | ( | const Surface & | surface, |
Callable && | callable | ||
) |
Definition at line 57 of file GaussianMixtureReduction.hpp.
View newest version in sPHENIX GitHub at line 57 of file GaussianMixtureReduction.hpp
References bounds, Acts::Surface::Cylinder, Acts::Surface::Disc, Acts::CylinderBounds::eR, writeMapConfig::surface, and Acts::Surface::type().
Referenced by Acts::reduceMixtureWithKLDistance().
ActsMatrix< 8, 7 > Acts::detail::anglesToDirectionJacobian | ( | const Vector3 & | direction | ) |
This function calculates the jacobian from a free parameterisation to a mixed one with angular representation.
direction | The direction of the track |
Definition at line 88 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 88 of file JacobianEngine.cpp
References Acts::VectorHelpers::evaluateTrigonomics().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::CovarianceCache::CovarianceCache(), freeToBoundTransportJacobian(), and freeToCurvilinearTransportJacobian().
Result< BoundState > Acts::detail::boundState | ( | const GeometryContext & | geoContext, |
BoundSquareMatrix & | covarianceMatrix, | ||
BoundMatrix & | jacobian, | ||
FreeMatrix & | transportJacobian, | ||
FreeVector & | derivatives, | ||
BoundToFreeMatrix & | jacToGlobal, | ||
FreeVector & | parameters, | ||
const ParticleHypothesis & | particleHypothesis, | ||
bool | covTransport, | ||
double | accumulatedPath, | ||
const Surface & | surface, | ||
const FreeToBoundCorrection & | freeToBoundCorrection = FreeToBoundCorrection(false) |
||
) |
It does not check if the transported state is at the surface, this needs to be guaranteed by the propagator.
Create and return the bound state at the current position
[in] | geoContext | The geometry context |
[in,out] | covarianceMatrix | The covariance matrix of the state |
[in,out] | jacobian | Full jacobian since the last reset |
[in,out] | transportJacobian | Global jacobian since the last reset |
[in,out] | derivatives | Path length derivatives of the free, nominal parameters |
[in,out] | jacToGlobal | Projection jacobian of the last bound parametrisation to free parameters |
[in,out] | parameters | Free, nominal parametrisation |
[in] | particleHypothesis | Particle hypothesis |
[in] | covTransport | Decision whether the covariance transport should be performed |
[in] | accumulatedPath | Propagated distance |
[in] | surface | Target surface on which the state is represented |
[in] | freeToBoundCorrection | Correction for non-linearity effect during transform from free to bound |
Definition at line 267 of file CovarianceEngine.cpp.
View newest version in sPHENIX GitHub at line 267 of file CovarianceEngine.cpp
References Acts::Test::cov, Acts::Surface::getSharedPtr(), std::tr1::make_tuple(), testing::internal::move(), particleHypothesis, transformFreeToBoundParameters(), and transportCovarianceToBound().
Referenced by Acts::CombinatorialKalmanFilter< propagator_t, traj_t >::Actor< source_link_accessor_t, parameters_t >::addNonSourcelinkState(), Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::StraightLineStepper::boundState(), Acts::EigenStepper< extensionlist_t, auctioneer_t >::boundState(), Acts::MultiEigenStepperLoop< extensionlist_t, component_reducer_t, auctioneer_t >::ComponentProxy::boundState(), Acts::MultiEigenStepperLoop< extensionlist_t, component_reducer_t, auctioneer_t >::boundState(), Acts::CombinatorialKalmanFilter< propagator_t, traj_t >::Actor< source_link_accessor_t, parameters_t >::createSourceLinkTrackStates(), Acts::CombinatorialKalmanFilter< propagator_t, traj_t >::Actor< source_link_accessor_t, parameters_t >::filter(), Acts::Test::StepWiseActor::operator()(), and test_component_bound_state().
BoundMatrix Acts::detail::boundToBoundTransportJacobian | ( | const GeometryContext & | geoContext, |
const FreeVector & | freeParameters, | ||
const BoundToFreeMatrix & | boundToFreeJacobian, | ||
const FreeMatrix & | freeTransportJacobian, | ||
const FreeVector & | freeToPathDerivatives, | ||
const Surface & | surface | ||
) |
This function calculates the full transport jacobian from a bound curvilinear representation to a new bound representation.
[in] | geoContext | The geometry Context |
[in] | freeParameters | Free, nominal parametrisation |
[in] | boundToFreeJacobian | Jacobian from bound to free at start |
[in] | freeTransportJacobian | Transport jacobian free to free |
[in] | freeToPathDerivatives | Path length derivatives for free parameters |
[in] | surface | Target surface |
Definition at line 129 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 129 of file JacobianEngine.cpp
References Acts::Surface::freeToBoundJacobian(), and Acts::Surface::freeToPathDerivative().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::transportCovarianceToBound().
BoundMatrix Acts::detail::boundToCurvilinearTransportJacobian | ( | const Vector3 & | direction, |
const BoundToFreeMatrix & | boundToFreeJacobian, | ||
const FreeMatrix & | freeTransportJacobian, | ||
const FreeVector & | freeToPathDerivatives | ||
) |
This function calculates the full jacobian from a given bound/curvilinear parameterisation from a surface to new curvilinear parameterisation.
[in] | direction | Normalised direction vector |
[in] | boundToFreeJacobian | Jacobian from bound to free at start |
[in] | freeTransportJacobian | Transport jacobian free to free |
[in] | freeToPathDerivatives | Path length derivatives for free parameters |
surface
is only required if projected to bound parameters. In the case of curvilinear parameters the geometry and the position is known and the calculation can be simplifiedDefinition at line 148 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 148 of file JacobianEngine.cpp
References Acts::eFreePos0, and freeToCurvilinearJacobian().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::transportCovarianceToCurvilinear().
BoundToFreeMatrix Acts::detail::boundToFreeTransportJacobian | ( | const BoundToFreeMatrix & | boundToFreeJacobian, |
const FreeMatrix & | freeTransportJacobian | ||
) |
This function calculates the full jacobian from a given bound/curvilinear parameterisation from a new free parameterisation.
[in] | boundToFreeJacobian | Jacobian from bound to free at start |
[in] | freeTransportJacobian | Transport jacobian free to free |
Definition at line 165 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 165 of file JacobianEngine.cpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::transportCovarianceToFree().
at::Tensor Acts::detail::buildEdges | ( | at::Tensor & | embedFeatures, |
float | rVal, | ||
int | kVal, | ||
bool | flipDirections = false |
||
) |
Dispatches either to FRNN or KD-Tree based edge building
embedFeatures | Tensor of shape (n_nodes, embedding_dim) |
rVal | radius for NN search |
kVal | max number of neighbours in NN search |
flipDirections | if we want to randomly flip directions of the edges after the edge building |
Referenced by Acts::OnnxMetricLearning::buildEdgesWrapper().
at::Tensor Acts::detail::buildEdgesFRNN | ( | at::Tensor & | embedFeatures, |
float | rVal, | ||
int | kVal, | ||
bool | flipDirections = false |
||
) |
Edge building using FRNN and CUDA. Raises an exception if not built with CUDA
at::Tensor Acts::detail::buildEdgesKDTree | ( | at::Tensor & | embedFeatures, |
float | rVal, | ||
int | kVal, | ||
bool | flipDirections = false |
||
) |
Edge building using the Acts KD-Tree implementation Note that this implementation has no maximum number of neighbours in the NN search. kVal is only a hint for reserving memory
Referenced by BOOST_AUTO_TEST_CASE().
ActsScalar Acts::detail::calculateDeterminant | ( | const double * | fullCalibrated, |
const double * | fullCalibratedCovariance, | ||
TrackStateTraits::Covariance | predictedCovariance, | ||
TrackStateTraits::Projector | projector, | ||
unsigned int | calibratedSize | ||
) |
Definition at line 21 of file GsfUtils.cpp.
View newest version in sPHENIX GitHub at line 21 of file GsfUtils.cpp
References H, N, value, and Acts::visit_measurement().
ActsScalar Acts::detail::calculateDeterminant | ( | const double * | fullCalibrated, |
const double * | fullCalibratedCovariance, | ||
TrackStateTraits< MultiTrajectoryTraits::MeasurementSizeMax, true >::Covariance | predictedCovariance, | ||
TrackStateTraits< MultiTrajectoryTraits::MeasurementSizeMax, true >::Projector | projector, | ||
unsigned int | calibratedSize | ||
) |
|
inline |
Residuals between bound reference parameters and a measured subspace.
index_container_t | SequenceContainer for measured indices |
measured_t | Measured parameters vector type |
residuals_t | Residuals vector type |
[in] | size | Size of the measured parameters subspace |
[in] | indices | Indices of measured subspace, must have size entries |
[in] | reference | Reference bound parameters |
[in] | measured | Measured parameters subspace |
[out] | residuals | Resulting residuals in the measured subspace |
size
parameter is also used to allow the selection of the correct residuals methods depending on the parameters type. Definition at line 35 of file CalculateResiduals.hpp.
View newest version in sPHENIX GitHub at line 35 of file CalculateResiduals.hpp
References assert, Acts::eBoundPhi, Acts::eBoundSize, i, and size.
Referenced by Acts::Measurement< BoundIndices, 3 >::residuals().
|
inline |
Residuals between free reference parameters and a measured subspace.
index_container_t | SequenceContainer for measured inidices |
measured_t | Measured parameters vector type |
residuals_t | Residuals vector type |
[in] | size | Size of the measured parameters subspace |
[in] | indices | Indices of measured subspace, must have size entries |
[in] | reference | Reference free parameters |
[in] | measured | Measured parameters subspace |
[out] | residuals | Resulting residuals in the measured subspace |
size
parameter is also used to allow the selection of the correct residuals methods depending on the parameters type. Definition at line 80 of file CalculateResiduals.hpp.
View newest version in sPHENIX GitHub at line 80 of file CalculateResiduals.hpp
References assert, Acts::eFreeSize, i, and size.
bool Acts::detail::checkIntersection | ( | const intersection_t & | intersection, |
double | pLimit, | ||
double | oLimit, | ||
double | tolerance, | ||
const Logger & | logger = getDummyLogger() |
||
) |
This function checks if an intersection is valid for the specified path-limit and overstep-limit
intersection_t | Type of the intersection object |
logger_t | The logger type, which defaults to std::false_type to prevent the generation of logging code |
intersection | The intersection to check |
pLimit | The path-limit |
oLimit | The overstep-limit |
tolerance | The tolerance that is applied to the path-limit criterion |
logger | A optionally supplied logger which prints out a lot of infos at VERBOSE level |
Definition at line 294 of file Intersection.hpp.
View newest version in sPHENIX GitHub at line 294 of file Intersection.hpp
References Acts::ACTS_VERBOSE(), and Acts::Test::tolerance.
Referenced by ActsFatras::PlanarSurfaceMask::annulusMask(), Acts::GenericApproachDescriptor::approachSurface(), Acts::TrackingVolume::compatibleBoundaries(), Acts::Layer::compatibleSurfaces(), Acts::SurfaceReached::operator()(), ActsFatras::PlanarSurfaceMask::polygonMask(), ActsFatras::PlanarSurfaceMask::radialMask(), Acts::Layer::surfaceOnApproach(), and updateSingleSurfaceStatus().
std::unordered_map< int, std::vector< int > > Acts::detail::clusterDuplicateTracks | ( | const std::multimap< int, std::pair< int, std::vector< int >>> & | trackMap | ) |
Clusterise tracks based on shared hits
trackMap | : Multimap storing pair of track ID and vector of measurement ID. The keys are the number of measurement and are just there to facilitate the ordering. |
Definition at line 13 of file AmbiguityTrackClustering.cpp.
View newest version in sPHENIX GitHub at line 13 of file AmbiguityTrackClustering.cpp
Referenced by Acts::dbscanTrackClustering(), and ActsExamples::AmbiguityResolutionMLAlgorithm::execute().
Acts::MaterialSlab Acts::detail::combineSlabs | ( | const MaterialSlab & | slab1, |
const MaterialSlab & | slab2 | ||
) |
Compute the average properties for a combined slab of two materials.
slab1 Properties of the first material slab slab2 Properties of the second material slab
The averaged material slab has the combined thickness of the two input slabs and assumes the two input materials are homogeneously and continuously mixed throughout the slab.
Definition at line 15 of file AverageMaterials.cpp.
View newest version in sPHENIX GitHub at line 15 of file AverageMaterials.cpp
References Acts::MaterialSlab::material(), thickness, Acts::MaterialSlab::thickness(), Acts::MaterialSlab::thicknessInL0(), Acts::MaterialSlab::thicknessInX0(), x0, and physmon_track_finding_ttbar::z.
Referenced by Acts::AccumulatedVolumeMaterial::accumulate(), Acts::AccumulatedMaterialSlab::accumulate(), BOOST_AUTO_TEST_CASE(), Acts::MaterialSlab::MaterialSlab(), and Acts::AccumulatedMaterialSlab::trackAverage().
void Acts::detail::computePosteriorWeights | ( | const traj_t & | mt, |
const std::vector< MultiTrajectoryTraits::IndexType > & | tips, | ||
std::map< MultiTrajectoryTraits::IndexType, double > & | weights | ||
) |
Reweight the components according to R. Frühwirth, "Track fitting
with non-Gaussian noise"
. See also the implementation in Athena at PosteriorWeightsCalculator.cxx
Definition at line 166 of file GsfUtils.hpp.
View newest version in sPHENIX GitHub at line 166 of file GsfUtils.hpp
References KFPMath::a, KFPMath::b, calculateDeterminant(), configureMap::data, Acts::MultiTrajectoryTraits::MeasurementSizeMax, and filter::state.
Referenced by Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::kalmanUpdate().
auto Acts::detail::computeSymmetricKlDivergence | ( | const component_t & | a, |
const component_t & | b, | ||
const component_projector_t & | proj | ||
) |
Computes the Kullback-Leibler distance between two components as shown in https://arxiv.org/abs/2001.00727v1 but ignoring the weights
Definition at line 22 of file SymmetricKlDistanceMatrix.hpp.
View newest version in sPHENIX GitHub at line 22 of file SymmetricKlDistanceMatrix.hpp
References assert, Acts::eBoundQOverP, and proj().
Referenced by Acts::detail::SymmetricKLDistanceMatrix::recomputeAssociatedDistances(), and Acts::detail::SymmetricKLDistanceMatrix::SymmetricKLDistanceMatrix().
CurvilinearState Acts::detail::curvilinearState | ( | BoundSquareMatrix & | covarianceMatrix, |
BoundMatrix & | jacobian, | ||
FreeMatrix & | transportJacobian, | ||
FreeVector & | derivatives, | ||
BoundToFreeMatrix & | jacToGlobal, | ||
const FreeVector & | parameters, | ||
const ParticleHypothesis & | particleHypothesis, | ||
bool | covTransport, | ||
double | accumulatedPath | ||
) |
This creates a curvilinear state.
Create and return a curvilinear state at the current position
[in,out] | covarianceMatrix | The covariance matrix of the state |
[in,out] | jacobian | Full jacobian since the last reset |
[in,out] | transportJacobian | Global jacobian since the last reset |
[in,out] | derivatives | Path length derivatives of the free, nominal parameters |
[in,out] | jacToGlobal | Projection jacobian of the last bound parametrisation to free parameters |
[in] | parameters | Free, nominal parametrisation |
[in] | particleHypothesis | Particle hypothesis |
[in] | covTransport | Decision whether the covariance transport should be performed |
[in] | accumulatedPath | Propagated distance |
Definition at line 303 of file CovarianceEngine.cpp.
View newest version in sPHENIX GitHub at line 303 of file CovarianceEngine.cpp
References Acts::Test::cov, Acts::eFreeDir0, Acts::eFreePos0, Acts::eFreePos1, Acts::eFreePos2, Acts::eFreeQOverP, Acts::eFreeTime, Acts::ePos0, Acts::ePos1, Acts::ePos2, Acts::eTime, std::tr1::make_tuple(), testing::internal::move(), Acts::Test::pos4(), and transportCovarianceToCurvilinear().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::StraightLineStepper::curvilinearState(), Acts::EigenStepper< extensionlist_t, auctioneer_t >::curvilinearState(), and Acts::MultiEigenStepperLoop< extensionlist_t, component_reducer_t, auctioneer_t >::curvilinearState().
BoundToFreeMatrix Acts::detail::curvilinearToFreeJacobian | ( | const Vector3 & | direction | ) |
Evaluate the projection Jacobian from curvilinear to free parameters without transport jacobian.
[in] | direction | Normalised direction vector |
Definition at line 63 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 63 of file JacobianEngine.cpp
References Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, Acts::eFreeDir0, Acts::eFreeDir1, Acts::eFreeDir2, Acts::eFreePos0, Acts::eFreePos1, Acts::eFreePos2, Acts::eFreeQOverP, Acts::eFreeTime, and Acts::VectorHelpers::evaluateTrigonomics().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::CovarianceCache::CovarianceCache().
Compute the minimal lhs - rhs
using the periodicity.
Imagine you have two values within the nominal range: l
is close to the lower edge and u
is close to the upper edge. The naive difference between the two is almost as large as the range itself. If we move l
to its equivalent value outside the nominal range, i.e. just above the upper edge, the effective absolute difference becomes smaller.
lhs - rhs
Definition at line 37 of file periodic.hpp.
View newest version in sPHENIX GitHub at line 37 of file periodic.hpp
References physmon_vertexing::delta, and Acts::UnitConstants::T.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_DATA_TEST_CASE(), Acts::SingleSeedVertexFinder< spacepoint_t >::findTriplets(), gaussianMixtureCov(), Acts::SingleSeedVertexFinder< spacepoint_t >::tripletValidationAndUpdate(), ActsExamples::RootTrajectorySummaryWriter::writeT(), and ActsExamples::VertexPerformanceWriter::writeT().
ActsMatrix< 7, 8 > Acts::detail::directionToAnglesJacobian | ( | const Vector3 & | direction | ) |
This function calculates the jacobian from a free parameterisation to a mixed one with angular representation.
direction | The direction of the track |
Definition at line 108 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 108 of file JacobianEngine.cpp
References Acts::VectorHelpers::evaluateTrigonomics().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::CovarianceCache::CovarianceCache(), and freeToFreeTransportJacobian().
constexpr HashedString Acts::detail::fnv1a_32 | ( | char const * | s, |
std::size_t | count | ||
) |
Definition at line 22 of file HashedString.hpp.
View newest version in sPHENIX GitHub at line 22 of file HashedString.hpp
References physmon_ckf_tracking::u.
Referenced by fnv1a_32(), Acts::hashString(), and Acts::HashedStringLiteral::operator""_hash().
constexpr HashedString Acts::detail::fnv1a_32 | ( | std::string_view | s | ) |
Definition at line 27 of file HashedString.hpp.
View newest version in sPHENIX GitHub at line 27 of file HashedString.hpp
References fnv1a_32(), and physmon_ckf_tracking::u.
FreeToBoundMatrix Acts::detail::freeToBoundTransportJacobian | ( | const GeometryContext & | geoContext, |
const FreeVector & | freeParameters, | ||
const ActsMatrix< 7, 8 > & | directionToAnglesJacobian, | ||
const ActsMatrix< 8, 7 > & | anglesToDirectionJacobian, | ||
const FreeMatrix & | freeTransportJacobian, | ||
const FreeVector & | freeToPathDerivatives, | ||
const Surface & | surface | ||
) |
This function calculates the full jacobian from a given free parameterisation to a new curvilinear bound parameterisation.
[in] | geoContext | The geometry Context |
[in] | freeParameters | Free, nominal parametrisation |
[in] | directionToAnglesJacobian | The relation jacobian from dir to angle |
[in] | anglesToDirectionJacobian | The relation jacobian from angle to dir |
[in] | freeTransportJacobian | Transport jacobian free to free |
[in] | freeToPathDerivatives | Path length derivatives for free parameters |
[in] | surface | The target surface |
Definition at line 173 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 173 of file JacobianEngine.cpp
References anglesToDirectionJacobian(), Acts::Surface::freeToBoundJacobian(), and Acts::Surface::freeToPathDerivative().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::transportCovarianceToBound().
FreeToBoundMatrix Acts::detail::freeToCurvilinearJacobian | ( | const Vector3 & | direction | ) |
Evaluate the projection Jacobian from free to curvilinear parameters without transport jacobian.
[in] | direction | Normalised direction vector |
Definition at line 24 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 24 of file JacobianEngine.cpp
References Acts::PhysicalConstants::c, Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, Acts::eFreeDir0, Acts::eFreeDir1, Acts::eFreeDir2, Acts::eFreePos0, Acts::eFreePos1, Acts::eFreePos2, Acts::eFreeQOverP, Acts::eFreeTime, Acts::VectorHelpers::evaluateTrigonomics(), Acts::s_curvilinearProjTolerance, ambiguity_solver_full_chain::x, y, and physmon_track_finding_ttbar::z.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), boundToCurvilinearTransportJacobian(), and freeToCurvilinearTransportJacobian().
FreeToBoundMatrix Acts::detail::freeToCurvilinearTransportJacobian | ( | const Vector3 & | direction, |
const ActsMatrix< 7, 8 > & | directionToAnglesJacobian, | ||
const ActsMatrix< 8, 7 > & | anglesToDirectionJacobian, | ||
const FreeMatrix & | freeTransportJacobian, | ||
const FreeVector & | freeToPathDerivatives | ||
) |
This function calculates the full transport jacobian from a free parameterisation to a bound one. Since a variation of the start parameters within a given uncertainty would lead to a variation of the end parameters, these need to be propagated onto the target surface. This an approximated approach to treat the (assumed) small change.
[in] | direction | Normalised direction vector |
[in] | directionToAnglesJacobian | The relation jacobian from dir to angle |
[in] | anglesToDirectionJacobian | The relation jacobian from angle to dir |
[in] | freeTransportJacobian | Transport jacobian free to free |
[in] | freeToPathDerivatives | Path length derivatives for free |
Definition at line 192 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 192 of file JacobianEngine.cpp
References anglesToDirectionJacobian(), and freeToCurvilinearJacobian().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::transportCovarianceToCurvilinear().
FreeMatrix Acts::detail::freeToFreeTransportJacobian | ( | const ActsMatrix< 7, 8 > & | directionToAnglesJacobian, |
const ActsMatrix< 8, 7 > & | anglesToDirectionJacobian, | ||
const FreeMatrix & | freeTransportJacobian | ||
) |
This function calculates the free transfport jacobian from a free parameterisation.
[in] | directionToAnglesJacobian | The relation jacobian from dir to angle |
[in] | anglesToDirectionJacobian | The relation jacobian from angle to dir |
[in] | freeTransportJacobian | Transport jacobian free to free |
Definition at line 209 of file JacobianEngine.cpp.
View newest version in sPHENIX GitHub at line 209 of file JacobianEngine.cpp
References directionToAnglesJacobian().
Referenced by Acts::transportCovarianceToFree().
auto Acts::detail::gaussianMixtureCov | ( | const components_t | components, |
const ActsVector< D > & | mean, | ||
double | sumOfWeights, | ||
projector_t && | projector, | ||
const angle_desc_t & | angleDesc | ||
) |
Definition at line 79 of file GaussianMixtureReduction.hpp.
View newest version in sPHENIX GitHub at line 79 of file GaussianMixtureReduction.hpp
References root_event_diff_np::cmp(), Acts::Test::cov, difference_periodic(), Acts::UnitConstants::m, and mean().
auto Acts::detail::gaussianMixtureMeanCov | ( | const components_t | components, |
projector_t && | projector = projector_t{} , |
||
const angle_desc_t & | angleDesc = angle_desc_t{} |
||
) |
Combine multiple components into one representative track state object. The function takes iterators to allow for arbitrary ranges to be combined. The dimension of the vectors is infeared from the inputs.
components_t | A range of components |
projector_t | A projector, which maps the component to a std::tuple< weight, mean, std::optional< cov > > |
angle_desc_t | A angle description object which defines the cyclic angles in the bound parameters |
Definition at line 128 of file GaussianMixtureReduction.hpp.
View newest version in sPHENIX GitHub at line 128 of file GaussianMixtureReduction.hpp
Referenced by BOOST_AUTO_TEST_CASE(), mergeComponents(), and test_surface().
std::pair<ActsDynamicMatrix, std::unordered_map<size_t, size_t> > Acts::detail::globalTrackParametersCovariance | ( | const traj_t & | multiTraj, |
const size_t & | entryIndex | ||
) |
Calculate the global track parameters covariance for a smoothed trajectory stored in MultiTrajecty based on formulas at Journal of Physics: Conference Series 219 (2010) 032028.
source_link_t | The source link type of the trajectory |
parameters_t | The track parameters type |
multiTraj | The MultiTrajectory containing the trajectory to be investigated |
entryIndex | The trajectory entry index |
Definition at line 38 of file KalmanGlobalCovariance.hpp.
View newest version in sPHENIX GitHub at line 38 of file KalmanGlobalCovariance.hpp
References Acts::eBoundSize, and G.
Referenced by FitterTester::test_GlobalCovariance().
|
inline |
Transform a gaussian component back from the [-inf, inf]-space to the usual space
Definition at line 53 of file BetheHeitlerApprox.hpp.
View newest version in sPHENIX GitHub at line 53 of file BetheHeitlerApprox.hpp
References root_event_diff_np::cmp(), Acts::detail::GaussianComponent::mean, Acts::detail::GaussianComponent::var, and Acts::detail::GaussianComponent::weight.
Referenced by Acts::AtlasBetheHeitlerApprox< NComponents, PolyDegree >::mixture().
Definition at line 27 of file grid_helper.hpp.
View newest version in sPHENIX GitHub at line 27 of file grid_helper.hpp
auto Acts::detail::kalmanHandleMeasurement | ( | const CalibrationContext & | calibrationContext, |
propagator_state_t & | state, | ||
const stepper_t & | stepper, | ||
const extensions_t & | extensions, | ||
const Surface & | surface, | ||
const SourceLink & | source_link, | ||
traj_t & | fittedStates, | ||
const size_t | lastTrackIndex, | ||
bool | doCovTransport, | ||
const Logger & | logger, | ||
const FreeToBoundCorrection & | freeToBoundCorrection = FreeToBoundCorrection( false) |
||
) | -> Result<typename traj_t::TrackStateProxy> |
This function encapsulates the Kalman update performed on a MultiTrajectory for a single source link.
propagator_state_t | The propagator state type |
stepper_t | The stepper type |
extensions_t | The type of the extensions used for the update |
state | The propagator state |
stepper | The stepper |
extensions | The extension used for the update |
surface | The current surface |
source_link | The source-link used for the update |
fittedStates | The Multitrajectory to that we add the state |
lastTrackIndex | The parent index for the new state in the MT |
doCovTransport | Whether to perform a covariance transport when computing the bound state or not |
freeToBoundCorrection | Correction for non-linearity effect during transform from free to bound (only corrected when performing CovTransport) |
Definition at line 38 of file KalmanUpdateHelpers.hpp.
View newest version in sPHENIX GitHub at line 38 of file KalmanUpdateHelpers.hpp
References ACTS_ERROR, Acts::ACTS_VERBOSE(), Acts::GeometryObject::geometryId(), Acts::Surface::getSharedPtr(), mask, Acts::MaterialFlag, Acts::MeasurementFlag, testing::internal::move(), Acts::OutlierFlag, Acts::ParameterFlag, ActsTests::PropagationDatasets::pathLength, and Acts::Surface::surfaceMaterial().
Referenced by Acts::KalmanFitter< propagator_t, traj_t >::Actor< parameters_t >::filter(), and Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::kalmanUpdate().
auto Acts::detail::kalmanHandleNoMeasurement | ( | propagator_state_t & | state, |
const stepper_t & | stepper, | ||
const Surface & | surface, | ||
traj_t & | fittedStates, | ||
const size_t | lastTrackIndex, | ||
bool | doCovTransport, | ||
const Logger & | logger, | ||
const FreeToBoundCorrection & | freeToBoundCorrection = FreeToBoundCorrection( false) |
||
) | -> Result<typename traj_t::TrackStateProxy> |
This function encapsulates what actions should be performed on a MultiTrajectory when we have no measurement. If there are no source links on surface, add either a hole or passive material TrackState entry multi trajectory. No storage allocation for uncalibrated/calibrated measurement and filtered parameter
propagator_state_t | The propagator state type |
stepper_t | The stepper type |
state | The propagator state |
stepper | The stepper |
surface | The current surface |
fittedStates | The Multitrajectory to that we add the state |
lastTrackIndex | The parent index for the new state in the MT |
doCovTransport | Whether to perform a covariance transport when computing the bound state or not |
freeToBoundCorrection | Correction for non-linearity effect during transform from free to bound (only corrected when performing CovTransport) |
Definition at line 139 of file KalmanUpdateHelpers.hpp.
View newest version in sPHENIX GitHub at line 139 of file KalmanUpdateHelpers.hpp
References Acts::ACTS_VERBOSE(), Acts::Surface::associatedDetectorElement(), Acts::GeometryObject::geometryId(), Acts::Surface::getSharedPtr(), Acts::HoleFlag, mask, Acts::MaterialFlag, testing::internal::move(), Acts::ParameterFlag, ActsTests::PropagationDatasets::pathLength, and Acts::Surface::surfaceMaterial().
Referenced by Acts::KalmanFitter< propagator_t, traj_t >::Actor< parameters_t >::filter(), and Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::noMeasurementUpdate().
constexpr int Acts::detail::length | ( | const char * | str | ) |
Definition at line 33 of file HashedString.hpp.
View newest version in sPHENIX GitHub at line 33 of file HashedString.hpp
auto Acts::detail::mergeComponents | ( | const component_t & | a, |
const component_t & | b, | ||
const component_projector_t & | proj, | ||
const angle_desc_t & | angle_desc | ||
) |
Definition at line 45 of file SymmetricKlDistanceMatrix.hpp.
View newest version in sPHENIX GitHub at line 45 of file SymmetricKlDistanceMatrix.hpp
References KFPMath::a, TauVsDIS_MachineLearning_Differentiation::array, assert, Acts::PhysicalConstants::c, gaussianMixtureMeanCov(), proj(), and check_smearing_config::ref.
Referenced by reduceWithKLDistanceImpl().
Ensure both phi and theta direction angles are within the allowed range.
[in] | phi | Transverse direction angle |
[in] | theta | Longitudinal direction angle |
The phi angle is truly cyclic, i.e. all values outside the nominal range [-pi,pi) have a corresponding value inside nominal range, independent from the theta angle. The theta angle is more complicated. Imagine that the two angles describe a position on the unit sphere. If theta moves outside its nominal range [0,pi], we are moving over one of the two poles of the unit sphere along the great circle defined by phi. The angles still describe a valid position on the unit sphere, but to describe it with angles within their nominal range, both phi and theta need to be updated; when moving over the poles, phi needs to be flipped by 180degree to allow theta to remain within its nominal range.
Definition at line 79 of file periodic.hpp.
View newest version in sPHENIX GitHub at line 79 of file periodic.hpp
References radian_pos(), radian_sym(), and ActsTests::PropagationDatasets::theta.
Referenced by BOOST_DATA_TEST_CASE(), ActsExamples::ParticleSmearing::execute(), Acts::FullBilloirVertexFitter< input_track_t, linearizer_t >::fit(), Acts::Test::generateBoundParametersCovariance(), Acts::GenericBoundTrackParameters< ParticleHypothesis >::normalizePhiTheta(), and Acts::KalmanVertexTrackUpdater::update().
void Acts::detail::normalizeWeights | ( | component_range_t & | cmps, |
const projector_t & | proj | ||
) |
Definition at line 50 of file GsfUtils.hpp.
View newest version in sPHENIX GitHub at line 50 of file GsfUtils.hpp
References assert, root_event_diff_np::cmp(), it, and proj().
Referenced by Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::kalmanUpdate(), Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::removeLowWeightComponents(), and Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::updateStepper().
bool Acts::detail::operator< | ( | const CantorEdge< T > & | a, |
const CantorEdge< T > & | b | ||
) |
Definition at line 52 of file CantorEdge.hpp.
View newest version in sPHENIX GitHub at line 52 of file CantorEdge.hpp
References KFPMath::a, and KFPMath::b.
|
inline |
Definition at line 210 of file GsfUtils.hpp.
View newest version in sPHENIX GitHub at line 210 of file GsfUtils.hpp
References TauVsDIS_MachineLearning_Differentiation::array, TauVsDIS_MachineLearning_Differentiation::names, os, and Acts::type.
bool Acts::detail::operator== | ( | const CantorEdge< T > & | a, |
const CantorEdge< T > & | b | ||
) |
Definition at line 47 of file CantorEdge.hpp.
View newest version in sPHENIX GitHub at line 47 of file CantorEdge.hpp
References Acts::detail::CantorEdge< T >::value().
at::Tensor Acts::detail::postprocessEdgeTensor | ( | at::Tensor | edges, |
bool | removeSelfLoops = true , |
||
bool | removeDuplicates = true , |
||
bool | flipDirections = false |
||
) |
Post process edges.
Referenced by BOOST_AUTO_TEST_CASE().
void Acts::detail::printBoundParameters | ( | std::ostream & | os, |
const Surface & | surface, | ||
const BoundVector & | params, | ||
const BoundSquareMatrix * | cov = nullptr |
||
) |
Print bound track parameters content to the output stream.
os | The output stream |
surface | Bound parameters reference surface |
params | Bound parameters vector |
cov | Optional bound parameters covariance matrix |
Definition at line 166 of file PrintParameters.cpp.
View newest version in sPHENIX GitHub at line 166 of file PrintParameters.cpp
References Acts::GeometryObject::geometryId(), Acts::Surface::name(), and printParameters().
void Acts::detail::printFreeParameters | ( | std::ostream & | os, |
const FreeVector & | params, | ||
const FreeMatrix * | cov = nullptr |
||
) |
Print free track parameters content to the output stream.
os | The output stream |
params | Free parameters vector |
cov | Optional free parameters covariance matrix |
Definition at line 179 of file PrintParameters.cpp.
View newest version in sPHENIX GitHub at line 179 of file PrintParameters.cpp
References printParameters().
void Acts::detail::printMeasurement | ( | std::ostream & | os, |
BoundIndices | size, | ||
const uint8_t * | indices, | ||
const ActsScalar * | params, | ||
const ActsScalar * | cov | ||
) |
Print bound measurement content to the output stream.
os | The output stream |
size | Size of the measurement space |
indices | Which parameters are measured, must contain size elements |
params | Parameters vector data, must contain size elements |
cov | Optional Covariance matrix data, must contain sizexsize elements |
Definition at line 189 of file PrintParameters.cpp.
View newest version in sPHENIX GitHub at line 189 of file PrintParameters.cpp
References physmon_simulation::s, and size.
Referenced by Acts::Measurement< BoundIndices, 3 >::operator<<().
void Acts::detail::printMeasurement | ( | std::ostream & | os, |
FreeIndices | size, | ||
const uint8_t * | indices, | ||
const ActsScalar * | params, | ||
const ActsScalar * | cov | ||
) |
Print free measurement content to the output stream.
os | The output stream |
size | Size of the measurement space |
indices | Which parameters are measured, must contain size elements |
params | Parameters vector data, must contain size elements |
cov | Optional Covariance matrix data, must contain sizexsize elements |
Definition at line 198 of file PrintParameters.cpp.
View newest version in sPHENIX GitHub at line 198 of file PrintParameters.cpp
References physmon_simulation::s, and size.
Calculate the equivalent angle in the [0, 2*pi) range.
Definition at line 52 of file periodic.hpp.
View newest version in sPHENIX GitHub at line 52 of file periodic.hpp
References Acts::UnitConstants::T, and ambiguity_solver_full_chain::x.
Referenced by BOOST_DATA_TEST_CASE(), normalizePhiTheta(), and Acts::SingleSeedVertexFinder< spacepoint_t >::sortSpacepoints().
Calculate the equivalent angle in the [-pi, pi) range.
Definition at line 58 of file periodic.hpp.
View newest version in sPHENIX GitHub at line 58 of file periodic.hpp
References Acts::UnitConstants::T, and ambiguity_solver_full_chain::x.
Referenced by BOOST_DATA_TEST_CASE(), Acts::RadialBounds::checkConsistency(), Acts::EllipseBounds::checkConsistency(), Acts::ConeBounds::checkConsistency(), Acts::CylinderBounds::checkConsistency(), Acts::DiscTrapezoidBounds::checkConsistency(), Acts::ConeVolumeBounds::checkConsistency(), Acts::AnnulusBounds::checkConsistency(), Acts::CylinderVolumeBounds::checkConsistency(), checkParametersConsistency(), Acts::EllipseBounds::inside(), Acts::CylinderBounds::inside3D(), normalizePhiTheta(), Acts::RadialBounds::shifted(), Acts::ConeBounds::shifted(), and Acts::CylinderBounds::shifted().
Acts::detail::RotationToAxes Acts::detail::rotationToLocalAxesDerivative | ( | const RotationMatrix3 & | rotation | ) |
Evaluate the derivative of local frame axes vector w.r.t. its rotation around global x/y/z axis : add parameter for rotation axis order.
rotation | The rotation that help place the surface |
Definition at line 15 of file AlignmentHelper.cpp.
View newest version in sPHENIX GitHub at line 15 of file AlignmentHelper.cpp
References std::tr1::make_tuple(), and testing::internal::move().
Referenced by Acts::Surface::alignmentToBoundDerivativeWithoutCorrection(), Acts::ConeSurface::alignmentToPathDerivative(), Acts::CylinderSurface::alignmentToPathDerivative(), Acts::LineSurface::alignmentToPathDerivative(), Acts::Surface::alignmentToPathDerivative(), and Acts::Test::BOOST_AUTO_TEST_CASE().
Definition at line 22 of file StringHelpers.hpp.
View newest version in sPHENIX GitHub at line 22 of file StringHelpers.hpp
Referenced by Acts::toString().
void Acts::detail::setupLoopProtection | ( | propagator_state_t & | state, |
const stepper_t & | stepper, | ||
path_aborter_t & | pathAborter, | ||
bool | releaseLimit, | ||
const Logger & | logger | ||
) |
Estimate the loop protection limit.
Definition at line 20 of file LoopProtection.hpp.
View newest version in sPHENIX GitHub at line 20 of file LoopProtection.hpp
References Acts::ACTS_VERBOSE(), ACTS_WARNING, ckf::field, and merge_hashes::p.
Referenced by Acts::Test::BOOST_DATA_TEST_CASE(), Acts::CombinatorialKalmanFilter< propagator_t, traj_t >::Actor< source_link_accessor_t, parameters_t >::finalize(), Acts::Propagator< stepper_t, navigator_t >::propagate(), and Acts::CombinatorialKalmanFilter< propagator_t, traj_t >::Actor< source_link_accessor_t, parameters_t >::reset().
std::vector<T> Acts::detail::tensor2DToVector | ( | const at::Tensor & | tensor | ) |
Converts 2D tensor to vector Automatically converts tensor to target type!
Definition at line 74 of file TensorVectorConversion.hpp.
View newest version in sPHENIX GitHub at line 74 of file TensorVectorConversion.hpp
References assert.
Acts::FreeVector Acts::detail::transformBoundToFreeParameters | ( | const Surface & | surface, |
const GeometryContext & | geoCtx, | ||
const BoundVector & | boundParams | ||
) |
Transform bound track parameters into equivalent free track parameters.
surface | Surface onto which the input parameters are bound |
geoCtx | Geometry context for the local-to-global transformation |
boundParams | Bound track parameters vector |
Definition at line 18 of file TransformationBoundToFree.cpp.
View newest version in sPHENIX GitHub at line 18 of file TransformationBoundToFree.cpp
References Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, Acts::eFreeDir0, Acts::eFreeDir1, Acts::eFreeDir2, Acts::eFreePos0, Acts::eFreePos1, Acts::eFreePos2, Acts::eFreeQOverP, Acts::eFreeTime, Acts::eMom0, Acts::eMom1, Acts::eMom2, Acts::ePos0, Acts::ePos1, Acts::ePos2, Acts::Surface::localToGlobal(), Acts::makeDirectionFromPhiTheta(), and position.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), BOOST_DATA_TEST_CASE(), Acts::LineSurface::boundToFreeJacobian(), Acts::Surface::boundToFreeJacobian(), Acts::EDM4hepUtil::detail::convertTrackParametersToEdm4hep(), ActsAlignmentStates::fillAlignmentStateMap(), Acts::MultiTrajectoryHelpers::freeFiltered(), Acts::MultiTrajectoryHelpers::freeSmoothed(), meanFromFree(), Acts::StraightLineStepper::resetState(), Acts::EigenStepper< extensionlist_t, auctioneer_t >::resetState(), Acts::AtlasStepper::resetState(), transportCovarianceToBound(), ActsEvaluator::visitTrackStates(), and ActsExamples::RootTrajectoryStatesWriter::writeT().
|
inline |
Transform a gaussian component to a space where all values are defined from [-inf, inf]
Definition at line 40 of file BetheHeitlerApprox.hpp.
View newest version in sPHENIX GitHub at line 40 of file BetheHeitlerApprox.hpp
References root_event_diff_np::cmp(), and mean().
Acts::Result< Acts::BoundVector > Acts::detail::transformFreeToBoundParameters | ( | const FreeVector & | freeParams, |
const Surface & | surface, | ||
const GeometryContext & | geoCtx, | ||
ActsScalar | tolerance = s_onSurfaceTolerance |
||
) |
Convert free track parameters to bound track parameters.
freeParams | Free track parameters vector |
surface | Surface onto which the parameters are bound |
geoCtx | Geometry context for the global-to-local transformation |
tolerance | Tolerance used for globalToLocal |
Definition at line 17 of file TransformationFreeToBound.cpp.
View newest version in sPHENIX GitHub at line 17 of file TransformationFreeToBound.cpp
References Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, Acts::eFreeDir0, Acts::eFreePos0, Acts::eFreeQOverP, Acts::eFreeTime, Acts::ePos0, Acts::ePos1, Acts::Surface::globalToLocal(), ActsTests::PropagationDatasets::phi, position, and ActsTests::PropagationDatasets::theta.
Referenced by BOOST_DATA_TEST_CASE(), boundState(), Acts::EDM4hepUtil::detail::convertTrackParametersToEdm4hep(), Acts::GenericBoundTrackParameters< ParticleHypothesis >::create(), meanFromFree(), ActsFatras::BoundParametersSmearer< RandomEngine, kSmearDIM >::operator()(), and Acts::detail::CorrectedFreeToBoundTransformer::operator()().
Acts::Result< Acts::BoundVector > Acts::detail::transformFreeToBoundParameters | ( | const Vector3 & | position, |
ActsScalar | time, | ||
const Vector3 & | direction, | ||
ActsScalar | qOverP, | ||
const Surface & | surface, | ||
const GeometryContext & | geoCtx, | ||
ActsScalar | tolerance = s_onSurfaceTolerance |
||
) |
Convert position and direction to bound track parameters.
position | Global track three-position |
time | Global track time |
direction | Global direction three-vector; normalization is ignored. |
qOverP | Charge-over-momentum-like parameter |
surface | Surface onto which the parameters are bound |
geoCtx | Geometry context for the global-to-local transformation |
tolerance | Tolerance used for globalToLocal |
Definition at line 41 of file TransformationFreeToBound.cpp.
View newest version in sPHENIX GitHub at line 41 of file TransformationFreeToBound.cpp
References Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, Acts::ePos0, Acts::ePos1, Acts::Surface::globalToLocal(), ActsTests::PropagationDatasets::phi, ActsTests::PropagationDatasets::theta, and Acts::Test::time.
Acts::BoundVector Acts::detail::transformFreeToCurvilinearParameters | ( | ActsScalar | time, |
const Vector3 & | direction, | ||
ActsScalar | qOverP | ||
) |
Convert direction to curvilinear track parameters.
time | Global track time |
direction | Global direction three-vector; normalization is ignored. |
qOverP | Charge-over-momentum-like parameter |
Definition at line 76 of file TransformationFreeToBound.cpp.
View newest version in sPHENIX GitHub at line 76 of file TransformationFreeToBound.cpp
References Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, ActsTests::PropagationDatasets::phi, ActsTests::PropagationDatasets::theta, and Acts::Test::time.
Referenced by BOOST_DATA_TEST_CASE(), and Acts::MultiComponentCurvilinearTrackParameters::construct().
Acts::BoundVector Acts::detail::transformFreeToCurvilinearParameters | ( | ActsScalar | time, |
ActsScalar | phi, | ||
ActsScalar | theta, | ||
ActsScalar | qOverP | ||
) |
Convert direction angles to curvilinear track parameters.
time | Global track time |
phi | Global transverse direction angle |
theta | Global longitudinal direction angle |
qOverP | Charge-over-momentum-like parameter |
Definition at line 65 of file TransformationFreeToBound.cpp.
View newest version in sPHENIX GitHub at line 65 of file TransformationFreeToBound.cpp
References Acts::eBoundPhi, Acts::eBoundQOverP, Acts::eBoundTheta, Acts::eBoundTime, ActsTests::PropagationDatasets::phi, ActsTests::PropagationDatasets::theta, and Acts::Test::time.
void Acts::detail::transportCovarianceToBound | ( | const GeometryContext & | geoContext, |
BoundSquareMatrix & | boundCovariance, | ||
BoundMatrix & | fullTransportJacobian, | ||
FreeMatrix & | freeTransportJacobian, | ||
FreeVector & | freeToPathDerivatives, | ||
BoundToFreeMatrix & | boundToFreeJacobian, | ||
FreeVector & | freeParameters, | ||
const Surface & | surface, | ||
const FreeToBoundCorrection & | freeToBoundCorrection = FreeToBoundCorrection(false) |
||
) |
Method for on-demand covariance transport of a bound/curvilinear to another bound representation.
[in] | geoContext | The geometry context |
[in,out] | boundCovariance | The covariance matrix of the state |
[in,out] | fullTransportJacobian | Full jacobian since the last reset |
[in,out] | freeTransportJacobian | Global jacobian since the last reset |
[in,out] | freeToPathDerivatives | Path length derivatives |
[in,out] | boundToFreeJacobian | Projection jacobian of the last bound parametrisation to free parameters |
[in,out] | freeParameters | Free, nominal parametrisation |
[in] | surface | is the surface to which the covariance is forwarded to |
[in] | freeToBoundCorrection | Correction for non-linearity effect during transform from free to bound |
Definition at line 343 of file CovarianceEngine.cpp.
View newest version in sPHENIX GitHub at line 343 of file CovarianceEngine.cpp
References transformBoundToFreeParameters().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), boundState(), Acts::StraightLineStepper::transportCovarianceToBound(), and Acts::EigenStepper< extensionlist_t, auctioneer_t >::transportCovarianceToBound().
void Acts::detail::transportCovarianceToCurvilinear | ( | BoundSquareMatrix & | boundCovariance, |
BoundMatrix & | fullTransportJacobian, | ||
FreeMatrix & | freeTransportJacobian, | ||
FreeVector & | freeToPathDerivatives, | ||
BoundToFreeMatrix & | boundToFreeJacobian, | ||
const Vector3 & | direction | ||
) |
Method for on-demand covariance transport of a bound/curvilinear to a new curvilinear representation.
[in,out] | boundCovariance | The covariance matrix of the state |
[in,out] | fullTransportJacobian | Full jacobian since the last reset |
[in,out] | freeTransportJacobian | Global jacobian since the last reset |
[in,out] | freeToPathDerivatives | Path length derivatives |
[in,out] | boundToFreeJacobian | Projection jacobian of the last bound parametrisation to free parameters |
[in] | direction | Normalised direction vector |
Definition at line 398 of file CovarianceEngine.cpp.
View newest version in sPHENIX GitHub at line 398 of file CovarianceEngine.cpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), curvilinearState(), Acts::StraightLineStepper::transportCovarianceToCurvilinear(), and Acts::EigenStepper< extensionlist_t, auctioneer_t >::transportCovarianceToCurvilinear().
void Acts::detail::updateSingleStepSize | ( | typename stepper_t::State & | state, |
const object_intersection_t & | oIntersection, | ||
bool | release = true |
||
) |
Update the Step size - single component
It takes a (valid) object intersection from the compatibleX(...) calls in the geometry and updates the step size
state | [in,out] The stepping state (thread-local cache) |
oIntersection | [in] The object that yielded this step size |
release | [in] A release flag |
Definition at line 80 of file SteppingHelper.hpp.
View newest version in sPHENIX GitHub at line 80 of file SteppingHelper.hpp
References Acts::ConstrainedStep::actor, and Acts::Test::stepSize.
Acts::Intersection3D::Status Acts::detail::updateSingleSurfaceStatus | ( | const stepper_t & | stepper, |
typename stepper_t::State & | state, | ||
const Surface & | surface, | ||
Direction | navDir, | ||
const BoundaryCheck & | bcheck, | ||
ActsScalar | surfaceTolerance, | ||
const Logger & | logger | ||
) |
Update surface status - Single component
This method intersect the provided surface and update the navigation step estimation accordingly (hence it changes the state). It also returns the status of the intersection to trigger onSurface in case the surface is reached.
state | [in,out] The stepping state (thread-local cache) |
surface | [in] The surface provided |
bcheck | [in] The boundary check for this status update |
Definition at line 34 of file SteppingHelper.hpp.
View newest version in sPHENIX GitHub at line 34 of file SteppingHelper.hpp
References Acts::ConstrainedStep::aborter, Acts::ConstrainedStep::actor, Acts::ACTS_VERBOSE(), checkIntersection(), Acts::GeometryObject::geometryId(), Acts::Surface::intersect(), and logger().
at::Tensor Acts::detail::vectorToTensor2D | ( | std::vector< T > & | vec, |
std::size_t | cols | ||
) |
Converts vector to 2D tensor Make sure your vector has a even number of elements! Input must be mutable, due to torch API. Tensor does not take ownership! .clone()
afterwards to get ownership of the data
Definition at line 60 of file TensorVectorConversion.hpp.
View newest version in sPHENIX GitHub at line 60 of file TensorVectorConversion.hpp
References assert, and parse_cmake_options::opts.
Referenced by BOOST_AUTO_TEST_CASE(), BuildEdgesKDTree< Dim >::invoke(), and Acts::TorchMetricLearning::operator()().
void Acts::detail::voidFitterCalibrator | ( | const GeometryContext & | , |
const CalibrationContext & | , | ||
const SourceLink & | , | ||
typename traj_t::TrackStateProxy | |||
) |
Definition at line 23 of file VoidFitterComponents.hpp.
View newest version in sPHENIX GitHub at line 23 of file VoidFitterComponents.hpp
Result<void> Acts::detail::voidFitterSmoother | ( | const GeometryContext & | , |
traj_t & | trackStates, | ||
size_t | entry, | ||
const Logger & | |||
) |
Definition at line 41 of file VoidFitterComponents.hpp.
View newest version in sPHENIX GitHub at line 41 of file VoidFitterComponents.hpp
Result<void> Acts::detail::voidFitterUpdater | ( | const GeometryContext & | , |
typename traj_t::TrackStateProxy | trackState, | ||
Direction | , | ||
const Logger & | |||
) |
Definition at line 31 of file VoidFitterComponents.hpp.
View newest version in sPHENIX GitHub at line 31 of file VoidFitterComponents.hpp
bool Acts::detail::voidOutlierFinder | ( | typename traj_t::ConstTrackStateProxy | ) |
Definition at line 53 of file VoidFitterComponents.hpp.
View newest version in sPHENIX GitHub at line 53 of file VoidFitterComponents.hpp
bool Acts::detail::voidReverseFilteringLogic | ( | typename traj_t::ConstTrackStateProxy | ) |
Definition at line 58 of file VoidFitterComponents.hpp.
View newest version in sPHENIX GitHub at line 58 of file VoidFitterComponents.hpp
|
inline |
Definition at line 63 of file VoidFitterComponents.hpp.
View newest version in sPHENIX GitHub at line 63 of file VoidFitterComponents.hpp
bool Acts::detail::weightsAreNormalized | ( | const component_range_t & | cmps, |
const projector_t & | proj, | ||
double | tol = s_normalizationTolerance |
||
) |
Definition at line 37 of file GsfUtils.hpp.
View newest version in sPHENIX GitHub at line 37 of file GsfUtils.hpp
Referenced by Acts::detail::ScopedGsfInfoPrinterAndChecker< propagator_state_t, stepper_t, navigator_t >::checks(), and Acts::detail::GsfActor< bethe_heitler_approx_t, traj_t >::operator()().
Wrap a periodic value back into the nominal range.
Definition at line 18 of file periodic.hpp.
View newest version in sPHENIX GitHub at line 18 of file periodic.hpp
References start, and Acts::UnitConstants::T.
Referenced by test_surface().
constexpr bool Acts::detail::all_of_v = all_of<values...>::value |
Definition at line 30 of file all_of.hpp.
View newest version in sPHENIX GitHub at line 30 of file all_of.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Fatras::SelectorListAXOR< inclusive, selectors >::operator()(), and Fatras::PhysicsList< processes >::operator()().
constexpr bool Acts::detail::any_of_v = any_of<values...>::value |
Definition at line 30 of file any_of.hpp.
View newest version in sPHENIX GitHub at line 30 of file any_of.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
constexpr bool Acts::detail::has_action_type_v |
Meta function which returns a compile time bool
T | the type to check |
Definition at line 99 of file type_collector.hpp.
View newest version in sPHENIX GitHub at line 99 of file type_collector.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
constexpr bool Acts::detail::has_duplicates_v = has_duplicates<Args...>::value |
Definition at line 45 of file has_duplicates.hpp.
View newest version in sPHENIX GitHub at line 45 of file has_duplicates.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
constexpr bool Acts::detail::has_result_type_v |
Meta function which returns a compile time bool
T | the type to check |
Definition at line 84 of file type_collector.hpp.
View newest version in sPHENIX GitHub at line 84 of file type_collector.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
constexpr size_t Acts::detail::kParametersSize = ParametersTraitsImpl<indices_t>::kSize |
The maximum parameters vector size definable for an indices enum.
Definition at line 171 of file ParameterTraits.hpp.
View newest version in sPHENIX GitHub at line 171 of file ParameterTraits.hpp
constexpr auto Acts::detail::type_collector |
The main type collector. This loops over the given tuple of actions or aborters, filters by predicate and uses extractor to construct a resulting output set.
Definition at line 55 of file type_collector.hpp.
View newest version in sPHENIX GitHub at line 55 of file type_collector.hpp
constexpr auto Acts::detail::type_collector_t |
Helper around type_collector which constructrs a hana tuple input from variadic template args, and pre-unpacks the predicate and extractor from the helper type
helper | Either result_type_extractor or action_type_extractor |
items | The items to filter / collect from. |
Definition at line 75 of file type_collector.hpp.
View newest version in sPHENIX GitHub at line 75 of file type_collector.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().