Go to the documentation of this file.
38 #ifndef INTEGRALS_2EL_K_KERNEL_HEADER
39 #define INTEGRALS_2EL_K_KERNEL_HEADER
56 int interactionWithSelf,
59 int use_multipole_screening_for_clusters,
int symmetryFlag
Definition: csr_matrix.h:54
int index_2
Definition: organize_distrs.h:84
Treal template_blas_sqrt(Treal x)
const MMLimitTable & GetMMLimitTable() const
Definition: integral_info.h:110
ergo_real * summedIntegralList
Definition: integrals_2el_utils.h:86
Constants for the number pi and some related numbers like sqrt(pi).
Compressed sparse row (CSR) matrix functionality.
Definition: organize_distrs.h:121
std::vector< int > basisFuncList
Definition: organize_distrs.h:129
int c
Definition: integrals_2el_boxed.cc:53
double ergo_real
Definition: realtype.h:69
std::vector< batch_struct > batchList
Definition: organize_distrs.h:125
long noOfElementsInRow
Definition: csr_matrix.h:46
Definition: organize_distrs.h:51
int idx1
Definition: integrals_2el_boxed.cc:56
static ergo_real ergo_CSR_get_element_inline(const csr_matrix_struct *csr, int row, int col)
Definition: integrals_2el_K_kernel.cc:68
int d
Definition: integrals_2el_boxed.cc:53
int a
Definition: integrals_2el_boxed.cc:53
void addContrib(int row, int col, ergo_real value)
Definition: integrals_2el_utils.cc:67
ergo_real * partial_dmat_2
Definition: integrals_2el_utils.h:90
int basisFuncPairListIndex
Definition: organize_distrs.h:107
ergo_real centerCoords[3]
Definition: organize_distrs.h:55
Treal template_blas_fabs(Treal x)
std::vector< distr_group_struct > groupList
Definition: organize_distrs.h:123
int index_2_mod
Definition: organize_distrs.h:86
std::vector< cluster_struct > clusterList
Definition: organize_distrs.h:124
Definition: organize_distrs.h:72
int index_inbox_2
Definition: organize_distrs.h:88
monomial_info_struct monomial_info
Definition: integral_info.h:105
int get_K_contribs_from_2_interacting_boxes(const IntegralInfo &integralInfo, const JK::ExchWeights &CAM_params, int maxNoOfMonomials, csr_matrix_struct *K_CSR_shared, ResultMatContrib *resultMatContrib, const csr_matrix_struct *dens_CSR, int symmetryFlag, const distr_org_struct &distr_org_struct_1, const distr_org_struct &distr_org_struct_2, int interactionWithSelf, ergo_real threshold, JK_contribs_buffer_struct *bufferStructPtr, int use_multipole_screening_for_clusters, ergo_real boxDistance)
Definition: integrals_2el_K_kernel.cc:96
int no_of_monomials_list[MONOMIAL_N_MAX+1]
Definition: monomial_info.h:61
long firstElementIndex
Definition: csr_matrix.h:47
std::vector< int > spMatCountList
Definition: organize_distrs.h:131
ergo_real * partial_K_2
Definition: integrals_2el_utils.h:92
Code for utility functions used by 2-electron integral computation (i.e. computation of J and K matri...
std::vector< int > spMatIdxList
Definition: organize_distrs.h:132
int get_related_integrals_hermite(const IntegralInfo &integralInfo, const JK::ExchWeights ¶msCAM, int n1max, int noOfMonomials_1, int n2max, int noOfMonomials_2, ergo_real dx0, ergo_real dx1, ergo_real dx2, ergo_real alpha0, ergo_real resultPreFactor, ergo_real *primitiveIntegralList)
Definition: integrals_hermite.cc:53
Contains coefficients needed for quick integral evaluation.
Definition: integral_info.h:94
int n
Definition: csr_matrix.h:52
int noOfGroups
Definition: organize_distrs.h:76
int b
Definition: integrals_2el_boxed.cc:53
#define set_abcd_list_item_macro(i, A, B, C, D, v, i1, i2)
Definition: integrals_2el_K_kernel.cc:92
Code for various utilities used by 2-electron integral computation (i.e. computation of J and K matri...
static int ergo_csr_find_index_inline(const csr_matrix_struct *csr, int row, int col)
Definition: integrals_2el_K_kernel.cc:46
Definition: csr_matrix.h:51
ergo_real * elementList
Definition: csr_matrix.h:56
Code for computational kernel for computing the Hartree-Fock exchange matrix K.
Defines IntegralInfo object, providing the coefficients needed for integral evaluation.
ergo_real get_max_abs_mm_contrib(int degree1, const ergo_real *maxMomentVectorNormList1, int degree2, const ergo_real *maxMomentVectorNormList2, ergo_real distance) const
Definition: mm_limit_table.cc:196
int ergo_CSR_add_to_element(csr_matrix_struct *csr, int row, int col, ergo_real value)
Definition: csr_matrix.cc:252
int poly_ab_index
Definition: integrals_2el_boxed.cc:54
Definition: organize_distrs.h:103
int index_inbox_1
Definition: organize_distrs.h:87
Definition: organize_distrs.h:82
int poly_cd_index
Definition: integrals_2el_boxed.cc:55
int index_1
Definition: organize_distrs.h:83
ergo_real densValue
Definition: integrals_2el_boxed.cc:58
Definition: integrals_2el_utils.h:52
int basisFuncForBatchsIndex
Definition: organize_distrs.h:108
Code for computation of Coulomb integrals of Hermite Gaussians, using the the McMurchie-Davidson sche...
Definition: integral_info.h:148
Definition: integrals_2el_boxed.cc:52
Definition: integrals_2el_utils.h:85
int idx2
Definition: integrals_2el_boxed.cc:57
std::vector< basis_func_pair_struct > basisFuncPairList
Definition: organize_distrs.h:126
std::vector< int > basisFuncListForBatchs_map
Definition: organize_distrs.h:128
int get_K_contribs_from_2_interacting_boxes(const IntegralInfo &integralInfo, const JK::ExchWeights &CAM_params, int maxNoOfMonomials, csr_matrix_struct *result_K_CSR_shared, ResultMatContrib *resultMatContrib, const csr_matrix_struct *dens_CSR, int symmetryFlag, const distr_org_struct &distr_org_struct_1, const distr_org_struct &distr_org_struct_2, int interactionWithSelf, ergo_real threshold, JK_contribs_buffer_struct *bufferStructPtr, int use_multipole_screening_for_clusters, ergo_real boxDistance)
Definition: integrals_2el_K_kernel.cc:96
void do_summedIntegralList_contribs_self(const i_j_val_struct *conv_mat_1_sp, int conv_mat_1_sp_nnz, const i_j_val_struct *conv_mat_2_sp, int conv_mat_2_sp_nnz, int noOfMonomials_1, int noOfMonomials_2, const ergo_real *primitiveIntegralList, int noOfBasisFuncPairs_1, int noOfBasisFuncPairs_2, ergo_real *summedIntegralList)
Definition: integrals_2el_util_funcs.cc:339
int * columnIndexList
Definition: csr_matrix.h:57
Code for organizing a given set of primitive Gaussian distributions (typically coming from basis func...
int nmax
Definition: organize_distrs.h:73
ergo_real * partial_dmat_1
Definition: integrals_2el_utils.h:89
static ergo_real distance(const ergo_real *a, const ergo_real *b)
Coomputes distance between two points, they do not need to be of the Vector3D type.
Definition: dft_common.cc:526
csr_matrix_row_struct * rowList
Definition: csr_matrix.h:55
pthread_mutex_t K_CSR_shared_access_mutex
Definition: integrals_2el_K_kernel.cc:43
std::vector< i_j_val_struct > spMatElementList
Definition: organize_distrs.h:130
int clusterStartIndex
Definition: organize_distrs.h:104
int index_1_mod
Definition: organize_distrs.h:85
int noOfClusters
Definition: organize_distrs.h:105
ergo_real * partial_K_1
Definition: integrals_2el_utils.h:91
ergo_real exponent
Definition: organize_distrs.h:56
ergo_real * primitiveIntegralList
Definition: integrals_2el_utils.h:87
int noOfBasisFuncPairs
Definition: organize_distrs.h:106
Definition: simple_sparse_mat.h:42
void do_summedIntegralList_contribs_std(const i_j_val_struct *conv_mat_1_sp, int conv_mat_1_sp_nnz, const i_j_val_struct *conv_mat_2_sp, int conv_mat_2_sp_nnz, int noOfMonomials_1, int noOfMonomials_2, const ergo_real *primitiveIntegralList, int noOfBasisFuncPairs_1, int noOfBasisFuncPairs_2, ergo_real *summedIntegralList)
Definition: integrals_2el_util_funcs.cc:81
int basisFuncForBatchCount
Definition: organize_distrs.h:109
#define pitopow52
Definition: pi.h:59
int groupStartIndex
Definition: organize_distrs.h:75