CMS 3D CMS Logo

TFitParticleMCMomDev.h

Go to the documentation of this file.
00001 
00002 #ifndef TFitParticleMCMomDev_hh
00003 #define TFitParticleMCMomDev_hh
00004 
00005 #include "TMatrixD.h"
00006 #include "PhysicsTools/KinFitter/interface/TAbsFitParticle.h"
00007 #include "TLorentzVector.h"
00008 #include "TVector3.h"
00009 
00010 class TFitParticleMCMomDev: public TAbsFitParticle {
00011 
00012 public :
00013 
00014   TFitParticleMCMomDev();
00015   TFitParticleMCMomDev( const TFitParticleMCMomDev& fitParticle );
00016   TFitParticleMCMomDev(TVector3* p, Double_t M, const TMatrixD* theCovMatrix);
00017   TFitParticleMCMomDev(const TString &name, const TString &title, 
00018                  TVector3* p, Double_t M, const TMatrixD* theCovMatrix);
00019   virtual ~TFitParticleMCMomDev();
00020   virtual TAbsFitParticle* clone( TString newname = "" ) const;
00021 
00022   // returns derivative dP/dy with P=(p,E) and y=(r, theta, phi, ...) 
00023   // the free parameters of the fit. The columns of the matrix contain 
00024   // (dP/dr, dP/dtheta, ...).
00025   virtual TMatrixD* getDerivative();
00026   virtual TMatrixD* transform(const TLorentzVector& vec);
00027   virtual void setIni4Vec(const TLorentzVector* pini);
00028   void setIni4Vec(const TVector3* p, Double_t M);
00029   virtual TLorentzVector* calc4Vec( const TMatrixD* params );
00030 
00031 protected :
00032 
00033   void init(TVector3* p, Double_t M, const TMatrixD* theCovMatrix);
00034 
00035   ClassDef(TFitParticleMCMomDev, 1)     // Particle with momentum deviation 4vector parametrization and constrained mass
00036   
00037 private:
00038 };
00039 
00040 #endif

Generated on Tue Jun 9 17:41:15 2009 for CMSSW by  doxygen 1.5.4