Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::detail::covariance_helper< CovMatrix_t, NumIter > Struct Template Reference

check and correct covariance matrix More...

#include <acts/blob/sPHENIX/Core/include/Acts/EventData/detail/covariance_helper.hpp>

Static Public Member Functions

static bool validate (CovMatrix_t &covariance)
 check if the covariance is semi-positive and correction is attempted
 
static bool isSemiPositive (const CovMatrix_t &covariance)
 check if the covariance is semi-positive
 
static bool isPositive (const CovMatrix_t &covariance)
 check if the covariance is positive
 

Detailed Description

template<typename CovMatrix_t, signed int NumIter = 1>
struct Acts::detail::covariance_helper< CovMatrix_t, NumIter >

check and correct covariance matrix

Template Parameters
CovMatrix_tThe type of covariance matrix
NumIterThe number of iterations to run the correction

Invocation:

  • covariance_helper<CovMatrix_t, numIter>::validate(covariance) The 'covariance' is checked against semi-positivedefiniteness and limited number of iterations to replace it with the closest semi-positivedefinite are made if it's not
Returns
The (corrected) covariance is semi-positivedefinite or not

Definition at line 30 of file covariance_helper.hpp.

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

Member Function Documentation

template<typename CovMatrix_t , signed int NumIter = 1>
static bool Acts::detail::covariance_helper< CovMatrix_t, NumIter >::isPositive ( const CovMatrix_t &  covariance)
inlinestatic

check if the covariance is positive

Definition at line 64 of file covariance_helper.hpp.

View newest version in sPHENIX GitHub at line 64 of file covariance_helper.hpp

template<typename CovMatrix_t , signed int NumIter = 1>
static bool Acts::detail::covariance_helper< CovMatrix_t, NumIter >::isSemiPositive ( const CovMatrix_t &  covariance)
inlinestatic

check if the covariance is semi-positive

Definition at line 55 of file covariance_helper.hpp.

View newest version in sPHENIX GitHub at line 55 of file covariance_helper.hpp

Referenced by Acts::detail::covariance_helper< CovMatrix_t, NumIter >::validate().

+ Here is the caller graph for this function:

template<typename CovMatrix_t , signed int NumIter = 1>
static bool Acts::detail::covariance_helper< CovMatrix_t, NumIter >::validate ( CovMatrix_t &  covariance)
inlinestatic

check if the covariance is semi-positive and correction is attempted

check again after the iterations

Definition at line 32 of file covariance_helper.hpp.

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

References H, Acts::detail::covariance_helper< CovMatrix_t, NumIter >::isSemiPositive(), and S().

+ Here is the call graph for this function:


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