MPQC
2.3.1
|
Int2eV3 is a class wrapper for the two body part of the C language IntV3 library. More...
#include <int2e.h>
Classes | |
struct | store_list |
Public Types | |
enum | { STORAGE_CHUNK = 4096 } |
Public Member Functions | |
Int2eV3 (Integral *, const Ref< GaussianBasisSet > &bs1, const Ref< GaussianBasisSet > &bs2, const Ref< GaussianBasisSet > &bs3, const Ref< GaussianBasisSet > &bs4, int order, size_t storage) | |
void | init_storage (int size) |
void | done_storage () |
int | storage_used () |
void | init_bounds () |
void | init_bounds_1der () |
void | done_bounds () |
void | done_bounds_1der () |
int | redundant () |
void | set_redundant (int i) |
int | permute () |
void | set_permute (int i) |
int | used_storage () const |
void | erep (int &psh1, int &psh2, int &psh3, int &psh4) |
void | erep (int *shells, int *sizes) |
void | erep_all1der (int &psh1, int &psh2, int &psh3, int &psh4, der_centersv3_t *der_centers) |
void | erep_all1der (int *shells, int *sizes, der_centersv3_t *dercenters) |
void | erep_2center (int &psh1, int &psh2) |
void | erep_2center (int *shells, int *sizes) |
void | erep_3center (int &psh1, int &psh2, int &psh3) |
void | erep_3center (int *shells, int *sizes) |
int | erep_4bound (int s1, int s2, int s3, int s4) |
int | erep_4bound_1der (int s1, int s2, int s3, int s4) |
double * | buffer () |
Ref< GaussianBasisSet > | basis () |
Ref< GaussianBasisSet > | basis1 () |
Ref< GaussianBasisSet > | basis2 () |
Ref< GaussianBasisSet > | basis3 () |
Ref< GaussianBasisSet > | basis4 () |
Ref< GaussianBasisSet > | cs1 () const |
Ref< GaussianBasisSet > | cs2 () const |
Ref< GaussianBasisSet > | cs3 () const |
Ref< GaussianBasisSet > | cs4 () const |
GaussianBasisSet * | pcs1 () const |
GaussianBasisSet * | pcs2 () const |
GaussianBasisSet * | pcs3 () const |
GaussianBasisSet * | pcs4 () const |
Public Member Functions inherited from sc::RefCount | |
int | lock_ptr () const |
Lock this object. | |
int | unlock_ptr () const |
Unlock this object. | |
void | use_locks (bool inVal) |
start and stop using locks on this object | |
refcount_t | nreference () const |
Return the reference count. | |
refcount_t | reference () |
Increment the reference count and return the new count. | |
refcount_t | dereference () |
Decrement the reference count and return the new count. | |
int | managed () const |
void | unmanage () |
Turn off the reference counting mechanism for this object. More... | |
int | managed () const |
Return 1 if the object is managed. Otherwise return 0. | |
Public Member Functions inherited from sc::Identity | |
Identifier | identifier () |
Return the Identifier for this argument. More... | |
Static Public Member Functions | |
static double | logbound_to_bound (int) |
static int | bound_to_logbound (double value) |
Protected Types | |
enum | { int_bound_min = SCHAR_MIN, int_bound_max = SCHAR_MAX } |
typedef struct store_list | store_list_t |
typedef int(BuildIntV3::* | intfunc) () |
typedef signed char | int_bound_t |
Protected Member Functions | |
void | add_store (void *p) |
void | free_store () |
void | _free_store (store_list_t *s, int n) |
void | build_not_using_gcs (int nc1, int nc2, int nc3, int nc4, int minam1, int minam3, int maxam12, int maxam34, int dam1, int dam2, int dam3, int dam4, int eAB) |
void | build_using_gcs (int nc1, int nc2, int nc3, int nc4, int minam1, int minam3, int maxam12, int maxam34, int dam1, int dam2, int dam3, int dam4, int eAB) |
void | gen_prim_intermediates (int pr1, int pr2, int pr3, int pr4, int am) |
void | gen_prim_intermediates_with_norm (int pr1, int pr2, int pr3, int pr4, int am, double norm) |
void | gen_shell_intermediates (int sh1, int sh2, int sh3, int sh4) |
void | blockbuildprim (int minam1, int maxam12, int minam3, int maxam34) |
void | blockbuildprim_1 (int am12min, int am12max, int am34, int m) |
void | blockbuildprim_3 (int am34min, int am34max, int m) |
void | int_init_buildgc (int order, int am1, int am2, int am3, int am4, int nc1, int nc2, int nc3, int nc4) |
void | int_done_buildgc () |
void | int_buildgcam (int minam1, int minam2, int minam3, int minam4, int maxam1, int maxam2, int maxam3, int maxam4, int dam1, int dam2, int dam3, int dam4, int sh1, int sh2, int sh3, int sh4, int eAB) |
void | int_offset_print (std::ostream &, double *buffer, Ref< GaussianBasisSet > c1, int s1, Ref< GaussianBasisSet > c2, int s2, Ref< GaussianBasisSet > c3, int s3, Ref< GaussianBasisSet > c4, int s4) |
void | int_offset_print_n (std::ostream &, double *buffer, int n1, int n2, int n3, int n4, int o1, int o2, int o3, int o4, int e12, int e13e24, int e34) |
void | int_print (std::ostream &, double *buffer, Ref< GaussianBasisSet > c1, int s1, Ref< GaussianBasisSet > c2, int s2, Ref< GaussianBasisSet > c3, int s3, Ref< GaussianBasisSet > c4, int s4) |
void | int_print_n (std::ostream &, double *buffer, int n1, int n2, int n3, int n4, int e12, int e13e24, int e34) |
void | int_print_intermediates (std::ostream &) |
void | shiftam_12 (double *I0100, double *I1000, double *I0000, int am1, int am2, int am3, int am4) |
void | shiftam_12eAB (double *I0100, double *I1000, double *I0000, int am1, int am2, int am3, int am4) |
void | shiftam_34 (double *I0001, double *I0010, double *I0000, int am1, int am2, int am3, int am4) |
void | int_init_shiftgc (int order, int am1, int am2, int am3, int am4) |
void | int_done_shiftgc () |
double * | int_shiftgcam (int gc1, int gc2, int gc3, int gc4, int tam1, int tam2, int tam3, int tam4, int peAB) |
void | alloc_inter (int nprim, int nshell) |
void | compute_shell_1 (Ref< GaussianBasisSet > cs, int, int) |
void | compute_prim_2 (Ref< GaussianBasisSet > cs1, int, int, Ref< GaussianBasisSet > cs2, int, int) |
double * | int_initialize_erep (size_t storage, int order, const Ref< GaussianBasisSet > &cs1, const Ref< GaussianBasisSet > &cs2, const Ref< GaussianBasisSet > &cs3, const Ref< GaussianBasisSet > &cs4) |
void | int_done_erep () |
void | transform_init () |
void | transform_done () |
void | source_space (int nsource) |
void | copy_to_source (double *integrals, int nsource) |
void | do_gencon_sparse_transform_2e (Integral *integ, double *integrals, double *target, int index, GaussianShell *sh1, GaussianShell *sh2, GaussianShell *sh3, GaussianShell *sh4) |
void | transform_2e_slow (Integral *, double *integrals, double *target, GaussianShell *sh1, GaussianShell *sh2, GaussianShell *sh3, GaussianShell *sh4) |
void | transform_2e (Integral *, double *integrals, double *target, GaussianShell *sh1, GaussianShell *sh2, GaussianShell *sh3, GaussianShell *sh4) |
void | compute_erep (int flags, int *psh1, int *psh2, int *psh3, int *psh4, int dam1, int dam2, int dam3, int dam4) |
void | compute_erep_1der (int flags, double *buffer, int *psh1, int *psh2, int *psh3, int *psh4, int dercenter) |
void | nonredundant_erep (double *buffer, int e12, int e34, int e13e24, int n1, int n2, int n3, int n4, int *red_off, int *nonred_off) |
void | compute_erep_bound1der (int flags, double *buffer, int *psh1, int *psh2, int *psh3, int *psh4) |
void | int_erep_bound1der (int flags, int bsh1, int bsh2, int *size) |
void | int_init_bounds_nocomp () |
void | int_init_bounds_1der_nocomp () |
void | int_bounds_comp (int s1, int s2) |
void | int_bounds_1der_comp (int s1, int s2) |
int | int_erep_2bound (int s1, int s2) |
int | int_erep_0bound_1der () |
int | int_erep_2bound_1der (int s1, int s2) |
void | compute_bounds (int_bound_t *overall, int_bound_t *vec, int flag) |
void | compute_bounds_shell (int_bound_t *overall, int_bound_t *vec, int flag, int sh1, int sh2) |
int | int_have_stored_integral (int sh1, int sh2, int sh3, int sh4, int p12, int p34, int p13p24) |
void | int_store_integral (int sh1, int sh2, int sh3, int sh4, int p12, int p34, int p13p24, int size) |
void | int_initialize_offsets2 () |
void | int_done_offsets2 () |
void | make_int_unit_shell () |
void | delete_int_unit_shell () |
Protected Member Functions inherited from sc::RefCount | |
RefCount (const RefCount &) | |
RefCount & | operator= (const RefCount &) |
Protected Attributes | |
Integral * | integral_ |
BuildIntV3 | build |
Ref< IntegralStorer > | storer |
Ref< GaussianBasisSet > | bs1_ |
Ref< GaussianBasisSet > | bs2_ |
Ref< GaussianBasisSet > | bs3_ |
Ref< GaussianBasisSet > | bs4_ |
Ref< GaussianBasisSet > | pbs1_ |
Ref< GaussianBasisSet > | pbs2_ |
Ref< GaussianBasisSet > | pbs3_ |
Ref< GaussianBasisSet > | pbs4_ |
Ref< MessageGrp > | grp_ |
int | bs1_shell_offset_ |
int | bs2_shell_offset_ |
int | bs3_shell_offset_ |
int | bs4_shell_offset_ |
int | bs1_func_offset_ |
int | bs2_func_offset_ |
int | bs3_func_offset_ |
int | bs4_func_offset_ |
int | bs1_prim_offset_ |
int | bs2_prim_offset_ |
int | bs3_prim_offset_ |
int | bs4_prim_offset_ |
int | n_store_last |
store_list_t * | store |
intfunc | build_routine [4][4][4][4][2] |
int | osh1 |
int | osh2 |
int | osh3 |
int | osh4 |
int | opr1 |
int | opr2 |
int | opr3 |
int | opr4 |
int | saved_am12 |
int | saved_am34 |
int | saved_ncon |
IntV3Arrayint3 | contract_length |
int | g1 |
int | g2 |
int | g3 |
int | g4 |
double | AmB [3] |
double | CmD [3] |
int | eAB |
double * | buf34 |
double * | buf12 |
double * | bufshared |
int | redundant_ |
int | permute_ |
Ref< FJT > | fjt_ |
int * | int_shell_to_prim |
IntV3Arraydouble2 | int_shell_r |
IntV3Arraydouble2 | int_prim_zeta |
IntV3Arraydouble2 | int_prim_k |
IntV3Arraydouble2 | int_prim_oo2zeta |
IntV3Arraydouble3 | int_prim_p |
double * | int_buffer |
double * | int_derint_buffer |
Ref< GaussianBasisSet > | int_cs1 |
Ref< GaussianBasisSet > | int_cs2 |
Ref< GaussianBasisSet > | int_cs3 |
Ref< GaussianBasisSet > | int_cs4 |
GaussianShell * | int_shell1 |
GaussianShell * | int_shell2 |
GaussianShell * | int_shell3 |
GaussianShell * | int_shell4 |
IntV3Arraydoublep2 **** | e0f0_con_ints_array |
int | int_expweight1 |
int | int_expweight2 |
int | int_expweight3 |
int | int_expweight4 |
int | int_unit2 |
int | int_unit4 |
GaussianShell * | int_unit_shell |
int | int_integral_storage |
int | int_store1 |
int | int_store2 |
int | int_derivative_bounds |
double * | source |
double * | target |
double * | scratch |
int | nsourcemax |
int_bound_t | int_Q |
int_bound_t | int_R |
int_bound_t * | int_Qvec |
int_bound_t * | int_Rvec |
int | used_storage_ |
int | used_storage_build_ |
int | used_storage_shift_ |
Int2eV3 is a class wrapper for the two body part of the C language IntV3 library.
It is used by TwoBodyIntV3 and TwoBodyDerivIntV3 to implement IntegralV3.