Go to the documentation of this file.
37 #ifndef BOYSFUNCTION_HEADER
38 #define BOYSFUNCTION_HEADER
47 #define BOYS_N_MAX (BASIS_FUNC_POLY_MAX_DEGREE*4+1)
50 #if defined(PRECISION_QUAD_FLT128)
51 #define BOYS_X_MAX 120.0
52 #define BOYS_TAB_DEGREE 12
53 #define BOYS_NO_OF_INTERVALS 1600
54 #elif defined(PRECISION_LONG_DOUBLE)
55 #define BOYS_X_MAX 85.0
56 #define BOYS_TAB_DEGREE 10
57 #define BOYS_NO_OF_INTERVALS 300
59 #define BOYS_X_MAX 75.0
60 #define BOYS_TAB_DEGREE 10
61 #define BOYS_NO_OF_INTERVALS 200
85 void write_to_buffer (
char * dataBuffer,
size_t const bufferSize )
const;
Treal template_blas_pow(Treal x, Treal y)
Treal template_blas_sqrt(Treal x)
std::vector< BoysFuncIntervalSetStruct > Boys_list
Definition: boysfunction.h:75
Definition of the main floating-point datatype used; the ergo_real type.
Constants for the number pi and some related numbers like sqrt(pi).
void assign_from_buffer(char const *dataBuffer, size_t const bufferSize)
Function needed for Chunks&Tasks usage.
Definition: boysfunction.cc:303
ergo_real BoysFunction_pretabulated(int n, ergo_real x) const
Definition: boysfunction.cc:215
double ergo_real
Definition: realtype.h:69
Code for Boys function evaluation.
static ergo_real BoysFunction_raw_GaussLobatto(int n, ergo_real x, int noOfIntegrationIntervals, ergo_real endPt=1)
Definition: boysfunction.cc:128
ergo_real BoysFunction_expensive(int n, ergo_real x, int noOfIntegrationIntervals, int method=0) const
Definition: boysfunction.cc:256
Treal template_blas_exp(Treal x)
size_t get_size() const
Function needed for Chunks&Tasks usage.
Definition: boysfunction.cc:298
Definition: boysfunction.h:73
Constant determining which kinds of Gaussian basis functions are allowed; s, p, d,...
ergo_real midx
Definition: boysfunction.h:65
void init()
Definition: boysfunction.cc:177
#define pi
Definition: pi.h:57
static ergo_real BoysFunction_raw_simpson(int n, ergo_real x, int noOfIntegrationIntervals)
Definition: boysfunction.cc:60
static ergo_real BoysFunctionIntegrand(int n, ergo_real x, ergo_real t)
Definition: boysfunction.cc:94
void write_to_buffer(char *dataBuffer, size_t const bufferSize) const
Function needed for Chunks&Tasks usage.
Definition: boysfunction.cc:281
void print(int area, const char *routine)
Definition: utilities.h:111
Basic OS access utilities.
#define BOYS_X_MAX
Definition: boysfunction.h:59
#define LOG_AREA_INTEGRALS
Definition: output.h:60
ergo_real BoysFunction(int n, ergo_real x) const
Definition: boysfunction.cc:252
ergo_real A[BOYS_TAB_DEGREE]
Definition: boysfunction.h:66
static ergo_real BoysFunction_raw_booles_rule(int n, ergo_real x, int noOfIntegrationIntervals)
Definition: boysfunction.cc:100
#define BOYS_NO_OF_INTERVALS
Definition: boysfunction.h:61
Definition: boysfunction.h:64
#define BOYS_N_MAX
Definition: boysfunction.h:47
ergo_real SavedPrefactor_list[BOYS_N_MAX]
Definition: boysfunction.h:76
BoysFunctionManager()
Definition: boysfunction.cc:275
Definition: boysfunction.h:69
int Boys_init_flag
Definition: boysfunction.h:77
#define BOYS_TAB_DEGREE
Definition: boysfunction.h:60
Time-measuring class.
Definition: utilities.h:80
Functionality for writing output messages to a text file.
static ergo_real semiFactorial(int n)
Definition: boysfunction.cc:50