00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef INTEGRALS_2EL_HEADER
00029 #define INTEGRALS_2EL_HEADER
00030
00031 #include "basisinfo.h"
00032
00033
00034 namespace JK {
00035
00036 struct Params
00037 {
00038 int use_naive_fockmatrix_construction;
00039 ergo_real threshold_J;
00040 ergo_real threshold_K;
00041 ergo_real multipole_threshold_factor;
00042 int use_densfit_for_J;
00043 int use_differential_density;
00044 int use_fmm;
00045 ergo_real fmm_box_size;
00046 int fmm_no_of_branches;
00047 ergo_real fmm_branch_splitter_extent_1;
00048 ergo_real fmm_branch_splitter_extent_2;
00049 ergo_real fmm_branch_splitter_extent_3;
00050 ergo_real fmm_branch_splitter_extent_4;
00051 ergo_real fmm_branch_splitter_extent_5;
00052 ergo_real exchange_box_size;
00053 int noOfThreads_J;
00054 int noOfThreads_K;
00055
00056 Params() : use_naive_fockmatrix_construction(0),
00057 threshold_J(1e-12),
00058 threshold_K(1e-12),
00059 multipole_threshold_factor(1),
00060 use_densfit_for_J(0),
00061 use_differential_density(0),
00062 use_fmm(1),
00063 fmm_box_size(5.0),
00064 fmm_no_of_branches(0),
00065 fmm_branch_splitter_extent_1(0),
00066 fmm_branch_splitter_extent_2(0),
00067 fmm_branch_splitter_extent_3(0),
00068 fmm_branch_splitter_extent_4(0),
00069 fmm_branch_splitter_extent_5(0),
00070 exchange_box_size(5.0),
00071 noOfThreads_J(1),
00072 noOfThreads_K(1)
00073 {}
00074
00075 };
00076
00077
00078
00079 }
00080
00081
00082 #if 0
00083
00084 typedef struct
00085 {
00086 int shell_idx_1;
00087 int shell_idx_2;
00088 int noOfExponentPairs;
00089 int exponentPairIndex;
00090 } shell_pair_struct;
00091
00092
00093 typedef struct
00094 {
00095 int idx_1;
00096 int idx_2;
00097 int productOrgIdx;
00098 ergo_real exponent_1;
00099 ergo_real exponent_2;
00100 ergo_real coeff_1;
00101 ergo_real coeff_2;
00102 ergo_real coeff_12, exponent_12;
00103 ergo_real sizeOfProduct;
00104 ergo_real centerCoords_1[3];
00105 ergo_real centerCoords_2[3];
00106 ergo_real centerCoords_12[3];
00107 int n1max;
00108 int n2max;
00109 } exponent_pair_struct;
00110
00111 #endif
00112
00113
00114 #endif