Go to the documentation of this file.
38 #ifndef MULTIPOLE_HEADER
39 #define MULTIPOLE_HEADER
int m
Definition: multipole_prep.h:73
Definition: integral_info.h:70
Treal template_blas_sqrt(Treal x)
static const int MMDP1
Definition: multipole.h:52
Definition: multipole.h:51
Code for computing multipole moments, and multipole interaction and translation matrices.
Definition: multipole_prep.h:71
Definition of the main floating-point datatype used; the ergo_real type.
Definition: basisinfo.h:50
ergo_real * buffer_W_cs
Definition: multipole.h:54
This file contains preparatory stuff for computing multipole moments and related things.
int noOfTerms
Definition: integral_info.h:71
#define MAX_MULTIPOLE_DEGREE_BASIC
Definition: multipole_prep.h:48
#define LOG_CAT_ERROR
Definition: output.h:47
ergo_real centerCoords[3]
x0, y0, z0
Definition: basisinfo.h:54
double ergo_real
Definition: realtype.h:69
ergo_real get_lm_factor(int l, int m) const
Definition: multipole_prep.cc:98
static const int MMDP1
Definition: multipole.h:70
ergo_real * buffer_T_cc
Definition: multipole.h:71
Definition: multipole.h:69
bool is_initialized() const
Definition: multipole_prep.cc:91
Definition: multipole_prep.h:69
General functionality related to computation of integrals involving Gaussian basis functions.
char monomialInts[4]
Definition: integral_info.h:65
Treal template_blas_fabs(Treal x)
#define MAX_MULTIPOLE_DEGREE
Definition: multipole_prep.h:45
#define MAX_NO_OF_MOMENTS_PER_MULTIPOLE_BASIC
Definition: multipole_prep.h:49
MMInteractor(const MultipolePrepManager &multipolePrepManager)
Definition: multipole.cc:275
ergo_real momentList[MAX_NO_OF_MOMENTS_PER_MULTIPOLE]
Definition: multipole_prep.h:56
ergo_real * buffer_T_sc
Definition: multipole.h:73
int getInteractionMatrix(ergo_real dx, ergo_real dy, ergo_real dz, int l_1, int l_2, ergo_real *result_T)
Definition: multipole.cc:293
Definition: multipole_prep.h:52
Contains coefficients needed for quick integral evaluation.
Definition: integral_info.h:94
~MMTranslator()
Definition: multipole.cc:137
const l_m_struct * get_l_m_list_ptr() const
Definition: multipole_prep.h:83
ergo_real coeff
Definition: integral_info.h:64
Defines IntegralInfo object, providing the coefficients needed for integral evaluation.
ergo_real * buffer_W_cc
Definition: multipole.h:53
~MMInteractor()
Definition: multipole.cc:284
const MultipolePrepManager & multipolePrep
Definition: multipole.h:75
int noOfMoments
Definition: multipole_prep.h:65
MMTranslator(const MultipolePrepManager &multipolePrepManager)
Definition: multipole.cc:128
Code for setting up basis functions starting from shells.
int no_of_basis_func_polys
Definition: integral_info.h:104
int l
Definition: multipole_prep.h:72
#define LOG_AREA_INTEGRALS
Definition: output.h:60
int compute_multipole_moments(const IntegralInfo &integralInfo, const DistributionSpecStruct *distr, multipole_struct_small *result)
Definition: multipole.cc:49
int degree
Definition: multipole_prep.h:64
Definition: multipole_prep.h:62
int setup_multipole_maxAbsMomentList(multipole_struct_large *multipole)
Definition: multipole.cc:418
char monomialInts[4]
nx, ny, nz
Definition: basisinfo.h:55
ergo_real compute_integral_of_simple_prim(const DistributionSpecStruct &distr)
Definition: integrals_general.cc:318
ergo_real * buffer_T_cs
Definition: multipole.h:72
ergo_real coeff
Coefficient A.
Definition: basisinfo.h:51
ergo_real centerCoords[3]
Definition: multipole_prep.h:63
ergo_real momentList[MAX_NO_OF_MOMENTS_PER_MULTIPOLE_BASIC]
Definition: multipole_prep.h:66
int getTranslationMatrix(ergo_real dx, ergo_real dy, ergo_real dz, int l_1, int l_2, ergo_real *result_W) const
Definition: multipole.cc:146
ergo_real maxAbsMomentList[MAX_MULTIPOLE_DEGREE+1]
Definition: multipole_prep.h:57
int setup_multipole_maxAbsMomentList(multipole_struct_large *multipole)
Definition: multipole.cc:418
basis_func_poly_struct basis_func_poly_list[MAX_NO_OF_BASIS_FUNC_POLYS]
Definition: integral_info.h:103
ergo_real * buffer_W_ss
Definition: multipole.h:56
ergo_real euclideanNormList[MAX_MULTIPOLE_DEGREE+1]
Definition: multipole_prep.h:58
void do_output(int logCategory, int logArea, const char *format,...)
Definition: output.cc:53
basis_func_term_struct termList[MAX_NO_OF_TERMS_IN_BASIS_FUNC_POLY]
Definition: integral_info.h:72
int compute_multipole_moments(const IntegralInfo &integralInfo, const DistributionSpecStruct *distr, multipole_struct_small *result)
Definition: multipole.cc:49
ergo_real scaledSolidHarmonicPrefactor
Definition: integral_info.h:73
const MultipolePrepManager & multipolePrep
Definition: multipole.h:57
ergo_real * buffer_T_ss
Definition: multipole.h:74
Functionality for writing output messages to a text file.
ergo_real * buffer_W_sc
Definition: multipole.h:55