Belle II Software development
|
Findlet to extrapolate found tracks to the PXD sensors and calculate intercepts. More...
#include <ToPXDExtrapolator.h>
Public Types | |
using | IOTypes = std::tuple< AIOTypes... > |
Types that should be served to apply on invocation. | |
using | IOVectors = std::tuple< std::vector< AIOTypes >... > |
Vector types that should be served to apply on invocation. | |
Public Member Functions | |
ToPXDExtrapolator () | |
Find intercepts in the 2D Hough space. | |
void | exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override |
Expose the parameters of the sub findlets. | |
void | initialize () override |
Create the store arrays. | |
void | apply (const std::vector< std::pair< double, double > > &uTracks, const std::vector< std::pair< double, double > > &vTracks, std::vector< std::pair< VxdID, long > > &uExtrapolations, std::vector< std::pair< VxdID, long > > &vExtrapolations) override |
Load in the prepared hits and create tracks for extrapolation to PXD. | |
virtual std::string | getDescription () |
Brief description of the purpose of the concrete findlet. | |
virtual void | apply (ToVector< AIOTypes > &... ioVectors)=0 |
Main function executing the algorithm. | |
void | beginRun () override |
Receive and dispatch signal for the beginning of a new run. | |
void | beginEvent () override |
Receive and dispatch signal for the start of a new event. | |
void | endRun () override |
Receive and dispatch signal for the end of the run. | |
void | terminate () override |
Receive and dispatch Signal for termination of the event processing. | |
Protected Types | |
using | ToVector = typename ToVectorImpl< T >::Type |
Short hand for ToRangeImpl. | |
Protected Member Functions | |
void | addProcessingSignalListener (ProcessingSignalListener *psl) |
Register a processing signal listener to be notified. | |
int | getNProcessingSignalListener () |
Get the number of currently registered listeners. | |
Private Types | |
using | Super = TrackFindingCDC::Findlet< const std::pair< double, double >, const std::pair< double, double >, std::pair< VxdID, long >, std::pair< VxdID, long > > |
Parent class. | |
Private Member Functions | |
void | extrapolateUTrack (const double trackPhi, const double trackRadius, const uint layer, std::vector< std::pair< VxdID, long > > &uExtrapolations) |
extrapolate the u-track to the two PXD layers | |
void | extrapolateVTrack (const long tanLambda, const uint layer, std::vector< std::pair< VxdID, long > > &vExtrapolations) |
extrapolate the v-track to the two PXD layers | |
Private Attributes | |
double | m_param_phiCutL1 = M_PI / 3. |
Create ROIs in phi only if the absolute difference in phi between sensor and track is smaller than this value on L1. | |
double | m_param_phiCutL2 = M_PI / 4. |
Create ROIs in phi only if the absolute difference in phi between sensor and track is smaller than this value on L2. | |
bool | m_param_createPXDIntercepts = false |
Create PXDIntercepts? | |
std::string | m_param_PXDInterceptStoreArrayName = "DATCONFPGAPXDIntercepts" |
name of the PXDIntercept StoreArray | |
StoreArray< PXDIntercept > | m_pxdIntercepts |
PXDIntercept StoreArray. | |
const long | centerZShiftLayer1 [2] = {36825500, -8825500} |
shift of the sensor center along z for L1, in µm for use of mhp_z > (length/-2)+shiftZ && mhp_z < (length/2)+shiftZ | |
const long | centerZShiftLayer2 [2] = {50145500, -12145500} |
shift of the sensor center along z for L2, in µm for use of mhp_z > (length/-2)+shiftZ && mhp_z < (length/2)+shiftZ | |
const long | layerRadius [2] = {14285, 22121} |
radius of L1 and L2, in µm | |
const long | sensorLength [2] = {44800000, 61440000} |
length of the modules flr L1 and L2, in µm | |
const long | sensorMinY = -3600000 |
minimum y coordinate for a ladder in the position of ladder 1 (perpendicular to the x-axis), in µm | |
const long | sensorMaxY = 8900000 |
maximum y coordinate for a ladder in the position of ladder 1 (perpendicular to the x-axis), in µm | |
const long | shiftY = (sensorMaxY + sensorMinY) / 2 |
shift of the sensor center in r-phi | |
const uint | laddersPerLayer [2] = {8, 12} |
number of ladders per layer | |
std::vector< ProcessingSignalListener * > | m_subordinaryProcessingSignalListeners |
References to subordinary signal processing listener contained in this findlet. | |
bool | m_initialized = false |
Flag to keep track whether initialization happened before. | |
bool | m_terminated = false |
Flag to keep track whether termination happened before. | |
std::string | m_initializedAs |
Name of the type during initialisation. | |
Findlet to extrapolate found tracks to the PXD sensors and calculate intercepts.
Definition at line 29 of file ToPXDExtrapolator.h.
|
inherited |
|
inherited |
|
private |
Parent class.
Definition at line 32 of file ToPXDExtrapolator.h.
|
protectedinherited |
Find intercepts in the 2D Hough space.
Definition at line 22 of file ToPXDExtrapolator.cc.
|
protectedinherited |
Register a processing signal listener to be notified.
Definition at line 55 of file CompositeProcessingSignalListener.cc.
|
override |
Load in the prepared hits and create tracks for extrapolation to PXD.
Definition at line 56 of file ToPXDExtrapolator.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the start of a new event.
Reimplemented from ProcessingSignalListener.
Reimplemented in SpacePointTagger< Belle2::CKFToPXDResult, Belle2::PXDCluster >, SpacePointTagger< Belle2::CKFToSVDResult, Belle2::SVDCluster >, BaseEventTimeExtractor< RecoTrack * >, BaseEventTimeExtractor< TrackFindingCDC::CDCWireHit & >, SharingHitsMatcher< Belle2::TrackFindingCDC::CDCTrack, Belle2::TrackFindingCDC::CDCSegment2D >, MCSymmetric< BaseAxialSegmentPairFilter >, MCSymmetric< BaseFacetFilter >, MCSymmetric< BaseFacetRelationFilter >, MCSymmetric< BaseSegmentPairFilter >, MCSymmetric< BaseSegmentPairRelationFilter >, MCSymmetric< BaseSegmentRelationFilter >, MCSymmetric< BaseSegmentTripleFilter >, MCSymmetric< BaseSegmentTripleRelationFilter >, MCSymmetric< BaseTrackRelationFilter >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCFacet >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCWireHit, true >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegment2D >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCTrack >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegmentPair >, StoreVectorSwapper< Belle2::TrackFindingCDC::CDCSegmentTriple >, RecoTrackStorer, ROIFinder, and SVDHoughTracking.
Definition at line 31 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the beginning of a new run.
Reimplemented from ProcessingSignalListener.
Reimplemented in LayerRelationFilter< AFilter >, FourHitFilter, QualityIndicatorFilter, ThreeHitFilter, TwoHitVirtualIPFilter, TwoHitVirtualIPQIFilter, RecoTrackStorer, ROIFinder, SpacePointLoaderAndPreparer, and TrackCandidateResultRefiner.
Definition at line 23 of file CompositeProcessingSignalListener.cc.
|
overridevirtualinherited |
Receive and dispatch signal for the end of the run.
Reimplemented from ProcessingSignalListener.
Definition at line 39 of file CompositeProcessingSignalListener.cc.
|
overridevirtual |
Expose the parameters of the sub findlets.
Reimplemented from Findlet< const std::pair< double, double >, const std::pair< double, double >, std::pair< VxdID, long >, std::pair< VxdID, long > >.
Definition at line 26 of file ToPXDExtrapolator.cc.
|
private |
extrapolate the u-track to the two PXD layers
trackPhi | azimtutal angle of the track |
trackRadius | radius of the track |
layer | PXD layer to extrapolate to |
uExtrapolations | vector containing the extrapolated positions in u |
Definition at line 105 of file ToPXDExtrapolator.cc.
|
private |
extrapolate the v-track to the two PXD layers
tanLambda | azimtutal angle of the track |
layer | PXD layer to extrapolate to |
vExtrapolations | vector containing the extrapolated positions in v |
Definition at line 144 of file ToPXDExtrapolator.cc.
|
inlinevirtualinherited |
|
protectedinherited |
Get the number of currently registered listeners.
Definition at line 60 of file CompositeProcessingSignalListener.cc.
|
overridevirtual |
Create the store arrays.
Reimplemented from ProcessingSignalListener.
Definition at line 46 of file ToPXDExtrapolator.cc.
|
overridevirtualinherited |
Receive and dispatch Signal for termination of the event processing.
Reimplemented from ProcessingSignalListener.
Reimplemented in StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::HyperHough >, StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::QuadraticLegendre >, and StereoHitTrackQuadTreeMatcher< Belle2::TrackFindingCDC::Z0TanLambdaLegendre >.
Definition at line 47 of file CompositeProcessingSignalListener.cc.
|
private |
shift of the sensor center along z for L1, in µm for use of mhp_z > (length/-2)+shiftZ && mhp_z < (length/2)+shiftZ
Definition at line 80 of file ToPXDExtrapolator.h.
|
private |
shift of the sensor center along z for L2, in µm for use of mhp_z > (length/-2)+shiftZ && mhp_z < (length/2)+shiftZ
Definition at line 83 of file ToPXDExtrapolator.h.
|
private |
number of ladders per layer
Definition at line 96 of file ToPXDExtrapolator.h.
|
private |
radius of L1 and L2, in µm
Definition at line 85 of file ToPXDExtrapolator.h.
|
privateinherited |
Flag to keep track whether initialization happened before.
Definition at line 52 of file ProcessingSignalListener.h.
|
privateinherited |
Name of the type during initialisation.
Definition at line 58 of file ProcessingSignalListener.h.
|
private |
Create PXDIntercepts?
Definition at line 71 of file ToPXDExtrapolator.h.
|
private |
Create ROIs in phi only if the absolute difference in phi between sensor and track is smaller than this value on L1.
Definition at line 66 of file ToPXDExtrapolator.h.
|
private |
Create ROIs in phi only if the absolute difference in phi between sensor and track is smaller than this value on L2.
Definition at line 68 of file ToPXDExtrapolator.h.
|
private |
name of the PXDIntercept StoreArray
Definition at line 73 of file ToPXDExtrapolator.h.
|
private |
Definition at line 75 of file ToPXDExtrapolator.h.
|
privateinherited |
References to subordinary signal processing listener contained in this findlet.
Definition at line 52 of file CompositeProcessingSignalListener.h.
|
privateinherited |
Flag to keep track whether termination happened before.
Definition at line 55 of file ProcessingSignalListener.h.
|
private |
length of the modules flr L1 and L2, in µm
Definition at line 87 of file ToPXDExtrapolator.h.
|
private |
maximum y coordinate for a ladder in the position of ladder 1 (perpendicular to the x-axis), in µm
Definition at line 91 of file ToPXDExtrapolator.h.
|
private |
minimum y coordinate for a ladder in the position of ladder 1 (perpendicular to the x-axis), in µm
Definition at line 89 of file ToPXDExtrapolator.h.
|
private |
shift of the sensor center in r-phi
Definition at line 93 of file ToPXDExtrapolator.h.