![]() |
Belle II Software development
|
Helper construct implementing the (re)estimation of the drift length for various hit objects. More...
#include <DriftLengthEstimator.h>
Classes | |
| struct | FacetDriftLengthCache |
| Memory for the results of a facet drift length update that do not depend on the right left passage hypothesis of the middle hit. More... | |
Public Member Functions | |
| void | exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) |
| Add the parameters of the estimator to the module. | |
| double | updateDriftLength (TrackingUtilities::CDCRecoHit2D &recoHit2D) |
| Update the drift length of the reconstructed hit in place. | |
| double | updateDriftLength (TrackingUtilities::CDCRecoHit3D &recoHit3D, double tanLambda) |
| Update the drift length of the reconstructed hit in place. | |
| void | updateDriftLength (TrackingUtilities::CDCFacet &facet) |
| Re-estimate the drift length of all three contained drift circles. | |
| void | updateDriftLength (TrackingUtilities::CDCFacet &facet, FacetDriftLengthCache &cache) |
| Re-estimate the drift lengths like updateDriftLength(facet), sharing the results that do not depend on the middle right left passage hypothesis via the given cache. | |
| void | updateDriftLength (TrackingUtilities::CDCSegment2D &segment) |
| Update the drift length of the contained reconstructed hit in place. | |
| void | updateDriftLength (TrackingUtilities::CDCSegment3D &segment, double tanLambda) |
| Update the drift length of the contained reconstructed hit in place. | |
| void | updateDriftLength (TrackingUtilities::CDCTrack &track, double tanLambda) |
| Update the drift length of the contained reconstructed hit in place. | |
Public Attributes | |
| bool | m_param_useAlphaInDriftLength = true |
| Parameter : Switch to serve the alpha angle to the drift length translator. | |
| double | m_param_tofMassScale = NAN |
| Parameter : Mass to estimate the velocity in the flight time to the hit. | |
Private Member Functions | |
| CDC::RealisticTDCCountTranslator & | getTDCCountTranslator () |
| Getter for the drift time translator constructing it on first use. | |
Private Attributes | |
| std::shared_ptr< CDC::RealisticTDCCountTranslator > | m_tdcCountTranslator |
| Drift time translator constructed lazily on first use. | |
Helper construct implementing the (re)estimation of the drift length for various hit objects.
Definition at line 43 of file DriftLengthEstimator.h.
| void exposeParameters | ( | ModuleParamList * | moduleParamList, |
| const std::string & | prefix ) |
Add the parameters of the estimator to the module.
Definition at line 49 of file DriftLengthEstimator.cc.
|
inlineprivate |
Getter for the drift time translator constructing it on first use.
The translator cannot be constructed together with the estimator, which usually happens during module construction, since it requires the geometry to be present.
Definition at line 121 of file DriftLengthEstimator.h.
| void updateDriftLength | ( | TrackingUtilities::CDCFacet & | facet | ) |
Re-estimate the drift length of all three contained drift circles.
Using the additional flight direction information the accuracy of the drift length can be increased a lot helping the filters following this step
Definition at line 93 of file DriftLengthEstimator.cc.
| void updateDriftLength | ( | TrackingUtilities::CDCFacet & | facet, |
| FacetDriftLengthCache & | cache ) |
Re-estimate the drift lengths like updateDriftLength(facet), sharing the results that do not depend on the middle right left passage hypothesis via the given cache.
On the first call the cache is filled from a full update. Subsequent calls must be made with facets that differ from the first one only in the right left passage hypothesis of the middle hit and with unchanged base drift lengths, and only recompute the drift length of the middle hit.
Definition at line 135 of file DriftLengthEstimator.cc.
| double updateDriftLength | ( | TrackingUtilities::CDCRecoHit2D & | recoHit2D | ) |
Update the drift length of the reconstructed hit in place.
Definition at line 62 of file DriftLengthEstimator.cc.
| double updateDriftLength | ( | TrackingUtilities::CDCRecoHit3D & | recoHit3D, |
| double | tanLambda ) |
Update the drift length of the reconstructed hit in place.
Definition at line 201 of file DriftLengthEstimator.cc.
| void updateDriftLength | ( | TrackingUtilities::CDCSegment2D & | segment | ) |
Update the drift length of the contained reconstructed hit in place.
Definition at line 194 of file DriftLengthEstimator.cc.
| void updateDriftLength | ( | TrackingUtilities::CDCSegment3D & | segment, |
| double | tanLambda ) |
Update the drift length of the contained reconstructed hit in place.
Definition at line 239 of file DriftLengthEstimator.cc.
| void updateDriftLength | ( | TrackingUtilities::CDCTrack & | track, |
| double | tanLambda ) |
Update the drift length of the contained reconstructed hit in place.
Definition at line 247 of file DriftLengthEstimator.cc.
| double m_param_tofMassScale = NAN |
Parameter : Mass to estimate the velocity in the flight time to the hit.
Definition at line 112 of file DriftLengthEstimator.h.
| bool m_param_useAlphaInDriftLength = true |
Parameter : Switch to serve the alpha angle to the drift length translator.
Definition at line 109 of file DriftLengthEstimator.h.
|
private |
Drift time translator constructed lazily on first use.
Definition at line 130 of file DriftLengthEstimator.h.