Kindfield
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Friends Pages
boysfunction.h
Go to the documentation of this file.
1 #ifndef BOYSFUNCTION_H
2 #define BOYSFUNCTION_H
3 
4 #include <armadillo>
5 
7 
8 using namespace arma;
9 
11 {
12 public:
13  BoysFunction();
14  BoysFunction(double arg, int levelMax = 0, BoysFunctionIntermediate* intermediate = 0);
15 
16  void set(double arg, int levelMax = 0, BoysFunctionIntermediate* intermediate = 0);
17 
18  double result(int level = 0) const;
19 
20  // Static helper functions
21  static double calculateAsymptopticForm(double arg, int level);
22  static double calculateTaylorExpansion(double arg, int level);
23  static double calculateZeroLevel(double arg);
24  static double doubleFactorial(double n);
25  static double factorial(double n);
26 protected:
27  vec m_results;
29 };
30 
31 #endif // BOYSFUNCTION_H