Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:11:13

0001 // This file is part of the ACTS project.
0002 //
0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 #pragma once
0010 
0011 namespace Acts {
0012 
0013 class Vertex;
0014 struct TrackAtVertex;
0015 
0016 namespace KalmanVertexUpdater {
0017 
0018 /// KalmanVertexUpdater
0019 ///
0020 /// @brief adds or removes track from or updates current vertex
0021 /// Based on
0022 /// Ref. (1):
0023 /// R. Frühwirth et al.
0024 /// Vertex reconstruction and track bundling at the lep collider using robust
0025 /// algorithms
0026 /// Computer Physics Comm.: 96 (1996) 189
0027 /// Chapter 2.1
0028 ///
0029 /// For remarks on the weighted formalism, which we use here, see
0030 /// Ref. (2):
0031 /// Giacinto Piacquadio
0032 /// Identification of b-jets and investigation of the discovery potential of a
0033 /// Higgs boson in the WH−−>lvbb¯ channel with the ATLAS experiment
0034 /// CERN-THESIS-2010-027
0035 /// Section 5.3.5
0036 
0037 /// @brief Updates vertex with knowledge of new track
0038 /// @note KalmanVertexUpdater updates the vertex when trk is added to the fit.
0039 /// However, it does not add the track to the TrackAtVertex list. This to be
0040 /// done manually after calling the method.
0041 ///
0042 ///
0043 /// @param vtx Vertex to be updated
0044 /// @param trk Track to be used for updating the vertex
0045 /// @param nDimVertex number of dimensions of the vertex. Can be 3 (if we only
0046 /// fit its spatial coordinates) or 4 (if we also fit time).
0047 void updateVertexWithTrack(Vertex& vtx, TrackAtVertex& trk,
0048                            unsigned int nDimVertex);
0049 
0050 /// Based on
0051 /// Ref. (1):
0052 /// R. Frühwirth et al.
0053 /// Vertex reconstruction and track bundling at the lep collider using robust
0054 /// algorithms
0055 /// Computer Physics Comm.: 96 (1996) 189
0056 /// Chapter 2.1
0057 
0058 /// @brief Refits a single track with the knowledge of
0059 /// the vertex it has originated from
0060 ///
0061 /// @param track Track to update
0062 /// @param vtx Vertex to use for updating the track
0063 /// @param nDimVertex number of dimensions of the vertex. Can be 3 (if we only
0064 /// fit its spatial coordinates) or 4 (if we also fit time).
0065 void updateTrackWithVertex(TrackAtVertex& track, const Vertex& vtx,
0066                            unsigned int nDimVertex);
0067 
0068 }  // namespace KalmanVertexUpdater
0069 }  // namespace Acts