Class Scine::Sparrow::nddo::TwoCenterIntegralContainer¶
-
class
TwoCenterIntegralContainer
¶ This class contains smart pointers to two-center two-electron matrices for different atoms.
This class stores for each atom pair a shared pointer to a Global2c2eMatrix, containing the ERIs between the two centers.
Public Functions
-
TwoCenterIntegralContainer
(const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const ElementParameters &ep)¶ constructor, give a reference to the positions, to the elements and to the element paramters, where the atomic orbital composition is.
- Parameters
elements
: vector specifying the elements of the molecule.positions
: vector of the position in cartesian coordinates of the nuclei.ep
: parameters of the elements. Contain, for istance, the AO composition of each element.
-
void
initialize
()¶ Initializes the Global2c2eMatrix for each atom pair.
Their size depend on the element pair in question.
-
void
update
(Utils::derivOrder order)¶ Updated the Global2c2eMatrix for each atom pair.
- Parameters
order
: specify up to which derivative the integral has to be calculated.
-
void
set
(unsigned int a, unsigned int b, integralMatrix_t mat)¶ sets a Global2c2eMatrix to correspond to a certain atom pair.
- Parameters
a
: index of the first atom.b
: index of the second atom.mat
: std::shared_ptr<multipole::Global2c2eMatrix> containing the ERIs corresponding to the atom pair.
-
integralMatrix_t
get
(unsigned int a, unsigned int b) const¶ Getter for the ERIs corresponding to an atom pair.
- Return
a std::shared_ptr<Global2c2eMatrix> containing the ERIs corresponding to the atom pair.
- Parameters
a
: index of the first atom. Must be smaller than b.b
: index of the second atom. Must be bigger than a.
-