File AutodiffExtensionWrapper.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

template<template<typename> typename basic_extension_t>
struct AutodiffExtensionWrapper
#include </home/docs/checkouts/readthedocs.org/user_builds/acts/checkouts/v20.0.0/Plugins/Autodiff/include/Acts/Plugins/Autodiff/AutodiffExtensionWrapper.hpp>

Default RKN4 evaluator for autodiff.

Public Types

using AutodiffFreeMatrix = Eigen::Matrix<AutodiffScalar, eFreeSize, eFreeSize>
using AutodiffFreeVector = Eigen::Matrix<AutodiffScalar, eFreeSize, 1>
using AutodiffScalar = autodiff::dual
using AutodiffVector3 = Eigen::Matrix<AutodiffScalar, 3, 1>

Public Functions

AutodiffExtensionWrapper() = default

Default constructor.

template<typename propagator_state_t, typename stepper_t>
inline int bid(const propagator_state_t &ps, const stepper_t &st) const
template<typename propagator_state_t, typename stepper_t>
inline bool finalize(propagator_state_t &state, const stepper_t &stepper, const double h) const
template<typename propagator_state_t, typename stepper_t>
inline bool finalize(propagator_state_t &state, const stepper_t &stepper, const double h, FreeMatrix &D) const
template<typename propagator_state_t, typename stepper_t>
inline bool k(const propagator_state_t &state, const stepper_t &stepper, Vector3 &knew, const Vector3 &bField, std::array<double, 4> &kQoP, const int i = 0, const double h = 0., const Vector3 &kprev = Vector3::Zero())

Public Members

basic_extension_t<double> m_doubleExtension

Private Functions

template<typename step_data_t, typename fake_state_t>
inline auto RKN4step(const AutodiffFreeVector &in, const step_data_t &sd, fake_state_t state, const double h) const
template<typename propagator_state_t, typename stepper_t>
inline bool transportMatrix(propagator_state_t &state, const stepper_t &stepper, const double h, FreeMatrix &D) const
template<class options_t, class navigation_t>
struct FakePropState

Public Members

const navigation_t &navigation
const options_t &options
FakeStepperState stepping
struct FakeStepper

Public Functions

inline auto charge(const FakeStepperState &s) const
inline auto direction(const FakeStepperState &s) const
inline auto momentum(const FakeStepperState &s) const
inline auto position(const FakeStepperState &s) const
struct FakeStepperState

Public Members

bool covTransport = false
AutodiffFreeVector derivative
AutodiffFreeVector pars
double q