Main Page | Class Hierarchy | Compound List | File List | Compound Members | File Members

JetFitObject.h

Go to the documentation of this file.
00001 
00015 #ifndef __JETFITOBJECT_H
00016 #define __JETFITOBJECT_H
00017 
00018 #include"jbltools/kinfit/ParticleFitObject.h"
00019 
00020 // Class JetFitObject
00022 
00033 class JetFitObject : public ParticleFitObject {
00034   public:
00035     JetFitObject(double E, double theta, double phi, 
00036                  double DE, double Dtheta, double Dphi, 
00037                  double m = 0);
00038     virtual ~JetFitObject();
00039     
00041     virtual const char *getParamName (int ilocal     
00042                                      ) const;
00043  
00044     
00045     
00046     // these depend on actual parametrisation!
00047     virtual double getPx() const;
00048     virtual double getPy() const;
00049     virtual double getPz() const;
00050     virtual double getE() const;
00051     
00052     virtual double getP() const;
00053     virtual double getP2() const;  
00054     virtual double getPt() const;
00055     virtual double getPt2() const;
00056      
00057     virtual double getDPx(int ilocal) const;
00058     virtual double getDPy(int ilocal) const;
00059     virtual double getDPz(int ilocal) const;
00060     virtual double getDE(int ilocal) const;
00061     
00062     virtual void   addToDerivatives (double der[],
00063                                      int idim,
00064                                      double pxfact=0, 
00065                                      double pyfact=0, 
00066                                      double pzfact=0, 
00067                                      double efact=0) const;
00068 
00069     // add to matrix der2 of size idim x idim
00070     // pxfact*d^2px/(dx_i dx_j) + pyfact...
00071     virtual void   addTo2ndDerivatives (double der2[],
00072                                         int idim,
00073                                         double pxfact, 
00074                                         double pyfact, 
00075                                         double pzfact, 
00076                                         double efact) const;
00077     
00078     virtual void addToGlobalDerMatrix (int idim, double c, double *M) const;
00079 
00080     virtual void invalidateCache() const;
00081   
00082   protected:
00083     
00084     virtual void initCov();
00085     
00086     void updateCache() const;
00087   
00088     mutable bool cachevalid;
00089     
00090     mutable double ctheta, stheta, cphi, sphi,
00091                    p2, p, pt, px, py, pz, dpdE, dptdE, 
00092                    dpxdE, dpydE, dpzdE, dpxdtheta, dpydtheta,
00093                    chi2;
00094                    // d2pdE2, d2ptsE2;
00095   
00096 };
00097 
00098 
00099 
00100 #endif // __JETFITOBJECT_H
00101 

Generated on Fri Sep 14 17:38:21 2007 for Kinfit by doxygen 1.3.2