|
MPQC
3.0.0-alpha
|
This implements 4-center two-electron integrals in the IntLibint2 library. More...
#include <chemistry/qc/libint2/tbintlibint2.h>

Public Types | |
|
typedef IntParamsG12::ContractedGeminal | ContractedGeminal |
Public Member Functions | |
| TwoBodyIntLibint2 (Integral *integral, const Ref< GaussianBasisSet > &b1, const Ref< GaussianBasisSet > &b2, const Ref< GaussianBasisSet > &b3, const Ref< GaussianBasisSet > &b4, size_t storage, TwoBodyOperSet::type int2etype, const Ref< IntParams > ¶ms) | |
| TwoBodyOperSet::type | type () const |
| Returns the type of the operator set that this object computes. | |
| const Ref< TwoBodyOperSetDescr > & | descr () const |
| return the operator set descriptor | |
| int | log2_shell_bound (int, int, int, int) |
| Return log base 2 of the maximum magnitude of any integral in a shell block obtained from compute_shell. | |
| void | compute_shell (int, int, int, int) |
| Given four shell indices, integrals will be computed and placed in the buffer. | |
| size_t | used_storage () const |
| void | set_integral_storage (size_t storage) |
| This storage is used to cache computed integrals. | |
| const double * | buffer (TwoBodyOper::type te_type) const |
| The computed shell integrals will be put in the buffer returned by this member. | |
Protected Attributes | |
| Ref< Int2eLibint2 > | int2elibint2_ |
This implements 4-center two-electron integrals in the IntLibint2 library.
| const double* sc::TwoBodyIntLibint2::buffer | ( | TwoBodyOper::type | type | ) | const [inline, virtual] |
The computed shell integrals will be put in the buffer returned by this member.
Some TwoBodyInt specializations have more than one buffer: The type arguments selects which buffer is returned. If the requested type is not supported, then 0 is returned.
Reimplemented from sc::TwoBodyInt.
References sc::Int2eLibint2::buffer().
| void sc::TwoBodyIntLibint2::compute_shell | ( | int | , |
| int | , | ||
| int | , | ||
| int | |||
| ) | [virtual] |
Given four shell indices, integrals will be computed and placed in the buffer.
The first two indices correspond to electron 1 and the second two indices correspond to electron 2.
Implements sc::TwoBodyInt.
| int sc::TwoBodyIntLibint2::log2_shell_bound | ( | int | , |
| int | , | ||
| int | , | ||
| int | |||
| ) | [virtual] |
Return log base 2 of the maximum magnitude of any integral in a shell block obtained from compute_shell.
An index of -1 for any argument indicates any shell.
Implements sc::TwoBodyInt.
| TwoBodyOperSet::type sc::TwoBodyIntLibint2::type | ( | ) | const [inline, virtual] |
Returns the type of the operator set that this object computes.
this function is necessary to describe the computed integrals (their number, symmetries, etc.) and/or to implement cloning.
Implements sc::TwoBodyInt.