CLHEP VERSION Reference Documentation
CLHEP Home Page CLHEP Documentation CLHEP Bug Reports |
00001 // -*- C++ -*- 00002 // $Id: 00003 //---------------------PtRelFcn---------------------------------------------// 00004 // // 00005 // Class PtRelFcn // 00006 // // 00007 // This class is a parameterization of ptrel distributions measured at // 00008 // CDF. It has 6 parameters, and is normalized. Alternate descriptions, // 00009 // in the past, have used 7 parameters but without normalization. // 00010 // // 00011 // Joe Boudreau, Azizur Rahaman, March 2003 // 00012 // // 00013 //--------------------------------------------------------------------------// 00014 #ifndef PtRelFcn_h 00015 #define PtRelFcn_h 1 00016 #include "CLHEP/GenericFunctions/AbsFunction.hh" 00017 #include "CLHEP/GenericFunctions/Parameter.hh" 00018 #include "CLHEP/GenericFunctions/LogGamma.hh" 00019 #include "CLHEP/GenericFunctions/Erf.hh" 00020 00021 namespace Genfun { 00022 00027 class PtRelFcn : public AbsFunction { 00028 00029 FUNCTION_OBJECT_DEF(PtRelFcn) 00030 00031 public: 00032 00033 // Constructor 00034 PtRelFcn(); 00035 00036 // Copy constructor 00037 PtRelFcn(const PtRelFcn &right); 00038 00039 // Destructor 00040 virtual ~PtRelFcn(); 00041 00042 // Retreive function value 00043 virtual double operator ()(double argument) const; 00044 virtual double operator ()(const Argument & a) const {return operator() (a[0]);} 00045 00046 // Parameter P0: 00047 Parameter & P0(); 00048 const Parameter & P0() const; 00049 00050 // Parameter P1: 00051 Parameter & P1(); 00052 const Parameter & P1() const; 00053 00054 // Parameter P2: 00055 Parameter & P2(); 00056 const Parameter & P2() const; 00057 00058 // Parameter P3: 00059 Parameter & P3(); 00060 const Parameter & P3() const; 00061 00062 // Parameter P4: 00063 Parameter & P4(); 00064 const Parameter & P4() const; 00065 00066 // Parameter P5: 00067 Parameter & P5(); 00068 const Parameter & P5() const; 00069 00070 private: 00071 00072 // It is illegal to assign an adjustable constant 00073 const PtRelFcn & operator=(const PtRelFcn &right); 00074 00075 // Here are the parameters: 00076 Parameter _p0,_p1,_p2,_p3,_p4,_p5; 00077 LogGamma _logGamma; 00078 Erf _erf; 00079 }; 00080 } // namespace Genfun 00081 00082 #endif