Go to the documentation of this file.
38 #ifndef INTEGRALS_2EL_K_PREP_HEADER
39 #define INTEGRALS_2EL_K_PREP_HEADER
const neighbor_basisfunc_struct * neighborList
Definition: integrals_2el_K_prep.cc:336
int symmetryFlag
Definition: csr_matrix.h:54
ergo_real threshold_K
Definition: integrals_2el.h:48
int noOfBasisFuncs
Definition: basisinfo.h:120
int thread_ID
Definition: integrals_2el_K_prep.cc:331
int get_list_of_labeled_distrs_maxLimitingFactor(const BasisInfoStruct &basisInfo, const IntegralInfo &integralInfo, ergo_real threshold, ergo_real *resultMaxLimitingFactor, ergo_real maxDensityMatrixElement)
Definition: integrals_2el_utils.cc:269
Compressed sparse row (CSR) matrix functionality.
int basisFuncIndex_1
Definition: basisinfo.h:59
int n_saved
Definition: integrals_2el_K_prep.cc:309
#define LOG_CAT_ERROR
Definition: output.h:47
int create_CSR_for_K(const BasisInfoStruct &basisInfo, const IntegralInfo &integralInfo, const JK::Params &J_K_params, csr_matrix_struct *dens_CSR, csr_matrix_struct *K_CSR, int symmetryFlag)
Definition: integrals_2el_K_prep.cc:532
double ergo_real
Definition: realtype.h:69
int resultCode
Definition: integrals_2el_K_prep.cc:340
int * longListCounterList
Definition: integrals_2el_K_prep.cc:339
identify_needed_elements_thread_struct(const csr_matrix_struct *dens_CSR_, const int *noOfNeighborsList_, const neighbor_basisfunc_struct *neighborList_)
Definition: integrals_2el_K_prep.cc:341
static void do_sort_int_list(int *list, int n)
Definition: integrals_2el_K_prep.cc:96
ergo_real threshold
Definition: integrals_2el_K_prep.cc:333
int ** longList
Definition: integrals_2el_K_prep.cc:307
int ergo_CSR_create(csr_matrix_struct *csr, int symmetryFlag, int n, long nnz, const std::vector< int > &rowind, const std::vector< int > &colind)
Definition: csr_matrix.cc:75
Definition: basisinfo.h:112
int i1
Definition: integrals_2el_K_prep.cc:506
listsStruct()
Definition: integrals_2el_K_prep.cc:310
Definition: integrals_2el.h:45
Treal template_blas_fabs(Treal x)
int basisFuncIndex_2
Definition: basisinfo.h:60
static int identify_needed_elements(ergo_real threshold, const csr_matrix_struct *dens_CSR, const int noOfNeighborsList[], const neighbor_basisfunc_struct *neighborList, int maxNoOfNeighbors, int **longList, int *longListCounterList, int nThreads)
Tries to predict which elements of K will be needed.
Definition: integrals_2el_K_prep.cc:373
int maxNoOfNeighbors
Definition: integrals_2el_K_prep.cc:337
static int find_doubles_in_sorted_list(const int *list, int n)
Definition: integrals_2el_K_prep.cc:112
static int find_int_in_list(const int *list, int listLength, int i)
Definition: integrals_2el_K_prep.cc:84
void init(int n)
Definition: integrals_2el_K_prep.cc:319
~listsStruct()
Definition: integrals_2el_K_prep.cc:311
int ** longList
Definition: integrals_2el_K_prep.cc:338
Definition: integrals_2el_K_prep.cc:505
Definition: integrals_2el_K_prep.cc:329
Contains coefficients needed for quick integral evaluation.
Definition: integral_info.h:94
static int find_int_in_sorted_list(const int *list, int listLength, int i)
Definition: integrals_2el_K_prep.cc:57
int n
Definition: csr_matrix.h:52
int ergo_CSR_get_values_singlerow(const csr_matrix_struct *csr, int row, std::vector< int > &colind, std::vector< ergo_real > &values, int nvalues)
Definition: csr_matrix.cc:358
Definition: basisinfo.h:58
Code for various utilities used by 2-electron integral computation (i.e. computation of J and K matri...
Code for preparing for computation of the Hartree-Fock exchange matrix K.
Definition: csr_matrix.h:51
void print(int area, const char *routine)
Definition: utilities.h:111
const csr_matrix_struct * dens_CSR
Definition: integrals_2el_K_prep.cc:334
ergo_real max_CS_factor
Definition: integrals_2el_K_prep.cc:51
int get_list_of_labeled_distrs(const BasisInfoStruct &basisInfo, const IntegralInfo &integralInfo, ergo_real threshold, DistributionSpecStructLabeled *resultList, int maxCountDistrs, ergo_real maxLimitingFactor, const ergo_real *dens, ergo_real maxDensityMatrixElement)
Definition: integrals_2el_utils.cc:369
Basic OS access utilities.
#define LOG_CAT_INFO
Definition: output.h:49
Definition: integrals_2el_K_prep.cc:306
static int identify_needed_elements_part(ergo_real threshold, const csr_matrix_struct *dens_CSR, const int noOfNeighborsList[], const neighbor_basisfunc_struct *neighborList, const int maxNoOfNeighbors, int **longList, int *longListCounterList, int myIndex, int noOfParts)
Definition: integrals_2el_K_prep.cc:164
static int merge_lists(const int *list_1, int list_1_len, const int *list_2, int list_2_len, int *resultList)
Definition: integrals_2el_K_prep.cc:125
int i
Definition: integrals_2el_K_prep.cc:50
static int compare_distr_idxs_and_factor_structs(const void *p1in, const void *p2in)
Definition: integrals_2el_K_prep.cc:512
Definition: integrals_2el_K_prep.cc:49
Code for setting up basis functions starting from shells.
static void * identify_needed_elements_thread_func(void *arg)
Definition: integrals_2el_K_prep.cc:353
Parameters related to integral evaluation.
int ergo_CSR_get_nvalues_singlerow(const csr_matrix_struct *csr, int row)
Definition: csr_matrix.cc:351
ergo_real limitingFactor
Definition: integrals_2el_K_prep.cc:508
#define LOG_AREA_INTEGRALS
Definition: output.h:60
int i2
Definition: integrals_2el_K_prep.cc:507
ergo_real ergo_CSR_get_max_abs_element(const csr_matrix_struct *csr)
Definition: csr_matrix.cc:300
int * intPtr
Definition: integrals_2el_K_prep.cc:304
void output_current_memory_usage(int logArea, const char *contextString)
Definition: output.cc:186
pthread_t thread
Definition: integrals_2el_K_prep.cc:330
int create_CSR_for_K(const BasisInfoStruct &basisInfo, const IntegralInfo &integralInfo, const JK::Params &J_K_params, csr_matrix_struct *dens_CSR, csr_matrix_struct *K_CSR, int symmetryFlag)
Definition: integrals_2el_K_prep.cc:532
int * longListCounterList
Definition: integrals_2el_K_prep.cc:308
void do_output(int logCategory, int logArea, const char *format,...)
Definition: output.cc:53
int nThreads
Definition: integrals_2el_K_prep.cc:332
const int * noOfNeighborsList
Definition: integrals_2el_K_prep.cc:335
ergo_real limitingFactor
Definition: basisinfo.h:63
int noOfThreads_K
Definition: integrals_2el.h:61
Time-measuring class.
Definition: utilities.h:80