/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Analysis/VertexFit/VertexFit-00-02-78/VertexFit/GammaShape.h

Go to the documentation of this file.
00001 #ifndef VertexFit_GammaShape_H
00002 #define VertexFit_GammaShape_H
00003 
00004 //
00005 //use for gamma dynamic adjust
00006 //
00007  
00008 #include <cmath>
00009 #include "CLHEP/Matrix/Vector.h"
00010 #include "CLHEP/Vector/LorentzVector.h"
00011 #include "CLHEP/Vector/ThreeVector.h"
00012 #include "CLHEP/Matrix/SymMatrix.h"
00013 #include "CLHEP/Matrix/Matrix.h"
00014 using CLHEP::HepVector;
00015 using CLHEP::HepLorentzVector;
00016 using CLHEP::Hep3Vector;
00017 using CLHEP::HepMatrix;
00018 using CLHEP::HepSymMatrix;
00019 #include "CLHEP/Geometry/Point3D.h"
00020 #ifndef ENABLE_BACKWARDS_COMPATIBILITY
00021    typedef HepGeom::Point3D<double> HepPoint3D;
00022 #endif    
00023 
00024 
00025   
00026 class GammaShape {
00027 
00028 public:
00029  
00030   // constructor & deconstructor
00031   GammaShape();
00032   ~GammaShape(){;}
00033   
00034   GammaShape(const GammaShape &);
00035 
00036   
00037   GammaShape(const double eorigin, const double epeak);
00038   GammaShape(const HepLorentzVector p4, const double dphi, const double dthe, const double de);  
00039 
00040   GammaShape & operator = (const GammaShape &);
00041   double peak(const double fitvalue);
00042   double mean(const double epeak);
00043   double tail(const double epeak);
00044   double width(const double epeak);
00045   double de(const double eorigin, const double peak);
00046   double fitm(double x, double pk, double width, double tail, double mean);
00047   //  Set function
00048   void settail(const double tail) {m_tail = tail;}
00049   void setwidth(const double width) {m_width = width;}
00050   void setpeak(const double peak) {m_peak = peak;}
00051   void sete(const double e) {m_e = e;}
00052   void setde(const double de) {m_de = de;}
00053   void setdphi(const double dphi) {m_dphi = dphi;}
00054   void setdtheta(const double dtheta) {m_dtheta = dtheta;}
00055 
00056   //  get function
00057   double gettail() const {return m_tail;}
00058   double getwidth() const {return m_width;}
00059   double getpeak() const {return m_peak;}
00060   double gete() const {return m_e;}
00061   double getde() const {return m_de;}
00062   double getdphi() const {return m_dphi;}
00063   double getdthe() const {return m_dtheta;}
00064 //  double getdlambda() const {return m_dlambda;}
00065 protected:
00066 
00067 
00068 
00069 private:
00070 
00071 double  m_tail;    //gamma distribution information      
00072 double  m_width;
00073 double  m_peak;
00074 double  m_e;
00075 double  m_de;
00076 double  m_dphi;
00077 double  m_dtheta;
00078 //double  m_dlambda;
00079 };
00080 #endif
00081 

Generated on Tue Nov 29 22:57:40 2016 for BOSS_7.0.2 by  doxygen 1.4.7