![]() |
ATLAS Offline Software
|
#include <TrkVKalVrtFitter.h>
Classes | |
class | CascadeState |
class | State |
struct | TrkMatControl |
Public Member Functions | |
virtual StatusCode | initialize () override final |
virtual StatusCode | finalize () override final |
TrkVKalVrtFitter (const std::string &t, const std::string &name, const IInterface *parent) | |
virtual | ~TrkVKalVrtFitter () |
virtual xAOD::Vertex * | fit (const std::vector< const TrackParameters * > &perigeeList, const Amg::Vector3D &startingPoint) const override final |
Interface for MeasuredPerigee with starting point. More... | |
virtual xAOD::Vertex * | fit (const std::vector< const TrackParameters * > &perigeeList, const std::vector< const NeutralParameters * > &, const Amg::Vector3D &startingPoint) const override final |
virtual xAOD::Vertex * | fit (const std::vector< const TrackParameters * > &perigeeList, const xAOD::Vertex &constraint) const override final |
Interface for MeasuredPerigee with vertex constraint. More... | |
virtual xAOD::Vertex * | fit (const std::vector< const TrackParameters * > &perigeeList, const std::vector< const NeutralParameters * > &, const xAOD::Vertex &constraint) const override final |
virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const Amg::Vector3D &startingPoint) const override final |
Interface for xAOD::TrackParticle with starting point Implements the new style (unique_ptr,EventContext) More... | |
virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const xAOD::Vertex &constraint) const override final |
Interface for xAOD::TrackParticle with vertex constraint. More... | |
virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeu, const Amg::Vector3D &startingPoint) const override final |
virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeu, const xAOD::Vertex &constraint) const override final |
virtual xAOD::Vertex * | fit (const std::vector< const TrackParameters * > &) const override final |
virtual xAOD::Vertex * | fit (const std::vector< const TrackParameters * > &, const std::vector< const Trk::NeutralParameters * > &) const override final |
xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const Amg::Vector3D &constraint, IVKalState &istate) const |
xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const xAOD::Vertex &constraint, IVKalState &istate) const |
VertexID | startVertex (const std::vector< const xAOD::TrackParticle * > &list, std::span< const double > particleMass, IVKalState &istate, double massConstraint=0.) const override final |
Interface for cascade fit. More... | |
VertexID | nextVertex (const std::vector< const xAOD::TrackParticle * > &list, std::span< const double > particleMass, IVKalState &istate, double massConstraint=0.) const override final |
VertexID | nextVertex (const std::vector< const xAOD::TrackParticle * > &list, std::span< const double > particleMass, const std::vector< VertexID > &precedingVertices, IVKalState &istate, double massConstraint=0.) const override final |
VxCascadeInfo * | fitCascade (IVKalState &istate, const Vertex *primVertex=0, bool FirstDecayAtPV=false) const override final |
StatusCode | addMassConstraint (VertexID Vertex, const std::vector< const xAOD::TrackParticle * > &tracksInConstraint, const std::vector< VertexID > &verticesInConstraint, IVKalState &istate, double massConstraint) const override final |
virtual std::unique_ptr< IVKalState > | makeState (const EventContext &ctx) const override final |
virtual StatusCode | VKalVrtFit (const std::vector< const xAOD::TrackParticle * > &, const std::vector< const xAOD::NeutralParticle * > &, Amg::Vector3D &Vertex, TLorentzVector &Momentum, long int &Charge, dvect &ErrorMatrix, dvect &Chi2PerTrk, std::vector< std::vector< double >> &TrkAtVrt, double &Chi2, IVKalState &istate, bool ifCovV0=false) const override final |
virtual StatusCode | VKalVrtFit (const std::vector< const Perigee * > &, Amg::Vector3D &Vertex, TLorentzVector &Momentum, long int &Charge, dvect &ErrorMatrix, dvect &Chi2PerTrk, std::vector< std::vector< double >> &TrkAtVrt, double &Chi2, IVKalState &istate, bool ifCovV0=false) const override final |
virtual StatusCode | VKalVrtFit (const std::vector< const TrackParameters * > &, const std::vector< const NeutralParameters * > &, Amg::Vector3D &Vertex, TLorentzVector &Momentum, long int &Charge, dvect &ErrorMatrix, dvect &Chi2PerTrk, std::vector< std::vector< double >> &TrkAtVrt, double &Chi2, IVKalState &istate, bool ifCovV0=false) const override final |
virtual StatusCode | VKalVrtCvtTool (const Amg::Vector3D &Vertex, const TLorentzVector &Momentum, const dvect &CovVrtMom, const long int &Charge, dvect &Perigee, dvect &CovPerigee, IVKalState &istate) const override final |
virtual StatusCode | VKalVrtFitFast (std::span< const xAOD::TrackParticle *const >, Amg::Vector3D &Vertex, double &minDZ, IVKalState &istate) const |
virtual StatusCode | VKalVrtFitFast (const std::span< const xAOD::TrackParticle *const >, Amg::Vector3D &Vertex, IVKalState &istate) const override final |
virtual StatusCode | VKalVrtFitFast (const std::vector< const TrackParameters * > &, Amg::Vector3D &Vertex, IVKalState &istate) const override final |
virtual std::unique_ptr< Trk::Perigee > | CreatePerigee (const std::vector< double > &VKPerigee, const std::vector< double > &VKCov, IVKalState &istate) const override final |
virtual StatusCode | VKalGetTrkWeights (dvect &Weights, const IVKalState &istate) const override final |
virtual StatusCode | VKalGetFullCov (long int, dvect &CovMtx, IVKalState &istate, bool=false) const override final |
virtual StatusCode | VKalGetMassError (double &Mass, double &MassError, const IVKalState &istate) const override final |
virtual void | setApproximateVertex (double X, double Y, double Z, IVKalState &istate) const override final |
virtual void | setMassForConstraint (double Mass, IVKalState &istate) const override final |
virtual void | setMassForConstraint (double Mass, std::span< const int >, IVKalState &istate) const override final |
virtual void | setRobustness (int, IVKalState &istate) const override final |
virtual void | setRobustScale (double, IVKalState &istate) const override final |
virtual void | setCnstType (int, IVKalState &istate) const override final |
virtual void | setVertexForConstraint (const xAOD::Vertex &, IVKalState &istate) const override final |
virtual void | setVertexForConstraint (double X, double Y, double Z, IVKalState &istate) const override final |
virtual void | setCovVrtForConstraint (double XX, double XY, double YY, double XZ, double YZ, double ZZ, IVKalState &istate) const override final |
virtual void | setMassInputParticles (const std::vector< double > &, IVKalState &istate) const override final |
virtual double | VKalGetImpact (const xAOD::TrackParticle *, const Amg::Vector3D &Vertex, const long int Charge, dvect &Impact, dvect &ImpactError, IVKalState &istate) const override final |
virtual double | VKalGetImpact (const Trk::Perigee *, const Amg::Vector3D &Vertex, const long int Charge, dvect &Impact, dvect &ImpactError, IVKalState &istate) const override final |
virtual double | VKalGetImpact (const xAOD::TrackParticle *, const Amg::Vector3D &Vertex, const long int Charge, dvect &Impact, dvect &ImpactError) const override final |
virtual double | VKalGetImpact (const Trk::Perigee *, const Amg::Vector3D &Vertex, const long int Charge, dvect &Impact, dvect &ImpactError) const override final |
Private Member Functions | |
void | initCnstList () |
void | setAthenaPropagator (const Trk::IExtrapolator *) |
void | initState (const EventContext &ctx, State &state) const |
void | initState (State &state) const |
bool | convertAmg5SymMtx (const AmgSymMatrix(5) *, double[15]) const |
void | VKalTransform (double MAG, double A0V, double ZV, double PhiV, double ThetaV, double PInv, const double[15], long int &Charge, double[5], double[15]) const |
xAOD::Vertex * | makeXAODVertex (int, const Amg::Vector3D &, const dvect &, const dvect &, const std::vector< dvect > &, double, State &state) const |
StatusCode | CvtPerigee (const std::vector< const Perigee * > &list, int &ntrk, State &state) const |
StatusCode | CvtTrackParticle (std::span< const xAOD::TrackParticle *const > list, int &ntrk, State &state) const |
StatusCode | CvtNeutralParticle (const std::vector< const xAOD::NeutralParticle * > &list, int &ntrk, State &state) const |
StatusCode | CvtTrackParameters (const std::vector< const TrackParameters * > &InpTrk, int &ntrk, State &state) const |
StatusCode | CvtNeutralParameters (const std::vector< const NeutralParameters * > &InpTrk, int &ntrk, State &state) const |
void | VKalVrtConfigureFitterCore (int NTRK, State &state) const |
void | VKalToTrkTrack (double curBMAG, double vp1, double vp2, double vp3, double &tp1, double &tp2, double &tp3) const |
int | VKalVrtFit3 (int ntrk, Amg::Vector3D &Vertex, TLorentzVector &Momentum, long int &Charge, dvect &ErrorMatrix, dvect &Chi2PerTrk, std::vector< std::vector< double >> &TrkAtVrt, double &Chi2, State &state, bool ifCovV0) const |
std::unique_ptr< Perigee > | CreatePerigee (double Vx, double Vy, double Vz, const std::vector< double > &VKPerigee, const std::vector< double > &VKCov, State &state) const |
Static Private Member Functions | |
static void | makeSimpleCascade (std::vector< std::vector< int > > &, std::vector< std::vector< int > > &, CascadeState &cstate) |
static void | printSimpleCascade (std::vector< std::vector< int > > &, std::vector< std::vector< int > > &, const CascadeState &cstate) |
static int | findPositions (const std::vector< int > &, const std::vector< int > &, std::vector< int > &) |
static int | getSimpleVIndex (const VertexID &, const CascadeState &cstate) |
static int | indexInV (const VertexID &, const CascadeState &cstate) |
static int | getCascadeNDoF (const CascadeState &cstate) |
static void | FillMatrixP (AmgSymMatrix(5)&, std::vector< double > &) |
static void | FillMatrixP (int iTrk, AmgSymMatrix(5)&, std::vector< double > &) |
static Amg::MatrixX * | GiveFullMatrix (int NTrk, std::vector< double > &) |
static const Perigee * | GetPerigee (const TrackParameters *i_ntrk) |
static int | VKalGetNDOF (const State &state) |
Private Attributes | |
Gaudi::Property< int > | m_Robustness {this, "Robustness", 0} |
Gaudi::Property< double > | m_RobustScale {this, "RobustScale", 1.0} |
Gaudi::Property< double > | m_cascadeCnstPrecision {this, "CascadeCnstPrecision", 1.e-4} |
Gaudi::Property< double > | m_massForConstraint {this, "MassForConstraint", -1.0} |
Gaudi::Property< int > | m_IterationNumber {this, "IterationNumber", 0} |
Gaudi::Property< double > | m_IterationPrecision {this, "IterationPrecision", 0.0} |
Gaudi::Property< double > | m_IDsizeR {this, "IDsizeR", 1150.0} |
Gaudi::Property< double > | m_IDsizeZ {this, "IDsizeZ", 3000.0} |
Gaudi::Property< double > | m_MSsizeR {this, "MSsizeR", 8000.0} |
Gaudi::Property< double > | m_MSsizeZ {this, "MSsizeZ", 10000.0} |
Gaudi::Property< std::vector< double > > | m_c_VertexForConstraint {this, "VertexForConstraint", {0,0,0}} |
Gaudi::Property< std::vector< double > > | m_c_CovVrtForConstraint {this, "CovVrtForConstraint", {0,0,0,0,0,0}} |
Gaudi::Property< std::vector< double > > | m_c_MassInputParticles {this, "InputParticleMasses", {}, "List of masses of input particles (pions assumed if absent)"} |
ToolHandle< IExtrapolator > | m_extPropagator {this, "Extrapolator", "", "External propagator"} |
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > | m_fieldCacheCondObjInputKey |
Gaudi::Property< bool > | m_firstMeasuredPoint {this, "FirstMeasuredPoint", false, "Use FirstMeasuredPoint strategy in fits"} |
Gaudi::Property< bool > | m_firstMeasuredPointLimit {this, "FirstMeasuredPointLimit", false, "Use FirstMeasuredPointLimit strategy"} |
Gaudi::Property< bool > | m_firstMeasuredRadiusLimit |
Gaudi::Property< bool > | m_makeExtendedVertex {this, "MakeExtendedVertex", false, "Return VxCandidate with full covariance matrix"} |
Gaudi::Property< bool > | m_useFixedField {this, "useFixedField", false, "Use fixed magnetic field instead of exact Atlas one"} |
bool | m_isAtlasField {false} |
Gaudi::Property< bool > | m_useAprioriVertex {this, "useAprioriVertexCnst", false, "Use a priori vertex constraint"} |
Gaudi::Property< bool > | m_useThetaCnst {this, "useThetaCnst", false, "Use angle dTheta=0 constraint"} |
Gaudi::Property< bool > | m_usePhiCnst {this, "usePhiCnst", false, "Use angle dPhi=0 constraint"} |
Gaudi::Property< bool > | m_usePointingCnst {this, "usePointingCnst", false, "Use pointing to other vertex constraint"} |
Gaudi::Property< bool > | m_useZPointingCnst {this, "useZPointingCnst", false, "Use ZPointing to other vertex constraint"} |
Gaudi::Property< bool > | m_usePassNear {this, "usePassNearCnst", false, "Use combined particle pass near other vertex constraint"} |
Gaudi::Property< bool > | m_usePassWithTrkErr {this, "usePassWithTrkErrCnst", false, "Use pass near with combined particle errors constraint"} |
Gaudi::Property< bool > | m_frozenVersionForBTagging {this, "FrozenVersionForBTagging", false, "Frozen version for BTagging"} |
Gaudi::Property< bool > | m_allowUltraDisplaced {this, "allowUltraDisplaced", false, "Allow ultra displaced vertices"} |
double | m_BMAG {1.997} |
double | m_CNVMAG {0.29979246} |
VKalExtPropagator * | m_fitPropagator {} |
const IExtrapolator * | m_InDetExtrapolator {} |
Pointer to Extrapolator AlgTool. More... | |
Friends | |
class | VKalExtPropagator |
Definition at line 64 of file TrkVKalVrtFitter.h.
Trk::TrkVKalVrtFitter::TrkVKalVrtFitter | ( | const std::string & | t, |
const std::string & | name, | ||
const IInterface * | parent | ||
) |
Definition at line 30 of file TrkVKalVrtFitter.cxx.
|
virtual |
Definition at line 51 of file TrkVKalVrtFitter.cxx.
|
finaloverride |
Definition at line 728 of file TrkCascadeFitter.cxx.
|
private |
Definition at line 26 of file VKalTransform.cxx.
|
finaloverridevirtual |
Definition at line 159 of file CvtPerigee.cxx.
|
private |
!!! Change of sign !!!!
!!! Change of sign of charge!!!!
Definition at line 172 of file CvtPerigee.cxx.
|
private |
Definition at line 179 of file CvtParametersBase.cxx.
|
private |
Definition at line 124 of file CvtTrackParticle.cxx.
|
private |
Definition at line 25 of file CvtPerigee.cxx.
|
private |
Definition at line 24 of file CvtParametersBase.cxx.
|
private |
Definition at line 27 of file CvtTrackParticle.cxx.
|
staticprivate |
Definition at line 614 of file TrkVKalVrtFitter.cxx.
|
staticprivate |
Definition at line 629 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 65 of file TrkVKalVrtFitter.cxx.
|
staticprivate |
Definition at line 787 of file TrkCascadeFitter.cxx.
|
finaloverridevirtual |
Interface for xAOD::TrackParticle with starting point Implements the new style (unique_ptr,EventContext)
Definition at line 365 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 557 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 582 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Interface for MeasuredPerigee with starting point.
Definition at line 203 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 231 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 313 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Interface for MeasuredPerigee with vertex constraint.
the position of the constraint is ALWAYS the starting point
Definition at line 265 of file TrkVKalVrtFitter.cxx.
xAOD::Vertex * Trk::TrkVKalVrtFitter::fit | ( | const std::vector< const xAOD::TrackParticle * > & | vectorTrk, |
const Amg::Vector3D & | constraint, | ||
IVKalState & | istate | ||
) | const |
Definition at line 374 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 410 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Definition at line 505 of file TrkVKalVrtFitter.cxx.
|
finaloverridevirtual |
Interface for xAOD::TrackParticle with vertex constraint.
the position of the constraint is ALWAYS the starting point
Definition at line 452 of file TrkVKalVrtFitter.cxx.
xAOD::Vertex * Trk::TrkVKalVrtFitter::fit | ( | const std::vector< const xAOD::TrackParticle * > & | vectorTrk, |
const xAOD::Vertex & | constraint, | ||
IVKalState & | istate | ||
) | const |
Definition at line 459 of file TrkVKalVrtFitter.cxx.
|
finaloverride |
Definition at line 274 of file TrkCascadeFitter.cxx.
|
staticprivate |
Definition at line 79 of file TrkCascadeFitter.cxx.
|
staticprivate |
Definition at line 226 of file CvtTrackParticle.cxx.
|
staticprivate |
Definition at line 804 of file TrkCascadeFitter.cxx.
|
staticprivate |
Definition at line 649 of file TrkVKalVrtFitter.cxx.
|
staticprivate |
Definition at line 823 of file TrkCascadeFitter.cxx.
|
private |
|
finaloverridevirtual |
Definition at line 72 of file TrkVKalVrtFitter.cxx.
Definition at line 164 of file TrkVKalVrtFitter.cxx.
|
private |
Definition at line 158 of file TrkVKalVrtFitter.cxx.
|
staticprivate |
Definition at line 180 of file TrkCascadeFitter.cxx.
|
finaloverridevirtual |
Definition at line 58 of file TrkVKalVrtFitter.cxx.
|
private |
Definition at line 665 of file TrkVKalVrtFitter.cxx.
|
finaloverride |
Definition at line 144 of file TrkCascadeFitter.cxx.
|
finaloverride |
Definition at line 97 of file TrkCascadeFitter.cxx.
|
staticprivate |
Definition at line 237 of file TrkCascadeFitter.cxx.
|
finaloverridevirtual |
|
private |
Definition at line 477 of file VKalExtPropagator.cxx.
|
finaloverridevirtual |
Definition at line 89 of file SetFitOptions.cxx.
|
finaloverridevirtual |
Definition at line 185 of file SetFitOptions.cxx.
|
finaloverridevirtual |
Definition at line 141 of file SetFitOptions.cxx.
|
finaloverridevirtual |
Definition at line 149 of file SetFitOptions.cxx.
|
finaloverridevirtual |
|
finaloverridevirtual |
Definition at line 123 of file SetFitOptions.cxx.
|
finaloverridevirtual |
Definition at line 132 of file SetFitOptions.cxx.
|
finaloverridevirtual |
Definition at line 159 of file SetFitOptions.cxx.
|
finaloverridevirtual |
|
finaloverride |
|
finaloverridevirtual |
Definition at line 450 of file VKalVrtFitSvc.cxx.
|
finaloverridevirtual |
Definition at line 21 of file VKalGetImpact.cxx.
|
finaloverridevirtual |
Definition at line 32 of file VKalGetImpact.cxx.
|
finaloverridevirtual |
Definition at line 82 of file VKalGetImpact.cxx.
|
finaloverridevirtual |
Definition at line 91 of file VKalGetImpact.cxx.
|
finaloverridevirtual |
Definition at line 550 of file VKalVrtFitSvc.cxx.
Definition at line 578 of file VKalVrtFitSvc.cxx.
|
finaloverridevirtual |
Definition at line 562 of file VKalVrtFitSvc.cxx.
|
private |
Definition at line 422 of file VKalVrtFitSvc.cxx.
|
private |
Definition at line 59 of file VKalTransform.cxx.
|
private |
Definition at line 18 of file SetFitOptions.cxx.
|
finaloverridevirtual |
Definition at line 380 of file VKalVrtFitSvc.cxx.
|
finaloverridevirtual |
|
finaloverridevirtual |
|
finaloverridevirtual |
|
private |
Definition at line 266 of file VKalVrtFitSvc.cxx.
|
finaloverridevirtual |
|
finaloverridevirtual |
Definition at line 107 of file VKalVrtFitFastSvc.cxx.
|
virtual |
Definition at line 56 of file VKalVrtFitFastSvc.cxx.
|
friend |
Definition at line 68 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 358 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 475 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 331 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 332 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 330 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 322 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 476 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 334 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 337 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 341 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 342 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 343 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 479 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 357 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 326 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 327 of file TrkVKalVrtFitter.h.
|
private |
Pointer to Extrapolator AlgTool.
Definition at line 480 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 348 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 324 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 325 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 345 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 323 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 328 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 329 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 320 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 321 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 350 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 346 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 355 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 356 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 352 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 353 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 351 of file TrkVKalVrtFitter.h.
|
private |
Definition at line 354 of file TrkVKalVrtFitter.h.