![]() |
ATLAS Offline Software
|
The BoundaryCheck class allows to steer the way surface boundaries are used for inside/outside checks of parameters. More...
#include <BoundaryCheck.h>
Public Types | |
| enum | BoundaryCheckType { absolute = 0 , chi2corr = 1 } |
Public Member Functions | |
| AmgSymMatrix (2) lCovariance | |
| local covariance matrix | |
| BoundaryCheck (bool sCheck) | |
| Constructor for single boolean behavious. | |
| BoundaryCheck (bool chkL1, bool chkL2, double tloc1=0., double tloc2=0.) | |
| Constructor for tolerance based check. | |
| BoundaryCheck (const AmgSymMatrix(2) &lCov, int nsig=1, bool chkL1=true, bool chkL2=true) | |
| Constructor for chi2 based check. | |
| operator bool () const | |
| Conversion operator to bool. | |
| void | ComputeKDOP (const std::vector< Amg::Vector2D > &v, const std::vector< Amg::Vector2D > &KDOPAxes, std::vector< KDOP > &kdop) const |
| Each Bounds has a method inside, which checks if a LocalPosition is inside the bounds. | |
| std::vector< Amg::Vector2D > | EllipseToPoly (int resolution=3) const |
| bool | TestKDOPKDOP (const std::vector< KDOP > &a, const std::vector< KDOP > &b) const |
| double | FastArcTan (double x) const |
| sincosCache | FastSinCos (double x) const |
Public Attributes | |
| bool | checkLoc1 |
| check local 1 coordinate | |
| bool | checkLoc2 |
| check local 2 coordinate | |
| int | nSigmas |
| allowed sigmas for chi2 boundary check | |
| double | toleranceLoc1 |
| absolute tolerance in local 1 coordinate | |
| double | toleranceLoc2 |
| absolute tolerance in local 2 coordinate | |
| BoundaryCheckType | bcType |
Static Private Attributes | |
| static constexpr double | s_cos22 = 0.923879532511286756128183189396788286822416625863642486115097 |
| static constexpr double | s_cos45 = 0.707106781186547524400844362104849039284835937688474036588339 |
| static constexpr double | s_cos67 = 0.382683432365089771728459984030398866761344562485627041433800 |
The BoundaryCheck class allows to steer the way surface boundaries are used for inside/outside checks of parameters.
These checks are performed in the local 2D frame of the surface and can either be:
inside/outside according to a given chi2 value
It also provides all the necessary tools for the individual implementations in the different SurfaceBounds classes.
Definition at line 50 of file BoundaryCheck.h.
| Enumerator | |
|---|---|
| absolute | absolute check including tolerances |
| chi2corr | relative (chi2 based) with full correlations |
Definition at line 58 of file BoundaryCheck.h.
|
inline |
Constructor for single boolean behavious.
Definition at line 75 of file BoundaryCheck.h.
|
inline |
Constructor for tolerance based check.
Definition at line 86 of file BoundaryCheck.h.
|
inline |
Constructor for chi2 based check.
Definition at line 97 of file BoundaryCheck.h.
| Trk::BoundaryCheck::AmgSymMatrix | ( | 2 | ) |
local covariance matrix
| void Trk::BoundaryCheck::ComputeKDOP | ( | const std::vector< Amg::Vector2D > & | v, |
| const std::vector< Amg::Vector2D > & | KDOPAxes, | ||
| std::vector< KDOP > & | kdop ) const |
Each Bounds has a method inside, which checks if a LocalPosition is inside the bounds.
Inside can be called without/with boundary check
| std::vector< Amg::Vector2D > Trk::BoundaryCheck::EllipseToPoly | ( | int | resolution = 3 | ) | const |
| double Trk::BoundaryCheck::FastArcTan | ( | double | x | ) | const |
| sincosCache Trk::BoundaryCheck::FastSinCos | ( | double | x | ) | const |
|
inline |
Conversion operator to bool.
Definition at line 108 of file BoundaryCheck.h.
| bool Trk::BoundaryCheck::TestKDOPKDOP | ( | const std::vector< KDOP > & | a, |
| const std::vector< KDOP > & | b ) const |
| BoundaryCheckType Trk::BoundaryCheck::bcType |
Definition at line 70 of file BoundaryCheck.h.
| bool Trk::BoundaryCheck::checkLoc1 |
check local 1 coordinate
Definition at line 65 of file BoundaryCheck.h.
| bool Trk::BoundaryCheck::checkLoc2 |
check local 2 coordinate
Definition at line 66 of file BoundaryCheck.h.
| int Trk::BoundaryCheck::nSigmas |
allowed sigmas for chi2 boundary check
Definition at line 67 of file BoundaryCheck.h.
|
staticconstexprprivate |
Definition at line 53 of file BoundaryCheck.h.
|
staticconstexprprivate |
Definition at line 54 of file BoundaryCheck.h.
|
staticconstexprprivate |
Definition at line 55 of file BoundaryCheck.h.
| double Trk::BoundaryCheck::toleranceLoc1 |
absolute tolerance in local 1 coordinate
Definition at line 68 of file BoundaryCheck.h.
| double Trk::BoundaryCheck::toleranceLoc2 |
absolute tolerance in local 2 coordinate
Definition at line 69 of file BoundaryCheck.h.