Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::CovarianceCache Struct Reference

#include <acts/blob/sPHENIX/Core/include/Acts/Propagator/CovarianceTransport.hpp>

+ Collaboration diagram for Acts::CovarianceCache:

Public Member Functions

 CovarianceCache ()=default
 Defaulted constructor, gives invalid cache.
 
 CovarianceCache (const GeometryContext &gctx, const Surface &surface, const Vector3 &position, const BoundVector &boundParameters, const BoundSquareMatrix &boundCovariance)
 
 CovarianceCache (const Vector3 &position, const Vector3 &direction, const BoundSquareMatrix &boundCovariance)
 
 CovarianceCache (const FreeVector &freeParameters, const FreeSquareMatrix &freeCovariance)
 

Public Attributes

bool applyTransport = false
 Internal cache state, indicates correct setup.
 
const SurfaceatSurface = nullptr
 Internal cache state, at surface indication.
 
Vector3 atPosition = Vector3::Zero()
 Internal cache state, at position.
 
VariantCovariance covariance
 Variant: the currently held covariance.
 
std::optional< BoundToFreeMatrixboundToFreeJacobian = std::nullopt
 Optional for starting from bound or curvilinear.
 
std::optional< ActsMatrix< 8, 7 > > anglesToDirectionJacobian = std::nullopt
 Options for starting from free.
 
std::optional< ActsMatrix< 7, 8 > > directionToAnglesJacobian = std::nullopt
 
FreeMatrix freeTransportJacobian = FreeMatrix::Identity()
 Non-variant: the free transport jacobian.
 
FreeVector freeToPathDerivatives = FreeVector::Zero()
 Non-variant: the free derivatives.
 

Detailed Description

Helper struct holding the necessary cache for the Covariance transport in various parametrisations.

Definition at line 30 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 30 of file CovarianceTransport.hpp

Constructor & Destructor Documentation

Acts::CovarianceCache::CovarianceCache ( )
default

Defaulted constructor, gives invalid cache.

Acts::CovarianceCache::CovarianceCache ( const GeometryContext gctx,
const Surface surface,
const Vector3 position,
const BoundVector boundParameters,
const BoundSquareMatrix boundCovariance 
)

Constructor from bound & surface

Parameters
gctxThe current geometry context
surfaceThe surface of the bound representation
positionThe position of the representation
boundParametersThe bound parameters at the surface
boundCovarianceThe bound covariance to be propagated

This constructor will set the variant covariance type to a bound matrix, remember the surface & establish the jacobian between bound and free parametrisation.

Definition at line 13 of file CovarianceTransport.cpp.

View newest version in sPHENIX GitHub at line 13 of file CovarianceTransport.cpp

References boundToFreeJacobian, Acts::Surface::boundToFreeJacobian(), and covariance.

+ Here is the call graph for this function:

Acts::CovarianceCache::CovarianceCache ( const Vector3 position,
const Vector3 direction,
const BoundSquareMatrix boundCovariance 
)

Constructor from curvilinear

Parameters
positionThe position of the representation
directionThe direction of at the representation
boundCovarianceThe bound covariance to be propagated

This constructor will set the variant covariance type to a bound matrix, remember the surface & establish the jacobian between bound and free parametrisation.

Definition at line 23 of file CovarianceTransport.cpp.

View newest version in sPHENIX GitHub at line 23 of file CovarianceTransport.cpp

References boundToFreeJacobian, covariance, and Acts::detail::curvilinearToFreeJacobian().

+ Here is the call graph for this function:

Acts::CovarianceCache::CovarianceCache ( const FreeVector freeParameters,
const FreeSquareMatrix freeCovariance 
)

Construction from free

Parameters
freeParametersThe free parameters
freeCovarianceThe free covariance to be propagated

Definition at line 31 of file CovarianceTransport.cpp.

View newest version in sPHENIX GitHub at line 31 of file CovarianceTransport.cpp

References anglesToDirectionJacobian, Acts::detail::anglesToDirectionJacobian(), covariance, directionToAnglesJacobian, Acts::detail::directionToAnglesJacobian(), and Acts::eFreeDir0.

+ Here is the call graph for this function:

Member Data Documentation

std::optional<ActsMatrix<8, 7> > Acts::CovarianceCache::anglesToDirectionJacobian = std::nullopt

Options for starting from free.

Definition at line 46 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 46 of file CovarianceTransport.hpp

Referenced by CovarianceCache(), Acts::transportCovarianceToBound(), Acts::transportCovarianceToCurvilinear(), and Acts::transportCovarianceToFree().

bool Acts::CovarianceCache::applyTransport = false

Internal cache state, indicates correct setup.

Definition at line 32 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 32 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().

Vector3 Acts::CovarianceCache::atPosition = Vector3::Zero()

Internal cache state, at position.

Definition at line 38 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 38 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().

const Surface* Acts::CovarianceCache::atSurface = nullptr

Internal cache state, at surface indication.

Definition at line 35 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 35 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().

std::optional<BoundToFreeMatrix> Acts::CovarianceCache::boundToFreeJacobian = std::nullopt

Optional for starting from bound or curvilinear.

Definition at line 44 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 44 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), CovarianceCache(), Acts::transportCovarianceToBound(), Acts::transportCovarianceToCurvilinear(), and Acts::transportCovarianceToFree().

VariantCovariance Acts::CovarianceCache::covariance

Variant: the currently held covariance.

Definition at line 41 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 41 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), CovarianceCache(), Acts::transportCovarianceToBound(), Acts::transportCovarianceToCurvilinear(), and Acts::transportCovarianceToFree().

std::optional<ActsMatrix<7, 8> > Acts::CovarianceCache::directionToAnglesJacobian = std::nullopt
FreeVector Acts::CovarianceCache::freeToPathDerivatives = FreeVector::Zero()

Non-variant: the free derivatives.

Definition at line 52 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 52 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::transportCovarianceToBound(), and Acts::transportCovarianceToCurvilinear().

FreeMatrix Acts::CovarianceCache::freeTransportJacobian = FreeMatrix::Identity()

Non-variant: the free transport jacobian.

Definition at line 50 of file CovarianceTransport.hpp.

View newest version in sPHENIX GitHub at line 50 of file CovarianceTransport.hpp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::transportCovarianceToBound(), Acts::transportCovarianceToCurvilinear(), and Acts::transportCovarianceToFree().


The documentation for this struct was generated from the following files: