CMS 3D CMS Logo

SurveyResidual.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignment_SurveyResidual_h
2 #define Alignment_CommonAlignment_SurveyResidual_h
3 
18 
19 class Alignable;
20 class AlignableSurface;
21 
23 public:
29  align::StructureType, // level at which residuals are found
30  bool bias = false // true for biased residuals
31  );
32 
36  inline bool valid() const;
37 
41 
45 
48 
49 private:
52  void findSisters(const Alignable*, bool bias);
53 
55  void calculate(const Alignable&);
56 
57  // Cache some values for calculation
58 
59  const Alignable* theMother; // mother that matches the structure type
60  // given in constructor
61 
62  const AlignableSurface& theSurface; // current surface
63 
64  const std::vector<bool>& theSelector; // flags for selected parameters
65 
66  std::vector<const Alignable*> theSisters; // list of final daughters for
67  // finding mother's position
68 
69  align::GlobalVectors theNominalVs; // nominal points from mother's pos
70  align::GlobalVectors theCurrentVs; // current points rotated to nominal surf
71 
73 };
74 
75 bool SurveyResidual::valid() const { return theMother != nullptr; }
76 
77 #endif
std::vector< const Alignable * > theSisters
void calculate(const Alignable &)
Find the nominal and current vectors.
const std::vector< bool > & theSelector
align::GlobalVectors theCurrentVs
align::GlobalVectors theNominalVs
SurveyResidual(const Alignable &, align::StructureType, bool bias=false)
void findSisters(const Alignable *, bool bias)
CLHEP::HepVector AlgebraicVector
align::LocalVectors pointsResidual() const
AlgebraicSymMatrix inverseCovariance() const
Get inverse of survey covariance wrt given structure type in constructor.
std::vector< GlobalVector > GlobalVectors
Definition: Utilities.h:28
std::vector< LocalVector > LocalVectors
Definition: Utilities.h:30
const Alignable * theMother
AlgebraicVector sensorResidual() const
CLHEP::HepSymMatrix AlgebraicSymMatrix
math::Error< 6 >::type ErrorMatrix
Definition: Definitions.h:37
const AlignableSurface & theSurface
bool valid() const
align::ErrorMatrix theCovariance