|
CbmRoot
|
Trigger class for secondary two-track vertices in mCBM. More...
#include <V0Trigger.h>
Public Types | |
| typedef std::pair< std::vector< double >, V0TriggerMoniData > | Result |
| typedef cbm::algo::ca::Track | Track |
| typedef cbm::algo::ca::Vector< cbm::algo::ca::Track > | TrackVector |
| typedef cbm::algo::kf::TrackParamS | TrackParam |
Public Member Functions | |
| V0Trigger ()=default | |
| Constructor. | |
| Result | operator() (const TrackVector &tracks, const V0TriggerConfig &config) const |
| Execution. | |
| void | SetQa (std::shared_ptr< V0TriggerQa > pQa) |
| Sets QA module. | |
| std::string | ToString () const |
| Info to string. | |
Private Member Functions | |
| std::pair< double, double > | CalcPCA (const TrackParam &track1, const TrackParam &track2) const |
| Calculation of closest approach of two tracks (straight lines) | |
| bool | Select (const Track &track, const V0TriggerConfig &config) const |
| Check track cuts. | |
| bool | IsPrimary (const TrackParam &track, const V0TriggerConfig &config) const |
| Check if track is a priomary. | |
Private Attributes | |
| std::shared_ptr< V0TriggerQa > | fpQa {std::make_shared<V0TriggerQa>(nullptr)} |
Trigger class for secondary two-track vertices in mCBM.
The class takes an array of tracks and searches for track pairs close in time and with a point of closest approach (PCA) outside of the target area. Tracks are assumed to be straight lines, in the absence of a magnetic field as in mCBM. The class returns a list of trigger times corresponding to track pairs satisfying the selection criteria: Maximum time difference, minimum z of PCA, maximum distance at PCA.
Definition at line 43 of file V0Trigger.h.
| typedef std::pair<std::vector<double>, V0TriggerMoniData> cbm::algo::evbuild::V0Trigger::Result |
Definition at line 46 of file V0Trigger.h.
Definition at line 47 of file V0Trigger.h.
Definition at line 49 of file V0Trigger.h.
Definition at line 48 of file V0Trigger.h.
|
default |
Constructor.
References tracks.
|
private |
Calculation of closest approach of two tracks (straight lines)
| track1 | Parameters of first track |
| track2 | Parameters of second track |
The closest approach is defined at the z position where the transverse distance of the tracks (in the x-y plane) is minimal. This is not strictly the minimal distance in 3-d space, which is mathematically and computationally more involved. It should be a good criterion for the purpose of finding displaced vertices.
Definition at line 82 of file V0Trigger.cxx.
References cbm::algo::kf::TrackParamBase< T >::GetTx(), cbm::algo::kf::TrackParamBase< T >::GetTy(), cbm::algo::kf::TrackParamBase< T >::GetX(), cbm::algo::kf::TrackParamBase< T >::GetY(), cbm::algo::kf::TrackParamBase< T >::GetZ(), and sqrt().
Referenced by operator()().
|
private |
Check if track is a priomary.
| track | Track parameters in target plane |
Definition at line 133 of file V0Trigger.cxx.
References cbm::algo::evbuild::V0TriggerConfig::TrackImpactX_max(), cbm::algo::evbuild::V0TriggerConfig::TrackImpactX_min(), cbm::algo::evbuild::V0TriggerConfig::TrackImpactY_max(), cbm::algo::evbuild::V0TriggerConfig::TrackImpactY_min(), cbm::algo::kf::TrackParamBase< T >::X(), and cbm::algo::kf::TrackParamBase< T >::Y().
Referenced by Select().
| V0Trigger::Result cbm::algo::evbuild::V0Trigger::operator() | ( | const TrackVector & | tracks, |
| const V0TriggerConfig & | config ) const |
Execution.
| tracks | Input track vector |
| config | Trigger configuration |
Definition at line 18 of file V0Trigger.cxx.
References CalcPCA(), fpQa, L_, cbm::algo::evbuild::V0TriggerConfig::PairDeltaT_max(), cbm::algo::evbuild::V0TriggerConfig::PairDist_max(), cbm::algo::evbuild::V0TriggerConfig::PairZ_max(), cbm::algo::evbuild::V0TriggerConfig::PairZ_min(), Select(), and tracks.
|
private |
Check track cuts.
| track | Track |
Definition at line 115 of file V0Trigger.cxx.
References cbm::algo::ca::Track::fParFirst, cbm::algo::ca::Track::fParLast, cbm::algo::ca::Track::fParPV, IsPrimary(), cbm::algo::evbuild::V0TriggerConfig::TrackEndZ_min(), cbm::algo::evbuild::V0TriggerConfig::TrackStartZ_max(), cbm::algo::evbuild::V0TriggerConfig::TrackStartZ_min(), and cbm::algo::kf::TrackParamBase< T >::Z().
Referenced by operator()().
|
inline |
Sets QA module.
| pQa | Pointer to the QA module |
Definition at line 66 of file V0Trigger.h.
References fpQa.
| std::string cbm::algo::evbuild::V0Trigger::ToString | ( | ) | const |
Info to string.
Definition at line 148 of file V0Trigger.cxx.
|
private |
Definition at line 97 of file V0Trigger.h.
Referenced by operator()(), and SetQa().