From 0ad92bfe584ba7417c5097d2d2fe1c55e28fabbc Mon Sep 17 00:00:00 2001 From: Bastian Schlag <bastian.schlag@cern.ch> Date: Wed, 25 Mar 2020 13:43:50 +0100 Subject: [PATCH] merge VertexFitterOptions and VertexFinderOptions to VertexingOptions --- .../Vertexing/AdaptiveMultiVertexFinder.hpp | 17 ++++--- .../Vertexing/AdaptiveMultiVertexFinder.ipp | 24 +++++----- .../Vertexing/AdaptiveMultiVertexFitter.hpp | 18 ++++---- .../Vertexing/AdaptiveMultiVertexFitter.ipp | 20 ++++----- .../Acts/Vertexing/DummyVertexFitter.hpp | 4 +- .../Vertexing/FullBilloirVertexFitter.hpp | 6 +-- .../Vertexing/FullBilloirVertexFitter.ipp | 35 ++++++++------- .../Acts/Vertexing/IterativeVertexFinder.hpp | 18 ++++---- .../Acts/Vertexing/IterativeVertexFinder.ipp | 41 +++++++---------- .../Vertexing/TrackDensityVertexFinder.hpp | 6 +-- .../Vertexing/TrackDensityVertexFinder.ipp | 6 +-- .../Acts/Vertexing/VertexFinderConcept.hpp | 4 +- .../Acts/Vertexing/VertexFitterConcept.hpp | 4 +- .../Acts/Vertexing/VertexFitterOptions.hpp | 44 ------------------- ...FinderOptions.hpp => VertexingOptions.hpp} | 8 ++-- .../Acts/Vertexing/ZScanVertexFinder.hpp | 6 +-- .../Acts/Vertexing/ZScanVertexFinder.ipp | 16 +++---- .../AdaptiveMultiVertexFinderTests.cpp | 8 ++-- .../AdaptiveMultiVertexFitterTests.cpp | 10 ++--- .../FullBilloirVertexFitterTests.cpp | 16 +++---- .../Vertexing/IterativeVertexFinderTests.cpp | 8 ++-- .../TrackDensityVertexFinderTests.cpp | 22 +++++----- .../Core/Vertexing/ZScanVertexFinderTests.cpp | 8 ++-- 23 files changed, 147 insertions(+), 202 deletions(-) delete mode 100644 Core/include/Acts/Vertexing/VertexFitterOptions.hpp rename Core/include/Acts/Vertexing/{VertexFinderOptions.hpp => VertexingOptions.hpp} (91%) diff --git a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.hpp b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.hpp index 1ef31dd6a..65337fc60 100644 --- a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.hpp +++ b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.hpp @@ -15,8 +15,7 @@ #include "Acts/Utilities/Units.hpp" #include "Acts/Vertexing/AMVFInfo.hpp" #include "Acts/Vertexing/TrackToVertexIPEstimator.hpp" -#include "Acts/Vertexing/VertexFinderOptions.hpp" -#include "Acts/Vertexing/VertexFitterOptions.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { /// @class AdaptiveMultiVertexFinder @@ -68,7 +67,7 @@ class AdaptiveMultiVertexFinder { // Track linearizer Linearizer_t linearizer; - // Use a beam spot constraint, vertexConstraint in VertexFinderOptions + // Use a beam spot constraint, vertexConstraint in VertexingOptions // has to be set in this case bool useBeamSpotConstraint = true; @@ -189,12 +188,12 @@ class AdaptiveMultiVertexFinder { /// multi-vertex finding /// /// @param allTracks Input track collection - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options /// /// @return Vector of all reconstructed vertices Result<std::vector<Vertex<InputTrack_t>>> find( const std::vector<const InputTrack_t*>& allTracks, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; private: /// Configuration object @@ -218,13 +217,13 @@ class AdaptiveMultiVertexFinder { /// /// @param trackVector All tracks to be used for seeding /// @param currentConstraint Vertex constraint - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options /// /// @return The seed vertex Result<Vertex<InputTrack_t>> doSeeding( const std::vector<const InputTrack_t*>& trackVector, Vertex<InputTrack_t>& currentConstraint, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Estimates delta Z between a track and a vertex position /// @@ -354,13 +353,13 @@ class AdaptiveMultiVertexFinder { /// @param allVerticesPtr Vector containing the actual addresses /// @param fitterState The current vertex fitter state /// @param oldFitterState The old vertex fitter state - /// @param vFitterOptions The vertex fitter options + /// @param vertexingOptions Vertexing options Result<void> deleteLastVertex( Vertex<InputTrack_t>& vtx, std::vector<std::unique_ptr<Vertex<InputTrack_t>>>& allVertices, std::vector<Vertex<InputTrack_t>*>& allVerticesPtr, FitterState_t& fitterState, FitterState_t& oldFitterState, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Prepares the output vector of vertices /// diff --git a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.ipp b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.ipp index a3dd9dd6a..ff2610e51 100644 --- a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.ipp +++ b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFinder.ipp @@ -11,7 +11,7 @@ template <typename vfitter_t, typename sfinder_t> auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::find( const std::vector<const InputTrack_t*>& allTracks, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<std::vector<Vertex<InputTrack_t>>> { if (allTracks.empty()) { return VertexingError::EmptyInput; @@ -22,11 +22,6 @@ auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::find( // Seed tracks std::vector<const InputTrack_t*> seedTracks = allTracks; - // Construct the vertex fitter options from vertex finder options - VertexFitterOptions<InputTrack_t> vFitterOptions( - vFinderOptions.geoContext, vFinderOptions.magFieldContext, - vFinderOptions.vertexConstraint); - FitterState_t fitterState; std::vector<std::unique_ptr<Vertex<InputTrack_t>>> allVertices; @@ -47,9 +42,10 @@ auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::find( } else { allTracks = seedTracks; } - Vertex<InputTrack_t> currentConstraint = vFinderOptions.vertexConstraint; + Vertex<InputTrack_t> currentConstraint = vertexingOptions.vertexConstraint; // Retrieve seed vertex from all remaining seedTracks - auto seedResult = doSeeding(seedTracks, currentConstraint, vFinderOptions); + auto seedResult = + doSeeding(seedTracks, currentConstraint, vertexingOptions); if (!seedResult.ok()) { return seedResult.error(); } @@ -84,7 +80,7 @@ auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::find( // Perform the fit auto fitResult = m_cfg.vertexFitter.addVtxToFit( - fitterState, vtxCandidate, m_cfg.linearizer, vFitterOptions); + fitterState, vtxCandidate, m_cfg.linearizer, vertexingOptions); if (!fitResult.ok()) { return fitResult.error(); } @@ -118,7 +114,7 @@ auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::find( if (not keepVertex) { auto deleteVertexResult = deleteLastVertex(vtxCandidate, allVertices, allVerticesPtr, - fitterState, oldFitterState, vFitterOptions); + fitterState, oldFitterState, vertexingOptions); if (not deleteVertexResult.ok()) { return deleteVertexResult.error(); } @@ -133,9 +129,9 @@ template <typename vfitter_t, typename sfinder_t> auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::doSeeding( const std::vector<const InputTrack_t*>& trackVector, Vertex<InputTrack_t>& currentConstraint, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<Vertex<InputTrack_t>> { - VertexFinderOptions<InputTrack_t> seedOptions = vFinderOptions; + VertexingOptions<InputTrack_t> seedOptions = vertexingOptions; seedOptions.vertexConstraint = currentConstraint; // Run seed finder auto seedResult = m_cfg.seedFinder.find(trackVector, seedOptions); @@ -517,7 +513,7 @@ auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::deleteLastVertex( std::vector<std::unique_ptr<Vertex<InputTrack_t>>>& allVertices, std::vector<Vertex<InputTrack_t>*>& allVerticesPtr, FitterState_t& fitterState, FitterState_t& oldFitterState, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<void> { allVertices.pop_back(); allVerticesPtr.pop_back(); @@ -542,7 +538,7 @@ auto Acts::AdaptiveMultiVertexFinder<vfitter_t, sfinder_t>::deleteLastVertex( // Do the fit with removed vertex auto fitResult = m_cfg.vertexFitter.fit(fitterState, allVerticesPtr, - m_cfg.linearizer, vFitterOptions); + m_cfg.linearizer, vertexingOptions); if (!fitResult.ok()) { return fitResult.error(); } diff --git a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.hpp b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.hpp index dc7c03bcc..28138de2e 100644 --- a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.hpp +++ b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.hpp @@ -18,7 +18,7 @@ #include "Acts/Vertexing/LinearizerConcept.hpp" #include "Acts/Vertexing/TrackAtVertex.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFitterOptions.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" #include <functional> @@ -162,13 +162,13 @@ class AdaptiveMultiVertexFitter { /// @param state The state object /// @param verticesToFit Vector containing all vertices to be fitted /// @param linearizer The track linearizer - /// @param vFitterOptions Vertex fitter options + /// @param vertexingOptions Vertexing options /// /// @return Result<void> object Result<void> fit( State& state, const std::vector<Vertex<InputTrack_t>*>& verticesToFit, const Linearizer_t& linearizer, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Adds new vertex to an existing multi-vertex fit /// and fits everything together (by invoking the fit_impl method): @@ -190,13 +190,13 @@ class AdaptiveMultiVertexFitter { /// @param state The state object /// @param newVertex New vertex to be added to fit /// @param linearizer The track linearizer - /// @param vFitterOptions Vertex fitter options + /// @param vertexingOptions Vertexing options /// /// @return Result<void> object Result<void> addVtxToFit( State& state, Vertex<InputTrack_t>& newVertex, const Linearizer_t& linearizer, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; private: /// Configuration object @@ -220,12 +220,12 @@ class AdaptiveMultiVertexFitter { /// /// @param state The state object /// @param linearizer The track linearizer - /// @param vFitterOptions Vertex fitter options + /// @param vertexingOptions Vertexing options /// /// @return Result<void> object Result<void> fitImpl( State& state, const Linearizer_t& linearizer, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Tests if vertex is already in list of vertices or not /// @@ -244,10 +244,10 @@ class AdaptiveMultiVertexFitter { /// with different vertices /// /// @param vtx The vertex object - /// @param vFitterOptions Vertex fitter options + /// @param vertexingOptions Vertexing options Result<void> prepareVertexForFit( State& state, Vertex<InputTrack_t>* vtx, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Sets vertexCompatibility for all TrackAtVertex objects /// at current vertex diff --git a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.ipp b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.ipp index 4cdfd4732..bec24d78f 100644 --- a/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.ipp +++ b/Core/include/Acts/Vertexing/AdaptiveMultiVertexFitter.ipp @@ -15,12 +15,12 @@ Acts::Result<void> Acts::AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::fit( State& state, const std::vector<Vertex<input_track_t>*>& verticesToFit, const linearizer_t& linearizer, - const VertexFitterOptions<input_track_t>& vFitterOptions) const { + const VertexingOptions<input_track_t>& vertexingOptions) const { // Set all vertices to fit in the current state state.vertexCollection = verticesToFit; // Perform fit on all vertices simultaneously - auto fitRes = fitImpl(state, linearizer, vFitterOptions); + auto fitRes = fitImpl(state, linearizer, vertexingOptions); if (!fitRes.ok()) { return fitRes.error(); @@ -33,8 +33,8 @@ template <typename input_track_t, typename linearizer_t> Acts::Result<void> Acts::AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::fitImpl( State& state, const linearizer_t& linearizer, - const VertexFitterOptions<input_track_t>& vFitterOptions) const { - auto& geoContext = vFitterOptions.geoContext; + const VertexingOptions<input_track_t>& vertexingOptions) const { + auto& geoContext = vertexingOptions.geoContext; // Reset annealing tool state.annealingState = AnnealingUtility::State(); @@ -71,7 +71,7 @@ Acts::AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::fitImpl( // Relinearization needed, distance too big currentVtxInfo.relinearize = true; // Prepare for fit with new vertex position - prepareVertexForFit(state, currentVtx, vFitterOptions); + prepareVertexForFit(state, currentVtx, vertexingOptions); } // Determine if constraint vertex exist if (state.vtxInfoMap[currentVtx].constraintVertex.fullCovariance() != @@ -123,7 +123,7 @@ Acts::Result<void> Acts::AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::addVtxToFit( State& state, Vertex<input_track_t>& newVertex, const linearizer_t& linearizer, - const VertexFitterOptions<input_track_t>& vFitterOptions) const { + const VertexingOptions<input_track_t>& vertexingOptions) const { if (state.vtxInfoMap[&newVertex].trackLinks.empty()) { return VertexingError::EmptyInput; } @@ -132,7 +132,7 @@ Acts::AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::addVtxToFit( // Prepares vtx and tracks for fast estimation method of their // compatibility with vertex - auto res = prepareVertexForFit(state, &newVertex, vFitterOptions); + auto res = prepareVertexForFit(state, &newVertex, vertexingOptions); if (!res.ok()) { return res.error(); } @@ -178,7 +178,7 @@ Acts::AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::addVtxToFit( state.vertexCollection = verticesToFit; // Perform fit on all added vertices - auto fitRes = fitImpl(state, linearizer, vFitterOptions); + auto fitRes = fitImpl(state, linearizer, vertexingOptions); if (!fitRes.ok()) { return fitRes.error(); } @@ -199,12 +199,12 @@ template <typename input_track_t, typename linearizer_t> Acts::Result<void> Acts:: AdaptiveMultiVertexFitter<input_track_t, linearizer_t>::prepareVertexForFit( State& state, Vertex<input_track_t>* vtx, - const VertexFitterOptions<input_track_t>& vFitterOptions) const { + const VertexingOptions<input_track_t>& vertexingOptions) const { // The current vertex info object auto& currentVtxInfo = state.vtxInfoMap[vtx]; // The seed position const Vector3D& seedPos = currentVtxInfo.seedPosition.template head<3>(); - auto& geoContext = vFitterOptions.geoContext; + auto& geoContext = vertexingOptions.geoContext; // Loop over all tracks at current vertex for (const auto& trk : currentVtxInfo.trackLinks) { diff --git a/Core/include/Acts/Vertexing/DummyVertexFitter.hpp b/Core/include/Acts/Vertexing/DummyVertexFitter.hpp index 2e4170db3..810536bed 100644 --- a/Core/include/Acts/Vertexing/DummyVertexFitter.hpp +++ b/Core/include/Acts/Vertexing/DummyVertexFitter.hpp @@ -11,7 +11,7 @@ #include "Acts/EventData/TrackParameters.hpp" #include "Acts/Utilities/Result.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFitterOptions.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { @@ -36,7 +36,7 @@ class DummyVertexFitter { /// @brief Dummy fit method Result<Vertex<input_track_t>> fit( const std::vector<input_track_t>&, const linearizer_t&, - const VertexFitterOptions<input_track_t>&) const; + const VertexingOptions<input_track_t>&) const; }; } // namespace Acts diff --git a/Core/include/Acts/Vertexing/FullBilloirVertexFitter.hpp b/Core/include/Acts/Vertexing/FullBilloirVertexFitter.hpp index b7aee51db..0e08121c3 100644 --- a/Core/include/Acts/Vertexing/FullBilloirVertexFitter.hpp +++ b/Core/include/Acts/Vertexing/FullBilloirVertexFitter.hpp @@ -13,7 +13,7 @@ #include "Acts/Vertexing/HelicalTrackLinearizer.hpp" #include "Acts/Vertexing/LinearizerConcept.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFitterOptions.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { /// @class FullBilloirVertexFitter @@ -65,13 +65,13 @@ class FullBilloirVertexFitter { /// /// @param paramVector Vector of track objects to fit vertex to /// @param linearizer The track linearizer - /// @param vFitterOptions Vertex fitter options + /// @param vertexingOptions Vertexing options /// /// @return Fitted vertex Result<Vertex<input_track_t>> fit( const std::vector<const input_track_t*>& paramVector, const linearizer_t& linearizer, - const VertexFitterOptions<input_track_t>& vFitterOptions) const; + const VertexingOptions<input_track_t>& vertexingOptions) const; private: /// Configuration object diff --git a/Core/include/Acts/Vertexing/FullBilloirVertexFitter.ipp b/Core/include/Acts/Vertexing/FullBilloirVertexFitter.ipp index 5c65f5543..0c7ed4064 100644 --- a/Core/include/Acts/Vertexing/FullBilloirVertexFitter.ipp +++ b/Core/include/Acts/Vertexing/FullBilloirVertexFitter.ipp @@ -65,7 +65,7 @@ Acts::Result<Acts::Vertex<input_track_t>> Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit( const std::vector<const input_track_t*>& paramVector, const linearizer_t& linearizer, - const VertexFitterOptions<input_track_t>& vFitterOptions) const { + const VertexingOptions<input_track_t>& vertexingOptions) const { double chi2 = std::numeric_limits<double>::max(); double newChi2 = 0; unsigned int nTracks = paramVector.size(); @@ -84,7 +84,7 @@ Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit( // Determine if we do contraint fit or not by checking if an // invertible non-zero constraint vertex covariance is given bool isConstraintFit = false; - if (vFitterOptions.vertexConstraint.covariance().determinant() != 0) { + if (vertexingOptions.vertexConstraint.covariance().determinant() != 0) { isConstraintFit = true; ndf += 3; } @@ -93,7 +93,7 @@ Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit( std::vector<Vector3D> trackMomenta; - SpacePointVector linPoint(vFitterOptions.vertexConstraint.fullPosition()); + SpacePointVector linPoint(vertexingOptions.vertexConstraint.fullPosition()); Vertex<input_track_t> fittedVertex; @@ -197,15 +197,15 @@ Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit( SpacePointVector posInBilloirFrame; // this will be 0 for first iteration but != 0 from second on posInBilloirFrame[0] = - vFitterOptions.vertexConstraint.position()[0] - linPoint[0]; + vertexingOptions.vertexConstraint.position()[0] - linPoint[0]; posInBilloirFrame[1] = - vFitterOptions.vertexConstraint.position()[1] - linPoint[1]; + vertexingOptions.vertexConstraint.position()[1] - linPoint[1]; posInBilloirFrame[2] = - vFitterOptions.vertexConstraint.position()[2] - linPoint[2]; + vertexingOptions.vertexConstraint.position()[2] - linPoint[2]; - Vdel += vFitterOptions.vertexConstraint.fullCovariance().inverse() * + Vdel += vertexingOptions.vertexConstraint.fullCovariance().inverse() * posInBilloirFrame; - VwgtMat += vFitterOptions.vertexConstraint.fullCovariance().inverse(); + VwgtMat += vertexingOptions.vertexConstraint.fullCovariance().inverse(); } // cov(deltaV) = VwgtMat^-1 @@ -288,15 +288,18 @@ Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit( // last term will also be 0 again but only in the first iteration // = calc. vtx in billoir frame - ( isConstraintFit pos. in billoir // frame ) - deltaTrk[0] = deltaV[0] - (vFitterOptions.vertexConstraint.position()[0] - - linPoint[0]); - deltaTrk[1] = deltaV[1] - (vFitterOptions.vertexConstraint.position()[1] - - linPoint[1]); - deltaTrk[2] = deltaV[2] - (vFitterOptions.vertexConstraint.position()[2] - - linPoint[2]); + deltaTrk[0] = + deltaV[0] - + (vertexingOptions.vertexConstraint.position()[0] - linPoint[0]); + deltaTrk[1] = + deltaV[1] - + (vertexingOptions.vertexConstraint.position()[1] - linPoint[1]); + deltaTrk[2] = + deltaV[2] - + (vertexingOptions.vertexConstraint.position()[2] - linPoint[2]); newChi2 += (deltaTrk.transpose()) - .dot(vFitterOptions.vertexConstraint.covariance().inverse() * + .dot(vertexingOptions.vertexConstraint.covariance().inverse() * deltaTrk); } @@ -328,7 +331,7 @@ Acts::FullBilloirVertexFitter<input_track_t, linearizer_t>::fit( paramVec << 0., 0., trackMomenta[iTrack](0), trackMomenta[iTrack](1), trackMomenta[iTrack](2), 0.; - BoundParameters refittedParams(vFitterOptions.geoContext, + BoundParameters refittedParams(vertexingOptions.geoContext, covDeltaPmat[iTrack], paramVec, perigee); TrackAtVertex<input_track_t> trackVx(bTrack.chi2, refittedParams, diff --git a/Core/include/Acts/Vertexing/IterativeVertexFinder.hpp b/Core/include/Acts/Vertexing/IterativeVertexFinder.hpp index 9ba61ed22..1d3a0b2e6 100644 --- a/Core/include/Acts/Vertexing/IterativeVertexFinder.hpp +++ b/Core/include/Acts/Vertexing/IterativeVertexFinder.hpp @@ -17,8 +17,8 @@ #include "Acts/Vertexing/HelicalTrackLinearizer.hpp" #include "Acts/Vertexing/ImpactPoint3dEstimator.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFinderOptions.hpp" #include "Acts/Vertexing/VertexFitterConcept.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" #include "Acts/Vertexing/ZScanVertexFinder.hpp" namespace Acts { @@ -137,12 +137,12 @@ class IterativeVertexFinder { /// @brief Finds vertices corresponding to input trackVector /// /// @param trackVector Input tracks - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options /// /// @return Collection of vertices found by finder Result<std::vector<Vertex<InputTrack_t>>> find( const std::vector<const InputTrack_t*>& trackVector, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; private: /// Configuration object @@ -164,10 +164,10 @@ class IterativeVertexFinder { /// @brief Method that calls seed finder to retrieve a vertex seed /// /// @param seedTracks Seeding tracks - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options Result<Vertex<InputTrack_t>> getVertexSeed( const std::vector<const InputTrack_t*>& seedTracks, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Removes all tracks in perigeesToFit from seedTracks /// @@ -202,13 +202,13 @@ class IterativeVertexFinder { /// @param seedVertex Seed vertex /// @param perigeesToFitOut Perigees to fit /// @param perigeesToFitSplitVertexOut Perigees to fit split vertex - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options Result<void> fillPerigeesToFit( const std::vector<const InputTrack_t*>& perigeeList, const Vertex<InputTrack_t>& seedVertex, std::vector<const InputTrack_t*>& perigeesToFitOut, std::vector<const InputTrack_t*>& perigeesToFitSplitVertexOut, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Function that reassigns tracks from other vertices /// to the current vertex if they are more compatible @@ -218,7 +218,7 @@ class IterativeVertexFinder { /// @param perigeesToFit Perigees to fit vector /// @param seedTracks Seed tracks vector /// @param origTracks Vector of original track objects - /// @param vFitterOptions Vertex fitter options + /// @param vertexingOptions Vertexing options /// /// @return Bool if currentVertex is still a good vertex Result<bool> reassignTracksToNewVertex( @@ -227,7 +227,7 @@ class IterativeVertexFinder { std::vector<const InputTrack_t*>& perigeesToFit, std::vector<const InputTrack_t*>& seedTracks, const std::vector<const InputTrack_t*>& origTracks, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Counts all tracks that are significant for a vertex /// diff --git a/Core/include/Acts/Vertexing/IterativeVertexFinder.ipp b/Core/include/Acts/Vertexing/IterativeVertexFinder.ipp index 83b16e07e..b67b17e5c 100644 --- a/Core/include/Acts/Vertexing/IterativeVertexFinder.ipp +++ b/Core/include/Acts/Vertexing/IterativeVertexFinder.ipp @@ -6,23 +6,16 @@ // License, v. 2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at http://mozilla.org/MPL/2.0/. -#include "Acts/Vertexing/VertexFitterOptions.hpp" - template <typename vfitter_t, typename sfinder_t> auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( const std::vector<const InputTrack_t*>& trackVector, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<std::vector<Vertex<InputTrack_t>>> { // Original tracks const std::vector<const InputTrack_t*>& origTracks = trackVector; // Tracks for seeding std::vector<const InputTrack_t*> seedTracks = trackVector; - // Construct the vertex fitter options from vertex finder options - VertexFitterOptions<InputTrack_t> vFitterOptions( - vFinderOptions.geoContext, vFinderOptions.magFieldContext, - vFinderOptions.vertexConstraint); - // List of vertices to be filled below std::vector<Vertex<InputTrack_t>> vertexCollection; @@ -30,7 +23,7 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( // begin iterating while (seedTracks.size() > 1 && nInterations < m_cfg.maxVertices) { /// Begin seeding - auto seedRes = getVertexSeed(seedTracks, vFinderOptions); + auto seedRes = getVertexSeed(seedTracks, vertexingOptions); if (!seedRes.ok()) { return seedRes.error(); } @@ -45,7 +38,7 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( // Fill vector with tracks to fit, only compatible with seed: auto res = fillPerigeesToFit(seedTracks, seedVertex, perigeesToFit, - perigeesToFitSplitVertex, vFinderOptions); + perigeesToFitSplitVertex, vertexingOptions); if (!res.ok()) { return res.error(); @@ -59,7 +52,7 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( if (m_cfg.useBeamConstraint && !perigeesToFit.empty()) { auto fitResult = m_cfg.vertexFitter.fit(perigeesToFit, m_cfg.linearizer, - vFitterOptions); + vertexingOptions); if (fitResult.ok()) { currentVertex = std::move(*fitResult); } else { @@ -67,7 +60,7 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( } } else if (!m_cfg.useBeamConstraint && perigeesToFit.size() > 1) { auto fitResult = m_cfg.vertexFitter.fit(perigeesToFit, m_cfg.linearizer, - vFitterOptions); + vertexingOptions); if (fitResult.ok()) { currentVertex = std::move(*fitResult); } else { @@ -75,8 +68,8 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( } } if (m_cfg.createSplitVertices && perigeesToFitSplitVertex.size() > 1) { - auto fitResult = m_cfg.vertexFitter.fit(perigeesToFitSplitVertex, - m_cfg.linearizer, vFitterOptions); + auto fitResult = m_cfg.vertexFitter.fit( + perigeesToFitSplitVertex, m_cfg.linearizer, vertexingOptions); if (fitResult.ok()) { currentSplitVertex = std::move(*fitResult); } else { @@ -107,7 +100,7 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( auto result = reassignTracksToNewVertex(vertexCollection, currentVertex, perigeesToFit, seedTracks, - origTracks, vFitterOptions); + origTracks, vertexingOptions); if (!result.ok()) { return result.error(); } @@ -155,9 +148,9 @@ auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::find( template <typename vfitter_t, typename sfinder_t> auto Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::getVertexSeed( const std::vector<const InputTrack_t*>& seedTracks, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<Vertex<InputTrack_t>> { - auto res = m_cfg.seedFinder.find(seedTracks, vFinderOptions); + auto res = m_cfg.seedFinder.find(seedTracks, vertexingOptions); if (res.ok()) { auto vertexCollection = *res; if (vertexCollection.empty()) { @@ -331,7 +324,7 @@ Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::fillPerigeesToFit( const Vertex<InputTrack_t>& seedVertex, std::vector<const InputTrack_t*>& perigeesToFitOut, std::vector<const InputTrack_t*>& perigeesToFitSplitVertexOut, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const { + const VertexingOptions<InputTrack_t>& vertexingOptions) const { int numberOfTracks = perigeeList.size(); // Count how many tracks are used for fit @@ -360,7 +353,7 @@ Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::fillPerigeesToFit( // check first that distance is not too large const BoundParameters& sTrackParams = m_extractParameters(*sTrack); auto distanceRes = m_cfg.ipEst.calculateDistance( - vFinderOptions.geoContext, sTrackParams, seedVertex.position()); + vertexingOptions.geoContext, sTrackParams, seedVertex.position()); if (!distanceRes.ok()) { return distanceRes.error(); } @@ -400,7 +393,7 @@ Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::reassignTracksToNewVertex( std::vector<const InputTrack_t*>& perigeesToFit, std::vector<const InputTrack_t*>& seedTracks, const std::vector<const InputTrack_t*>& origTracks, - const VertexFitterOptions<InputTrack_t>& vFitterOptions) const { + const VertexingOptions<InputTrack_t>& vertexingOptions) const { int numberOfAddedTracks = 0; // iterate over all vertices and check if tracks need to be reassigned @@ -478,16 +471,16 @@ Acts::IterativeVertexFinder<vfitter_t, sfinder_t>::reassignTracksToNewVertex( // later currentVertex = Vertex<InputTrack_t>(); if (m_cfg.useBeamConstraint && !perigeesToFit.empty()) { - auto fitResult = - m_cfg.vertexFitter.fit(perigeesToFit, m_cfg.linearizer, vFitterOptions); + auto fitResult = m_cfg.vertexFitter.fit(perigeesToFit, m_cfg.linearizer, + vertexingOptions); if (fitResult.ok()) { currentVertex = std::move(*fitResult); } else { return Result<bool>::success(false); } } else if (!m_cfg.useBeamConstraint && perigeesToFit.size() > 1) { - auto fitResult = - m_cfg.vertexFitter.fit(perigeesToFit, m_cfg.linearizer, vFitterOptions); + auto fitResult = m_cfg.vertexFitter.fit(perigeesToFit, m_cfg.linearizer, + vertexingOptions); if (fitResult.ok()) { currentVertex = std::move(*fitResult); } else { diff --git a/Core/include/Acts/Vertexing/TrackDensityVertexFinder.hpp b/Core/include/Acts/Vertexing/TrackDensityVertexFinder.hpp index f85b29662..5f3265224 100644 --- a/Core/include/Acts/Vertexing/TrackDensityVertexFinder.hpp +++ b/Core/include/Acts/Vertexing/TrackDensityVertexFinder.hpp @@ -13,8 +13,8 @@ #include "Acts/Utilities/Result.hpp" #include "Acts/Vertexing/GaussianTrackDensity.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFinderOptions.hpp" #include "Acts/Vertexing/VertexFitterConcept.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { @@ -51,13 +51,13 @@ class TrackDensityVertexFinder { /// @brief Function that finds single vertex candidate /// /// @param trackVector Input track collection - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options /// /// @return Vector of vertices, filled with a single /// vertex (for consistent interfaces) Result<std::vector<Vertex<InputTrack_t>>> find( const std::vector<const InputTrack_t*>& trackVector, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; /// @brief Constructor used if InputTrack_t type == BoundParameters /// diff --git a/Core/include/Acts/Vertexing/TrackDensityVertexFinder.ipp b/Core/include/Acts/Vertexing/TrackDensityVertexFinder.ipp index ed26c5631..b24c1016b 100644 --- a/Core/include/Acts/Vertexing/TrackDensityVertexFinder.ipp +++ b/Core/include/Acts/Vertexing/TrackDensityVertexFinder.ipp @@ -9,7 +9,7 @@ template <typename vfitter_t, typename track_density_t> auto Acts::TrackDensityVertexFinder<vfitter_t, track_density_t>::find( const std::vector<const InputTrack_t*>& trackVector, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<std::vector<Vertex<InputTrack_t>>> { typename track_density_t::State densityState; @@ -30,11 +30,11 @@ auto Acts::TrackDensityVertexFinder<vfitter_t, track_density_t>::find( // Calculate seed position // Note: constraint position is (0,0,0) if no constraint provided Vector3D seedPos = - vFinderOptions.vertexConstraint.position() + Vector3D(0., 0., z); + vertexingOptions.vertexConstraint.position() + Vector3D(0., 0., z); Vertex<InputTrack_t> returnVertex = Vertex<InputTrack_t>(seedPos); - ActsSymMatrixD<3> seedCov = vFinderOptions.vertexConstraint.covariance(); + ActsSymMatrixD<3> seedCov = vertexingOptions.vertexConstraint.covariance(); // Check if a constraint is provided and set the new z position constraint if (seedCov != ActsSymMatrixD<3>::Zero() && std::isnormal(zAndWidth.second)) { diff --git a/Core/include/Acts/Vertexing/VertexFinderConcept.hpp b/Core/include/Acts/Vertexing/VertexFinderConcept.hpp index 57e57ecca..11e0bbec4 100644 --- a/Core/include/Acts/Vertexing/VertexFinderConcept.hpp +++ b/Core/include/Acts/Vertexing/VertexFinderConcept.hpp @@ -12,7 +12,7 @@ #include "Acts/Utilities/Result.hpp" #include "Acts/Utilities/TypeTraits.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFinderOptions.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { @@ -27,7 +27,7 @@ namespace concept { constexpr static bool find_exists = has_method<const S, Result<std::vector<Vertex<typename S::InputTrack_t>>>, find_t, const std::vector<const typename S::InputTrack_t*>&, - const VertexFinderOptions<typename S::InputTrack_t>&>; + const VertexingOptions<typename S::InputTrack_t>&>; static_assert(find_exists, "find method not found"); constexpr static bool value = require<find_exists>; diff --git a/Core/include/Acts/Vertexing/VertexFitterConcept.hpp b/Core/include/Acts/Vertexing/VertexFitterConcept.hpp index 9164c714d..af9529afa 100644 --- a/Core/include/Acts/Vertexing/VertexFitterConcept.hpp +++ b/Core/include/Acts/Vertexing/VertexFitterConcept.hpp @@ -12,7 +12,7 @@ #include "Acts/Utilities/Result.hpp" #include "Acts/Utilities/TypeTraits.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFitterOptions.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { @@ -35,7 +35,7 @@ namespace concept { fit_t, const std::vector<const typename S::InputTrack_t*>&, const typename S::Linearizer_t&, - const VertexFitterOptions<typename S::InputTrack_t>&>; + const VertexingOptions<typename S::InputTrack_t>&>; static_assert(fit_exists, "fit method not found"); constexpr static bool track_exists = exists<track_t, S>; diff --git a/Core/include/Acts/Vertexing/VertexFitterOptions.hpp b/Core/include/Acts/Vertexing/VertexFitterOptions.hpp deleted file mode 100644 index ad354dd09..000000000 --- a/Core/include/Acts/Vertexing/VertexFitterOptions.hpp +++ /dev/null @@ -1,44 +0,0 @@ -// This file is part of the Acts project. -// -// Copyright (C) 2019 CERN for the benefit of the Acts project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -#pragma once - -#include "Acts/Geometry/GeometryContext.hpp" -#include "Acts/MagneticField/MagneticFieldContext.hpp" -#include "Acts/Vertexing/Vertex.hpp" - -namespace Acts { - -/// @brief Vertex Fitter Options -/// -template <typename input_track_t> -struct VertexFitterOptions { - /// Default contstructor is deleted - VertexFitterOptions() = delete; - - /// VertexFitterOptions with context - /// - /// @param gctx The goemetry context for this fit - /// @param mctx The magnetic context for this fit - /// @param vconstr The pointing contraint to a vertex - VertexFitterOptions( - std::reference_wrapper<const GeometryContext> gctx, - std::reference_wrapper<const MagneticFieldContext> mctx, - const Vertex<input_track_t>& vconstr = Vertex<input_track_t>()) - - : geoContext(gctx), magFieldContext(mctx), vertexConstraint(vconstr) {} - - /// Context object for the geometry - std::reference_wrapper<const GeometryContext> geoContext; - /// Context object for the magnetic field - std::reference_wrapper<const MagneticFieldContext> magFieldContext; - /// The vertex constraint for the fitting - Vertex<input_track_t> vertexConstraint; -}; - -} // namespace Acts diff --git a/Core/include/Acts/Vertexing/VertexFinderOptions.hpp b/Core/include/Acts/Vertexing/VertexingOptions.hpp similarity index 91% rename from Core/include/Acts/Vertexing/VertexFinderOptions.hpp rename to Core/include/Acts/Vertexing/VertexingOptions.hpp index 5c0340771..bff6d97a3 100644 --- a/Core/include/Acts/Vertexing/VertexFinderOptions.hpp +++ b/Core/include/Acts/Vertexing/VertexingOptions.hpp @@ -17,16 +17,16 @@ namespace Acts { /// @brief Vertex Finder Options /// template <typename input_track_t> -struct VertexFinderOptions { +struct VertexingOptions { /// Default contstructor is deleted - VertexFinderOptions() = delete; + VertexingOptions() = delete; - /// VertexFinderOptions with context + /// VertexingOptions with context /// /// @param gctx The goemetry context for this fit /// @param mctx The magnetic context for this fit /// @param vconstr The pointing contraint to a vertex - VertexFinderOptions( + VertexingOptions( std::reference_wrapper<const GeometryContext> gctx, std::reference_wrapper<const MagneticFieldContext> mctx, const Vertex<input_track_t>& vconstr = Vertex<input_track_t>()) diff --git a/Core/include/Acts/Vertexing/ZScanVertexFinder.hpp b/Core/include/Acts/Vertexing/ZScanVertexFinder.hpp index e738d705d..4d2812db8 100644 --- a/Core/include/Acts/Vertexing/ZScanVertexFinder.hpp +++ b/Core/include/Acts/Vertexing/ZScanVertexFinder.hpp @@ -18,8 +18,8 @@ #include "Acts/Vertexing/FsmwMode1dFinder.hpp" #include "Acts/Vertexing/TrackToVertexIPEstimator.hpp" #include "Acts/Vertexing/Vertex.hpp" -#include "Acts/Vertexing/VertexFinderOptions.hpp" #include "Acts/Vertexing/VertexFitterConcept.hpp" +#include "Acts/Vertexing/VertexingOptions.hpp" namespace Acts { @@ -103,13 +103,13 @@ class ZScanVertexFinder { /// using a Half Sample Mode algorithm /// /// @param trackVector Input track collection - /// @param vFinderOptions Vertex finder options + /// @param vertexingOptions Vertexing options /// /// @return Vector of vertices, filled with a single /// vertex (for consistent interfaces) Result<std::vector<Vertex<InputTrack_t>>> find( const std::vector<const InputTrack_t*>& trackVector, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const; + const VertexingOptions<InputTrack_t>& vertexingOptions) const; private: Config m_cfg; diff --git a/Core/include/Acts/Vertexing/ZScanVertexFinder.ipp b/Core/include/Acts/Vertexing/ZScanVertexFinder.ipp index f15579ec2..7344f7d2a 100644 --- a/Core/include/Acts/Vertexing/ZScanVertexFinder.ipp +++ b/Core/include/Acts/Vertexing/ZScanVertexFinder.ipp @@ -9,11 +9,11 @@ template <typename vfitter_t> auto Acts::ZScanVertexFinder<vfitter_t>::find( const std::vector<const InputTrack_t*>& trackVector, - const VertexFinderOptions<InputTrack_t>& vFinderOptions) const + const VertexingOptions<InputTrack_t>& vertexingOptions) const -> Result<std::vector<Vertex<InputTrack_t>>> { // Determine if we use constraint or not bool useConstraint = false; - if (vFinderOptions.vertexConstraint.fullCovariance().determinant() != 0) { + if (vertexingOptions.vertexConstraint.fullCovariance().determinant() != 0) { useConstraint = true; } @@ -29,9 +29,9 @@ auto Acts::ZScanVertexFinder<vfitter_t>::find( std::pair<double, double> z0AndWeight; ImpactParametersAndSigma ipas; if (useConstraint && - vFinderOptions.vertexConstraint.covariance()(0, 0) != 0) { + vertexingOptions.vertexConstraint.covariance()(0, 0) != 0) { auto estRes = - m_cfg.ipEstimator.estimate(params, vFinderOptions.vertexConstraint); + m_cfg.ipEstimator.estimate(params, vertexingOptions.vertexConstraint); if (estRes.ok()) { ipas = *estRes; } else { @@ -42,7 +42,7 @@ auto Acts::ZScanVertexFinder<vfitter_t>::find( if (ipas.sigmad0 > 0) { // calculate z0 z0AndWeight.first = - ipas.IPz0 + vFinderOptions.vertexConstraint.position().z(); + ipas.IPz0 + vertexingOptions.vertexConstraint.position().z(); // calculate chi2 of IP double chi2IP = std::pow(ipas.IPd0 / ipas.sigmad0, 2); @@ -96,9 +96,9 @@ auto Acts::ZScanVertexFinder<vfitter_t>::find( } // constraint x()/y() equals 0 if no constraint - SpacePointVector output(vFinderOptions.vertexConstraint.position().x(), - vFinderOptions.vertexConstraint.position().y(), - ZResult, vFinderOptions.vertexConstraint.time()); + SpacePointVector output(vertexingOptions.vertexConstraint.position().x(), + vertexingOptions.vertexConstraint.position().y(), + ZResult, vertexingOptions.vertexConstraint.time()); Vertex<InputTrack_t> vtxResult = Vertex<InputTrack_t>(output); // Vector to be filled with one single vertex diff --git a/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFinderTests.cpp b/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFinderTests.cpp index 105c59607..7cd3ee8c9 100644 --- a/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFinderTests.cpp +++ b/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFinderTests.cpp @@ -53,8 +53,6 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_finder_test) { PropagatorOptions<> pOptions(tgContext, mfContext); pOptions.direction = backward; - VertexFitterOptions<BoundParameters> fitterOptions(tgContext, mfContext); - // IP 3D Estimator using IPEstimator = ImpactPoint3dEstimator<BoundParameters, Propagator>; @@ -122,7 +120,7 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_finder_test) { tracksPtr.push_back(&trk); } - VertexFinderOptions<BoundParameters> finderOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); Vector3D constraintPos{0._mm, 0._mm, 0_mm}; ActsSymMatrixD<3> constraintCov; @@ -133,9 +131,9 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_finder_test) { constraintVtx.setPosition(constraintPos); constraintVtx.setCovariance(constraintCov); - finderOptions.vertexConstraint = constraintVtx; + vertexingOptions.vertexConstraint = constraintVtx; - auto findResult = finder.find(tracksPtr, finderOptions); + auto findResult = finder.find(tracksPtr, vertexingOptions); if (!findResult.ok()) { std::cout << findResult.error().message() << std::endl; diff --git a/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFitterTests.cpp b/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFitterTests.cpp index dffb8fc63..6d238d134 100644 --- a/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFitterTests.cpp +++ b/Tests/UnitTests/Core/Vertexing/AdaptiveMultiVertexFitterTests.cpp @@ -77,7 +77,7 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_fitter_test) { auto propagator = std::make_shared<Propagator>(stepper); PropagatorOptions<> pOptions(tgContext, mfContext); - VertexFitterOptions<BoundParameters> fitterOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); // IP 3D Estimator using IPEstimator = ImpactPoint3dEstimator<BoundParameters, Propagator>; @@ -228,7 +228,7 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_fitter_test) { std::vector<Vertex<BoundParameters>> seedListCopy = vtxList; auto res1 = - fitter.addVtxToFit(state, vtxList.at(0), linearizer, fitterOptions); + fitter.addVtxToFit(state, vtxList.at(0), linearizer, vertexingOptions); if (debugMode) { std::cout << "Tracks linked to each vertex AFTER fit: " << std::endl; int c = 0; @@ -283,7 +283,7 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_fitter_test) { seedListCopy.at(1).fullPosition(), 1_mm); auto res2 = - fitter.addVtxToFit(state, vtxList.at(2), linearizer, fitterOptions); + fitter.addVtxToFit(state, vtxList.at(2), linearizer, vertexingOptions); BOOST_CHECK(res2.ok()); // Now also the third vertex should have been modified and fitted @@ -323,7 +323,7 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_fitter_test_athena) { auto propagator = std::make_shared<Propagator>(stepper); PropagatorOptions<> pOptions(tgContext, mfContext); - VertexFitterOptions<BoundParameters> fitterOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); // IP 3D Estimator using IPEstimator = ImpactPoint3dEstimator<BoundParameters, Propagator>; @@ -483,7 +483,7 @@ BOOST_AUTO_TEST_CASE(adaptive_multi_vertex_fitter_test_athena) { state.addVertexToMultiMap(vtx2); // Fit vertices - fitter.fit(state, vtxList, linearizer, fitterOptions); + fitter.fit(state, vtxList, linearizer, vertexingOptions); auto vtx1Pos = state.vertexCollection.at(0)->position(); auto vtx1Cov = state.vertexCollection.at(0)->covariance(); diff --git a/Tests/UnitTests/Core/Vertexing/FullBilloirVertexFitterTests.cpp b/Tests/UnitTests/Core/Vertexing/FullBilloirVertexFitterTests.cpp index cf4c79332..e77c0b88d 100644 --- a/Tests/UnitTests/Core/Vertexing/FullBilloirVertexFitterTests.cpp +++ b/Tests/UnitTests/Core/Vertexing/FullBilloirVertexFitterTests.cpp @@ -72,8 +72,8 @@ BOOST_AUTO_TEST_CASE(billoir_vertex_fitter_empty_input_test) { const std::vector<const BoundParameters*> emptyVector; - VertexFitterOptions<BoundParameters> vfOptions(tgContext, mfContext, - myConstraint); + VertexingOptions<BoundParameters> vfOptions(tgContext, mfContext, + myConstraint); Vertex<BoundParameters> fittedVertex = billoirFitter.fit(emptyVector, linearizer, vfOptions).value(); @@ -159,10 +159,10 @@ BOOST_AUTO_TEST_CASE(billoir_vertex_fitter_defaulttrack_test) { myCovMat(3, 3) = 30.; myConstraint.setFullCovariance(std::move(myCovMat)); myConstraint.setFullPosition(SpacePointVector(0, 0, 0, 0)); - VertexFitterOptions<BoundParameters> vfOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vfOptions(tgContext, mfContext); - VertexFitterOptions<BoundParameters> vfOptionsConstr(tgContext, mfContext, - myConstraint); + VertexingOptions<BoundParameters> vfOptionsConstr(tgContext, mfContext, + myConstraint); // Create position of vertex and perigee surface double x = vXYDist(gen); double y = vXYDist(gen); @@ -298,10 +298,10 @@ BOOST_AUTO_TEST_CASE(billoir_vertex_fitter_usertrack_test) { myConstraint.setFullCovariance(std::move(myCovMat)); myConstraint.setFullPosition(SpacePointVector(0, 0, 0, 0)); - VertexFitterOptions<InputTrack> vfOptions(tgContext, mfContext); + VertexingOptions<InputTrack> vfOptions(tgContext, mfContext); - VertexFitterOptions<InputTrack> vfOptionsConstr(tgContext, mfContext, - myConstraint); + VertexingOptions<InputTrack> vfOptionsConstr(tgContext, mfContext, + myConstraint); // Create position of vertex and perigee surface double x = vXYDist(gen); diff --git a/Tests/UnitTests/Core/Vertexing/IterativeVertexFinderTests.cpp b/Tests/UnitTests/Core/Vertexing/IterativeVertexFinderTests.cpp index 99bf17eec..163eefd80 100644 --- a/Tests/UnitTests/Core/Vertexing/IterativeVertexFinderTests.cpp +++ b/Tests/UnitTests/Core/Vertexing/IterativeVertexFinderTests.cpp @@ -231,10 +231,10 @@ BOOST_AUTO_TEST_CASE(iterative_finder_test) { tracksPtr.push_back(trk.get()); } - VertexFinderOptions<BoundParameters> vFinderOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); // find vertices - auto res = finder.find(tracksPtr, vFinderOptions); + auto res = finder.find(tracksPtr, vertexingOptions); BOOST_CHECK(res.ok()); @@ -454,10 +454,10 @@ BOOST_AUTO_TEST_CASE(iterative_finder_test_user_track_type) { tracksPtr.push_back(trk.get()); } - VertexFinderOptions<InputTrack> vFinderOptionsUT(tgContext, mfContext); + VertexingOptions<InputTrack> vertexingOptionsUT(tgContext, mfContext); // find vertices - auto res = finder.find(tracksPtr, vFinderOptionsUT); + auto res = finder.find(tracksPtr, vertexingOptionsUT); BOOST_CHECK(res.ok()); diff --git a/Tests/UnitTests/Core/Vertexing/TrackDensityVertexFinderTests.cpp b/Tests/UnitTests/Core/Vertexing/TrackDensityVertexFinderTests.cpp index 607b77daa..ea6d61771 100644 --- a/Tests/UnitTests/Core/Vertexing/TrackDensityVertexFinderTests.cpp +++ b/Tests/UnitTests/Core/Vertexing/TrackDensityVertexFinderTests.cpp @@ -47,7 +47,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_test) { Vector3D pos1c{1.2_mm, 1.3_mm, -7_mm}; Vector3D mom1c{300_MeV, 1000_MeV, 100_MeV}; - VertexFinderOptions<BoundParameters> vFinderOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); TrackDensityVertexFinder<DummyVertexFitter<>, GaussianTrackDensity> finder; @@ -68,8 +68,8 @@ BOOST_AUTO_TEST_CASE(track_density_finder_test) { std::vector<const BoundParameters*> vec1 = {¶ms1a, ¶ms1b, ¶ms1c}; std::vector<const BoundParameters*> vec2 = {¶ms1c, ¶ms1a, ¶ms1b}; - auto res1 = finder.find(vec1, vFinderOptions); - auto res2 = finder.find(vec2, vFinderOptions); + auto res1 = finder.find(vec1, vertexingOptions); + auto res2 = finder.find(vec2, vertexingOptions); if (!res1.ok()) { std::cout << res1.error().message() << std::endl; @@ -106,7 +106,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_constr_test) { double const expectedZResult = -13.013; // Finder options - VertexFinderOptions<BoundParameters> vFinderOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); // Create constraint for seed finding Vector3D constraintPos{1.7_mm, 1.3_mm, -6_mm}; @@ -115,7 +115,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_constr_test) { Vertex<BoundParameters> vertexConstraint(constraintPos); vertexConstraint.setCovariance(constrCov); - vFinderOptions.vertexConstraint = vertexConstraint; + vertexingOptions.vertexConstraint = vertexConstraint; TrackDensityVertexFinder<DummyVertexFitter<>, GaussianTrackDensity> finder; @@ -135,7 +135,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_constr_test) { // Vector of track parameters std::vector<const BoundParameters*> vec1 = {¶ms1a, ¶ms1b, ¶ms1c}; - auto res = finder.find(vec1, vFinderOptions); + auto res = finder.find(vec1, vertexingOptions); if (!res.ok()) { std::cout << res.error().message() << std::endl; @@ -179,7 +179,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_random_test) { std::shared_ptr<PerigeeSurface> perigeeSurface = Surface::makeShared<PerigeeSurface>(pos0); - VertexFinderOptions<BoundParameters> vFinderOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); TrackDensityVertexFinder<DummyVertexFitter<>, GaussianTrackDensity> finder; @@ -218,7 +218,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_random_test) { trackPtrVec.push_back(&trk); } - auto res3 = finder.find(trackPtrVec, vFinderOptions); + auto res3 = finder.find(trackPtrVec, vertexingOptions); if (!res3.ok()) { std::cout << res3.error().message() << std::endl; } @@ -260,7 +260,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_usertrack_test) { double const expectedZResult = -13.013; // Finder options - VertexFinderOptions<InputTrack> vFinderOptions(tgContext, mfContext); + VertexingOptions<InputTrack> vertexingOptions(tgContext, mfContext); // Create constraint for seed finding Vector3D constraintPos{1.7_mm, 1.3_mm, -6_mm}; @@ -269,7 +269,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_usertrack_test) { Vertex<InputTrack> vertexConstraint(constraintPos); vertexConstraint.setCovariance(constrCov); - vFinderOptions.vertexConstraint = vertexConstraint; + vertexingOptions.vertexConstraint = vertexConstraint; std::function<BoundParameters(InputTrack)> extractParameters = [](InputTrack params) { return params.parameters(); }; @@ -293,7 +293,7 @@ BOOST_AUTO_TEST_CASE(track_density_finder_usertrack_test) { // Vector of track parameters std::vector<const InputTrack*> vec1 = {¶ms1a, ¶ms1b, ¶ms1c}; - auto res = finder.find(vec1, vFinderOptions); + auto res = finder.find(vec1, vertexingOptions); if (!res.ok()) { std::cout << res.error().message() << std::endl; diff --git a/Tests/UnitTests/Core/Vertexing/ZScanVertexFinderTests.cpp b/Tests/UnitTests/Core/Vertexing/ZScanVertexFinderTests.cpp index c92a86641..4143b9116 100644 --- a/Tests/UnitTests/Core/Vertexing/ZScanVertexFinderTests.cpp +++ b/Tests/UnitTests/Core/Vertexing/ZScanVertexFinderTests.cpp @@ -153,9 +153,9 @@ BOOST_AUTO_TEST_CASE(zscan_finder_test) { VertexFinder finder(std::move(cfg)); - VertexFinderOptions<BoundParameters> vFinderOptions(tgContext, mfContext); + VertexingOptions<BoundParameters> vertexingOptions(tgContext, mfContext); - auto res = finder.find(tracksPtr, vFinderOptions); + auto res = finder.find(tracksPtr, vertexingOptions); BOOST_CHECK(res.ok()); @@ -278,9 +278,9 @@ BOOST_AUTO_TEST_CASE(zscan_finder_usertrack_test) { VertexFinder finder(std::move(cfg), extractParameters); - VertexFinderOptions<InputTrack> vFinderOptions(tgContext, mfContext); + VertexingOptions<InputTrack> vertexingOptions(tgContext, mfContext); - auto res = finder.find(tracksPtr, vFinderOptions); + auto res = finder.find(tracksPtr, vertexingOptions); BOOST_CHECK(res.ok()); -- GitLab