00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef AssociatedLaguerre_h
00014 #define AssociatedLaguerre_h 1
00015 #include "CLHEP/GenericFunctions/AbsFunction.hh"
00016
00017 namespace Genfun {
00018
00023 class AssociatedLaguerre : public AbsFunction {
00024
00025 FUNCTION_OBJECT_DEF(AssociatedLaguerre)
00026
00027 public:
00028
00029
00030 AssociatedLaguerre(unsigned int n, unsigned int k);
00031
00032
00033 AssociatedLaguerre(const AssociatedLaguerre &right);
00034
00035
00036 virtual ~AssociatedLaguerre();
00037
00038
00039
00040 virtual double operator ()(double argument) const;
00041 virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
00042
00043
00044 unsigned int n() const;
00045
00046
00047 unsigned int k() const;
00048
00049 private:
00050
00051
00052 const AssociatedLaguerre & operator=(const AssociatedLaguerre &right);
00053
00054
00055 unsigned int _n;
00056
00057
00058 unsigned int _k;
00059
00060
00061 const AbsFunction *_function;
00062
00063
00064 void create();
00065 };
00066
00067 }
00068
00069
00070
00071 #endif
00072
00073