|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
   34 #ifndef TrkJetFitter_JetFitterRoutines_H 
   35 #define TrkJetFitter_JetFitterRoutines_H 
   38 #include "GaudiKernel/ToolHandle.h" 
   45   class VxVertexOnJetAxis;
 
   47   class JetFitterInitializationHelper;
 
   48   class JetFitterHelper;
 
   49   class KalmanVertexOnJetAxisUpdator;
 
   50   class KalmanVertexOnJetAxisSmoother;
 
   51   class TrkDistanceFinderNeutralCharged;
 
   52   class TrkDistanceFinderNeutralNeutral;
 
   54   static const InterfaceID IID_JetFitterRoutines(
"Trk::JetFitterRoutines", 1, 0);
 
   62       return IID_JetFitterRoutines;
 
  105                int num_maxiterations=30,
 
  106                bool treat_sign_flip=
true,
 
  107                int num_signflip_maxiterations=30,
 
  108                double deltachi2_convergence=0.001) 
const;
 
  178                     int num_maxiterations=20,
 
  179                     bool treat_sign_flip=
true,
 
  180                     int num_signflip_maxiterations=10,
 
  181                     double deltachi2_convergence=1
e-2) 
const;
 
  195                     int num_maxiterations=20,
 
  196                     bool treat_sign_flip=
true,
 
  197                     int num_signflip_maxiterations=10,
 
  198                     double deltachi2_convergence=1
e-3,
 
  199                     double threshold_probability=1
e-5) 
const;
 
  250                     bool fullcomputation,
 
  251                     int num_maxiterations=20,
 
  252                     bool treat_sign_flip=
true,
 
  253                     int num_signflip_maxiterations=10,
 
  254                     double deltachi2_convergence=1
e-2,
 
  255                     double threshold_probability=1
e-3) 
const;
 
  270        {
this, 
"AtlasFieldCacheCondObj", 
"fieldCondObj", 
"Name of the Magnetic Field conditions object key"};
 
  
void smoothAllVertices(VxJetCandidate *myJetCandidate) const
triggers the smoothing of all vertices (the tracks in the fit are updated using the constraint provid...
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCacheCondObjInputKey
ToolHandle< JetFitterHelper > m_helper
VxVertexOnJetAxis inherits from Vertex.
void fillTableWithProbOfMerging(VxJetCandidate *myJetCandidate, bool fullcomputation, int num_maxiterations=20, bool treat_sign_flip=true, int num_signflip_maxiterations=10, double deltachi2_convergence=1e-2, double threshold_probability=1e-3) const
Internal method to fill the VxClusteringTable of the VxJetCandidate object, independently on if the f...
virtual StatusCode initialize() override
std::pair< double, bool > fastProbabilityOfMergingWithPrimary(const VxVertexOnJetAxis *otherVertex, const VxJetCandidate *myJetCandidate) const
Internal method to calculate fast probability of merging, for merging with primary vertex.
double fullProbabilityOfMerging(const VxVertexOnJetAxis *firstVertex, const VxVertexOnJetAxis *secondVertex, const VxJetCandidate *myJetCandidate, int num_maxiterations=20, bool treat_sign_flip=true, int num_signflip_maxiterations=10, double deltachi2_convergence=1e-2) const
Calculates in a complete way the probability two vertices along the jet axis to be compatible with ea...
bool checkJetCandidate(VxJetCandidate *) const
Internal method to provide a check if the VxJetCandidate has been initialized in a consistent way.
void performTheFit(VxJetCandidate *myJetCandidate, int num_maxiterations=30, bool treat_sign_flip=true, int num_signflip_maxiterations=30, double deltachi2_convergence=0.001) const
This is the method where the fit is actually done.
::StatusCode StatusCode
StatusCode definition for legacy code.
void fillTableWithFullProbOfMerging(VxJetCandidate *myJetCandidate, int num_maxiterations=20, bool treat_sign_flip=true, int num_signflip_maxiterations=10, double deltachi2_convergence=1e-3, double threshold_probability=1e-5) const
The VxClusteringTable of the VxJetCandidate provided in input is created, computing all the needed pr...
ToolHandle< KalmanVertexOnJetAxisSmoother > m_smoother
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID & interfaceID()
JetFitterRoutines(const std::string &t, const std::string &n, const IInterface *p)
Constructor.
std::pair< double, bool > fastProbabilityOfMergingNoPrimary(const VxVertexOnJetAxis *, const VxVertexOnJetAxis *, const VxJetCandidate *myJetCandidate) const
Internal method to calculate fast probability of merging, for merging with non primary vertex.
~JetFitterRoutines()
Destructor.
void initializeToMinDistancesToJetAxis(VxJetCandidate *) const
This method provides the initialization of all the tracks in the fit to the position of minimum dista...
ToolHandle< JetFitterInitializationHelper > m_initializationHelper
Februar 2007 (c) Atlas Detector Reconstruction Software.
void copyRecoPositionsToLinearizationPositions(VxJetCandidate &myJetCandidate) const
Method to copy new reco positions to linearization positions after checking new positions are inside ...
ToolHandle< KalmanVertexOnJetAxisUpdator > m_updator
ToolHandle< TrkDistanceFinderNeutralNeutral > m_minDistanceFinderNeutral
void deleteVertexFromJetCandidate(VxVertexOnJetAxis *vertexToDelete, VxJetCandidate *myJetCandidate) const
Deltes a vertex from the VxJetCandidate, doing everything is needed to preserve the internal coherenc...
bool m_noPrimaryVertexRefit
std::pair< double, bool > fastProbabilityOfMerging(const VxVertexOnJetAxis *, const VxVertexOnJetAxis *, const VxJetCandidate *) const
Calculates in a very fast way the probability two vertices along the jet axis to be compatible with e...
void updateAllVertices(VxJetCandidate *myJetCandidate) const
One iteration of the Kalman Updated of all tracks to the actual fit is performed.
void fillTableWithFastProbOfMerging(VxJetCandidate *myJetCandidate) const
The VxClusteringTable of the VxJetCandidate provided in input is created, computing all the needed pr...
ToolHandle< TrkDistanceFinderNeutralCharged > m_minDistanceFinder