CMS 3D CMS Logo

CompositeAlignmentDerivativesExtractor.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignmentParametrization_CompositeAlignmentDerivativesExtractor_H
2 #define Alignment_CommonAlignmentParametrization_CompositeAlignmentDerivativesExtractor_H
3 
6 
14 
15 class Alignable;
16 class AlignableDet;
19 
21 public:
25  const std::vector<AlignableDet *> &alignableDets,
26  const std::vector<TrajectoryStateOnSurface> &tsos);
29  const std::vector<AlignableDetOrUnitPtr> &alignableDets,
30  const std::vector<TrajectoryStateOnSurface> &tsos);
31 
34 
35  const AlgebraicMatrix &derivatives(void) const { return theDerivatives; }
36  const AlgebraicVector &correctionTerm(void) const { return theCorrectionTerm; }
37 
38 private:
39  void extractCurrentAlignment(const align::Alignables &alignables,
40  const std::vector<AlignableDetOrUnitPtr> &alignableDets,
41  const std::vector<TrajectoryStateOnSurface> &tsos);
42 
43  void extractWithoutMultipleHits(const std::vector<AlgebraicVector> &subCorrectionTerm,
44  const std::vector<AlgebraicMatrix> &subDerivatives);
45 
46  void extractWithMultipleHits(const std::vector<AlgebraicVector> &subCorrectionTerm,
47  const std::vector<AlgebraicMatrix> &subDerivatives,
48  const align::Alignables &alignables);
49 
52 };
53 
54 #endif
CompositeAlignmentDerivativesExtractor(const align::Alignables &alignables, const std::vector< AlignableDet * > &alignableDets, const std::vector< TrajectoryStateOnSurface > &tsos)
void extractWithMultipleHits(const std::vector< AlgebraicVector > &subCorrectionTerm, const std::vector< AlgebraicMatrix > &subDerivatives, const align::Alignables &alignables)
CLHEP::HepMatrix AlgebraicMatrix
void extractWithoutMultipleHits(const std::vector< AlgebraicVector > &subCorrectionTerm, const std::vector< AlgebraicMatrix > &subDerivatives)
CLHEP::HepVector AlgebraicVector
std::vector< Alignable * > Alignables
Definition: Utilities.h:31
void extractCurrentAlignment(const align::Alignables &alignables, const std::vector< AlignableDetOrUnitPtr > &alignableDets, const std::vector< TrajectoryStateOnSurface > &tsos)