C++ main module for mmsd Package  1.0
MATH_LogGammaFunction.h
Go to the documentation of this file.
1 #ifndef MATH_LogGammaFunction_H
2 #define MATH_LogGammaFunction_H
3 
4 
5 #include "MATH_Function.h"
6 
7 #include <boost/math/special_functions/gamma.hpp>
8 
16  SP_OBJECT(MATH_LogGammaFunction);
17 
18  public:
19 
20 
21  // ATTRIBUTES
22  private:
23 
24  //
25  // ASSOCIATIONS
26 
27  protected:
28  // METHODS
29 
30  // CONSTRUCTORS
31 
34 
35 
36 
37  // DESTRUCTORS
38 
39 
42  virtual ~MATH_LogGammaFunction(void);
43 
44  // NEW methods
45 
46  public:
49  static inline SP::MATH_LogGammaFunction New() {
50  SP::MATH_LogGammaFunction p(new MATH_LogGammaFunction(),MATH_LogGammaFunction::Delete());
51  p->setThis(p);
52  return p;
53  };
54 
55 
56 
57 
58  // GET methods
59 
60  // OTHERS methods
61 
65  virtual tReal computeFunction(const tReal& x) {
66  return boost::math::lgamma<tReal>(x);
67  }
68 
72  inline static tReal ComputeFunction(const tReal& x) {
73  return boost::math::lgamma<tReal>(x);
74  }
75 
76 
77 
78 };
79 
80 #endif
static tReal ComputeFunction(const tReal &x)
compute the function return gamma(x);
Definition: MATH_LogGammaFunction.h:72
This class describes the digamma function.
Definition: MATH_LogGammaFunction.h:15
This class describes a function function.
Definition: MATH_Function.h:16
static SP::MATH_LogGammaFunction New()
create a gamma function
Definition: MATH_LogGammaFunction.h:49
DEFINE_SPTR(MATH_LogGammaFunction)
virtual ~MATH_LogGammaFunction(void)
destroy an gamma funtion
Definition: MATH_LogGammaFunction.cpp:7
#define tReal
Definition: types.h:18
virtual tReal computeFunction(const tReal &x)
compute the function return gamma(x);
Definition: MATH_LogGammaFunction.h:65
MATH_LogGammaFunction(void)
create a gamma function
Definition: MATH_LogGammaFunction.cpp:3
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:106