FairRoot/PandaRoot
RhoKalmanVtxFitter.h
Go to the documentation of this file.
1 #ifndef RHOKALMANVTXFITTER_H
2 #define RHOKALMANVTXFITTER_H
3 // //
5 // RhoKalmanVtxFitter //
6 // //
7 // Author: R. Kliemt 2010 //
8 // Vertex finder & fitter using track separation and the perigee helix //
9 // approximation //
10 // //
12 
13 
14 #include "RhoBase/RhoFitterBase.h"
15 
16 #include "RhoBase/RhoCandList.h"
17 #include "TVector3.h"
18 
19 class RhoCandidate;
20 
22 {
23  public:
25  virtual ~RhoKalmanVtxFitter();
28 
29  double FitVertexFast(TVector3& vtx, TMatrixD& cov, bool skipcov=false, int niter=2);
30  //double FitVertexFull(TVector3& vtx, TMatrixD& cov);
31 
32  void SetDebug(bool db = true) {if(db) { fVerbose=true; } fDebug=db;};
33  void SetSilent() {fVerbose=false; fDebug=false;};
34  private:
37 
38  Bool_t Calculate();
39  Bool_t CalcPrgParams(RhoCandidate* cand,TVector3 expansionpoint); // calculate helix and its covariance
40  Bool_t CalcPrgParams(RhoCandidate* cand) {return CalcPrgParams(cand,fExpansionPoint);}; // calculate helix and its covariance
41  //double CalculateVertexFast(Bool_t skpcov=false);
42  bool fDebug;
44  TVector3 fExpansionPoint; // Expansion point
45  Float_t fPrgParams[5]; // Helix Paramterization around expansion point of each track
46  TMatrixD fPrgCov; // Covariance matrix 5x5 of each track
47  TMatrixD fJacobian; // Jacobian 5x7
48  //TClonesArray* fTrackArray;
49  ClassDef(RhoKalmanVtxFitter,1)
50 };
51 
52 #endif
Int_t i
Definition: run_full.C:25
TTree * b
void SetDebug(bool db=true)
void SetNIterations(int i)
Bool_t FitNode(RhoCandidate *b)
Bool_t CalcPrgParams(RhoCandidate *cand, TVector3 expansionpoint)
RhoKalmanVtxFitter(RhoCandidate *b)
void SetExpansionPoint(TVector3 P)
int niter
Definition: poormantracks.C:20
double FitVertexFast(TVector3 &vtx, TMatrixD &cov, bool skipcov=false, int niter=2)
GeV c P
RhoCandidate * fCurrentHead
TMatrixT< double > TMatrixD
Definition: PndLmdDim.h:52