#include <Associator_BestMatch.h>
|
| std::map< int, int > | matcher (const std::vector< Tp * > &ref, const std::vector< Tq * > &test) |
Definition at line 197 of file Associator_BestMatch.h.
◆ map_type
template<typename T, typename S = T>
◆ rmap_type
template<typename T, typename S = T>
◆ Associator_BestSigmaMatcher()
| Associator_BestSigmaMatcher::Associator_BestSigmaMatcher |
( |
const std::string & | name, |
|
|
double | dsigma = 1 ) |
|
inline |
Definition at line 201 of file Associator_BestMatch.h.
201 :
203 {
204 std::cout << "Associator: Best Sigma Matcher" << std::endl;
205 }
BestMatcher< TIDA::Track > Associator_BestMatcher
◆ ~Associator_BestSigmaMatcher()
| virtual Associator_BestSigmaMatcher::~Associator_BestSigmaMatcher |
( |
| ) |
|
|
inlinevirtual |
◆ clear()
template<typename T, typename S = T>
◆ clone()
◆ distance()
Implements BestMatcher< TIDA::Track >.
Definition at line 211 of file Associator_BestMatch.h.
211 {
212 double deta =
t1->eta()-
t0->eta();
213 double dphi =
t1->phi()-
t0->phi();
216 double dzed =
t1->z0()-
t0->z0();
217
218
219
223
224 double dr = std::sqrt( deta*deta + dphi*dphi + dzed*dzed );
225
226
227
228
229
231 }
std::vector< ALFA_RawDataCollection_p1 > t1
◆ match() [1/2]
Definition at line 68 of file BestMatcher.h.
69 {
71
73
79 }
80
81 }
std::map< int, int > matcher(const std::vector< Tp * > &ref, const std::vector< Tq * > &test)
virtual const TIDA::Track * matched(TIDA::Track *t)
◆ match() [2/2]
template<typename T, typename S = T>
| virtual void TIDA::Associator< T, S >::match |
( |
const std::vector< T * > & | s1, |
|
|
const std::vector< S * > & | s2 ) |
|
pure virtualinherited |
◆ matched() [1/2]
template<typename T, typename S = T>
◆ matched() [2/2]
template<typename T, typename S = T>
◆ matcher()
inserting into a multimatch sorts them into order as they are added so you get the list of best matches imediately NB: probably quicker to add them to a vector and then sort them afterward
now go through from best to worst, adding to another sorted set only the matches that do not use tracks already used by a better matching pair already found
set of unique track pairings NB: for some reason, using the multiset is faster than using a vector, even though we are only iterating through it later
hooray!! now print out the answer, make a map etc this isn't technically needed, could just use the set of "matched" objects, but hey ho
Definition at line 91 of file BestMatcher.h.
91 {
92
98
100
101 for (
unsigned int i=0 ;
i<
ref.
size() ;
i++ ) {
102
106 m.insert( matched_(
d,
i,
j) );
107 }
108 }
109 }
110
114
117
123
125
127
129
132
135
138
140
142
143 }
144
145
146
147
151
152
153
155
156
160
162 }
163
165
166 }
virtual double distance(const TIDA::Track *t0, const TIDA::Track *t1) const=0
◆ revmatched() [1/2]
template<typename T, typename S = T>
◆ revmatched() [2/2]
template<typename T, typename S = T>
◆ size()
template<typename T, typename S = T>
◆ m_d
◆ mmatched
template<typename T, typename S = T>
◆ mname
template<typename T, typename S = T>
◆ mrevmatched
template<typename T, typename S = T>
The documentation for this class was generated from the following file: