ATLAS Offline Software
MultiComponentStateCombiner.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
15 #ifndef MultiComponentStateCombiner_H
16 #define MultiComponentStateCombiner_H
17 
19 namespace Trk {
20 
21 namespace MultiComponentStateCombiner {
22 
24 std::unique_ptr<Trk::TrackParameters>
26  const bool useMode = false);
27 
29 void
31  const Trk::ComponentParameters& addThis);
32 
34 void
35 combineParametersWithWeight(AmgVector(5) & firstParameters,
36  double& firstWeight,
37  const AmgVector(5) & secondParameters,
38  const double secondWeight);
39 
41 void
42 combineCovWithWeight(const AmgVector(5) & firstParameters,
43  AmgSymMatrix(5) & firstMeasuredCov,
44  const double firstWeight,
45  const AmgVector(5) & secondParameters,
46  const AmgSymMatrix(5) & secondMeasuredCov,
47  const double secondWeight);
48 
52 combineWithSmoother(const Trk::MultiComponentState& forwardsMultiState,
53  const Trk::MultiComponentState& smootherMultiState,
54  unsigned int maximumNumberOfComponents);
55 
56 }//end of MultiComponentStateCombiner namespace
57 } // end Trk namespace
58 #endif
Trk::MultiComponentStateCombiner::combineToSingle
std::unique_ptr< Trk::TrackParameters > combineToSingle(const MultiComponentState &, const bool useMode=false)
@bried Calculate combined state of many components
Definition: MultiComponentStateCombiner.cxx:305
Trk::MultiComponentStateCombiner::combineCovWithWeight
void combineCovWithWeight(const AmgVector(5) &firstParameters, AmgSymMatrix(5) &firstMeasuredCov, const double firstWeight, const AmgVector(5) &secondParameters, const AmgSymMatrix(5) &secondMeasuredCov, const double secondWeight)
Update cov matrix.
Definition: MultiComponentStateCombiner.cxx:385
Trk::AmgSymMatrix
AmgSymMatrix(5) &GXFTrackState
Definition: GXFTrackState.h:156
AmgVector
AmgVector(4) T2BSTrackFilterTool
Definition: T2BSTrackFilterTool.cxx:114
Trk::MultiComponentState
std::vector< ComponentParameters > MultiComponentState
Definition: ComponentParameters.h:27
Trk::MultiComponentStateCombiner::combineWithWeight
void combineWithWeight(Trk::ComponentParameters &mergeTo, const Trk::ComponentParameters &addThis)
Combined/merge a component to another one.
Definition: MultiComponentStateCombiner.cxx:313
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::MultiComponentStateCombiner::combineParametersWithWeight
void combineParametersWithWeight(AmgVector(5) &firstParameters, double &firstWeight, const AmgVector(5) &secondParameters, const double secondWeight)
Update parameters.
Definition: MultiComponentStateCombiner.cxx:358
Trk::ComponentParameters
Definition: ComponentParameters.h:22
ComponentParameters.h
Definition of component parameters for use in a mixture of many components. In this regime each track...
Trk::MultiComponentStateCombiner::combineWithSmoother
Trk::MultiComponentState combineWithSmoother(const Trk::MultiComponentState &forwardsMultiState, const Trk::MultiComponentState &smootherMultiState, unsigned int maximumNumberOfComponents)
Helper to combine forward with smoother MultiComponentStates.
Definition: MultiComponentStateCombiner.cxx:409