PandaRoot
InteractionPoint.h
Go to the documentation of this file.
1 // ******************************************************
2 // DecayTreeFitter Package
3 // We thank the original author Wouter Hulsbergen
4 // (BaBar, LHCb) for providing the sources.
5 // http://arxiv.org/abs/physics/0503191v1 (2005)
6 // Adaptation & Development for PANDA: Ralf Kliemt (2015)
7 // ******************************************************
8 #ifndef DECAYTREEFITTER_INTERACTIONPOINT_H
9 #define DECAYTREEFITTER_INTERACTIONPOINT_H 1
10 
11 #include "InternalParticle.h"
12 //#include "RecoParticle.h"
13 //#include "GaudiKernel/GenericVectorTypes.h"
14 //#include "GaudiKernel/SymmetricMatrixTypes.h"
15 #include "TMatrixD.h"
16 #include "RhoVector3Err.h"
17 #include "Rtypes.h"
18 
19 namespace LHCb {
20 class VertexBase;
21 }
22 
23 namespace DecayTreeFitter {
24 
26  public:
27  InteractionPoint(RhoCandidate *daughter, const Configuration &config);
28  InteractionPoint(const RhoVector3Err &ipvertex, RhoCandidate *daughter, const Configuration &config);
29  InteractionPoint(const RhoLorentzVectorErr &ipmom, RhoCandidate *daughter, const Configuration &config);
30  InteractionPoint(const RhoLorentzVectorErr &ipmom, const RhoVector3Err &ipvertex, RhoCandidate *daughter, const Configuration &config);
31 
32  virtual int dim() const { return 7; } // (fix to the "first" internal particle )
33  virtual ErrCode initPar1(FitParams *);
34  virtual ErrCode initCov(FitParams *) const;
35  // ErrCode initMom( FitParams* fitparams ) const ;
36 
37  virtual int type() const { return kInteractionPoint; }
38 
39  virtual double chiSquare(const FitParams *par) const;
40 
41  ErrCode projectIPConstraint(const FitParams *fitpar, Projection &) const;
42  ErrCode projectBeamConstraint(const FitParams *fitpar, Projection &) const;
43  virtual ErrCode projectConstraint(Constraint::Type, const FitParams *, Projection &) const;
44 
45  virtual void addToConstraintList(constraintlist &alist, int depth) const;
46 
47  private:
48  TVector3 m_ipPos; // interaction point position
49  TMatrixDSym m_ipPosCov; // cov matrix
50  TMatrixDSym m_ipPosCovInv; // inverse of cov matrix
51  TLorentzVector m_ipMom; // Beam Momentum
52  TMatrixDSym m_ipMomCov; // cov matrix
53  TMatrixDSym m_ipMomCovInv; // inverse of cov matrix
54  bool m_hasposcon;
55  bool m_hasmomcon;
56  bool m_hasposcov;
57  bool m_hasmomcov;
58  ClassDef(InteractionPoint, 1)
59 };
60 
61 } // namespace DecayTreeFitter
62 
63 #endif
std::vector< DecayTreeFitter::Constraint > constraintlist
Definition: ParticleBase.h:102