#include <ZScanSeedFinder.h>
|
| ZScanSeedFinder (const std::string &t, const std::string &n, const IInterface *p) |
|
virtual | ~ZScanSeedFinder () |
|
virtual StatusCode | initialize () override |
|
virtual StatusCode | finalize () override |
|
virtual Amg::Vector3D | findSeed (const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final |
| Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object. More...
|
|
virtual Amg::Vector3D | findSeed (const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint=0) const override final |
| Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object. More...
|
|
virtual std::vector< Amg::Vector3D > | findMultiSeeds (const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final |
| Finds full vector of linearization points from a vector of tracks and returns it as an Amg::Vector3D object. More...
|
|
virtual std::vector< Amg::Vector3D > | findMultiSeeds (const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint=0) const override final |
| Finds full vector of linearization points from a vector of TrackParameters and returns it as an Amg::Vector3D object. More...
|
|
virtual Amg::Vector3D | findSeed (const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const=0 |
| Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object. More...
|
|
virtual Amg::Vector3D | findSeed (const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint=0) const=0 |
| Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object. More...
|
|
virtual Amg::Vector3D | findSeed (const double, const double, const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint=0) const |
| Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object. More...
|
|
virtual Amg::Vector3D | findSeed (const double, const double, std::unique_ptr< Trk::IMode3dInfo > &, const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex *constraint=0) const |
| Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object. More...
|
|
Definition at line 46 of file ZScanSeedFinder.h.
◆ ZScanSeedFinder()
Trk::ZScanSeedFinder::ZScanSeedFinder |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
◆ ~ZScanSeedFinder()
Trk::ZScanSeedFinder::~ZScanSeedFinder |
( |
| ) |
|
|
virtualdefault |
◆ estimateWeight()
Estimate z-position and weight for one track.
Definition at line 222 of file ZScanSeedFinder.cxx.
226 std::unique_ptr<const Trk::ImpactParametersAndSigma> ipas;
227 if (constraint !=
nullptr && constraint->covariancePosition()(0,0)!=0) {
228 ipas = std::unique_ptr<const Trk::ImpactParametersAndSigma> (
m_IPEstimator->estimate (&iTrk, constraint));
231 std::pair<double, double> z0AndWeight;
232 if (ipas !=
nullptr && ipas->
sigmad0 > 0)
234 z0AndWeight.first = ipas->
IPz0 + constraint->
position().z();
243 z0AndWeight.second = 1.;
248 if (constraint !=
nullptr)
ATH_MSG_WARNING(
"Unable to compute impact parameter significance; setting IPWeight = 1");
249 z0AndWeight.first = iTrk.position()[
Trk::z];
250 z0AndWeight.second = 1.;
◆ finalize()
StatusCode Trk::ZScanSeedFinder::finalize |
( |
| ) |
|
|
overridevirtual |
◆ findMultiSeeds() [1/2]
Finds full vector of linearization points from a vector of tracks and returns it as an Amg::Vector3D object.
Intended for seed finders that produce all at once. If you want an additional constraint can be taken into account.
Definition at line 273 of file ZScanSeedFinder.cxx.
◆ findMultiSeeds() [2/2]
Finds full vector of linearization points from a vector of TrackParameters and returns it as an Amg::Vector3D object.
Intended for seed finders that produce all at once. If you want an additional constraint can be taken into account.
Definition at line 282 of file ZScanSeedFinder.cxx.
◆ findSeed() [1/6]
Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object.
If you want an additional constraint can be taken into account. Must specify the primary vertex position.
Definition at line 79 of file IVertexSeedFinder.h.
84 return findSeed (perigeeList, constraint);
◆ findSeed() [2/6]
Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object.
If you want an additional constraint can be taken into account. Must specify the primary vertex position. Allows returning additional diagnostic information.
Definition at line 96 of file IVertexSeedFinder.h.
102 return findSeed (perigeeList, constraint);
◆ findSeed() [3/6]
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.
If you want an additional constraint can be taken into account.
Definition at line 83 of file ZScanSeedFinder.cxx.
92 if (std::isnan((*iter)->perigeeParameters()->parameters()[
Trk::d0]))
96 perigeeList.push_back((*iter)->perigeeParameters());
100 return findSeed(perigeeList,constraint);
◆ findSeed() [4/6]
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.
If you want an additional constraint can be taken into account.
◆ findSeed() [5/6]
Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object.
If you want an additional constraint can be taken into account.
Definition at line 106 of file ZScanSeedFinder.cxx.
116 if ( !ZPositions.empty() )
119 ATH_MSG_DEBUG(
"Resulting mean Z position found: " << ZResult);
123 ATH_MSG_DEBUG(
"No tracks with sufficient weight; return z position = 0");
◆ findSeed() [6/6]
Finds a linearization point out of a vector of TrackParameters and returns it as an Amg::Vector3D object.
If you want an additional constraint can be taken into account.
◆ getPositionsCached()
Definition at line 168 of file ZScanSeedFinder.cxx.
169 const EventContext& ctx = Gaudi::Hive::currentContext();
170 Cache& cache = *m_cache;
174 constraintkey.x() = constraint->
position().x();
175 constraintkey.y() = constraint->
position().y();
182 std::vector<Trk::DoubleAndWeight> ZPositions;
184 std::lock_guard<std::mutex> lock (cache.m_mutex);
185 if (ctx.evt() != cache.m_evt) {
186 cache.m_weightMap.clear();
194 ATH_MSG_WARNING(
"Neutrals not supported for seeding. Rejecting track...");
203 " with weight " <<
it->second.second);
206 if (
it->second.second >= 0.01)
208 ZPositions.push_back (
it->second);
◆ getPositionsUncached()
Definition at line 138 of file ZScanSeedFinder.cxx.
139 std::vector<Trk::DoubleAndWeight> ZPositions;
146 ATH_MSG_WARNING(
"Neutrals not supported for seeding. Rejecting track...");
150 std::pair<double, double> z0AndWeight =
153 " with weight " << z0AndWeight.second);
155 if (z0AndWeight.second >= 0.01)
157 ZPositions.push_back(z0AndWeight);
◆ initialize()
StatusCode Trk::ZScanSeedFinder::initialize |
( |
| ) |
|
|
overridevirtual |
Definition at line 54 of file ZScanSeedFinder.cxx.
57 return StatusCode::FAILURE;
66 ATH_MSG_FATAL(
"At most one of Pt and LogPt weighting may be selected");
67 return StatusCode::FAILURE;
71 return StatusCode::SUCCESS;
◆ ATLAS_THREAD_SAFE
◆ m_cacheWeights
bool Trk::ZScanSeedFinder::m_cacheWeights |
|
private |
◆ m_constraintcutoff
float Trk::ZScanSeedFinder::m_constraintcutoff |
|
private |
◆ m_constrainttemp
float Trk::ZScanSeedFinder::m_constrainttemp |
|
private |
◆ m_disableAllWeights
bool Trk::ZScanSeedFinder::m_disableAllWeights |
|
private |
◆ m_eventInfoKey
Initial value:{
this,
"EventInfo",
"EventInfo",
"key for EventInfo retrieval"
}
Definition at line 120 of file ZScanSeedFinder.h.
◆ m_expPt
double Trk::ZScanSeedFinder::m_expPt |
|
private |
◆ m_IPEstimator
Initial value:{
this,
"IPEstimator",
"Trk::TrackToVertexIPEstimator"
}
Definition at line 131 of file ZScanSeedFinder.h.
◆ m_minPt
double Trk::ZScanSeedFinder::m_minPt |
|
private |
◆ m_mode1dfinder
Initial value:{ this,
"Mode1dFinder",
"Trk::FsmwMode1dFinder" }
Definition at line 127 of file ZScanSeedFinder.h.
◆ m_useLogPt
bool Trk::ZScanSeedFinder::m_useLogPt |
|
private |
◆ m_usePt
bool Trk::ZScanSeedFinder::m_usePt |
|
private |
The documentation for this class was generated from the following files:
virtual Amg::Vector3D findSeed(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.