8 #ifndef SPARROW_TWOCENTERINTEGRALCONTAINER_H
9 #define SPARROW_TWOCENTERINTEGRALCONTAINER_H
22 class ElementParameters;
24 class Global2c2eMatrix;
35 using integralMatrix_t = std::shared_ptr<multipole::Global2c2eMatrix>;
36 using Container = std::vector<std::vector<integralMatrix_t>>;
55 void update(Utils::DerivativeOrder order);
63 void set(
unsigned int a,
unsigned int b, integralMatrix_t mat) {
64 matrices_[a][b] = std::move(mat);
73 integralMatrix_t
get(
unsigned int a,
unsigned int b)
const {
75 return matrices_[a][b];
80 void initializePair(
unsigned int i,
unsigned int j);
82 void updatePair(
unsigned int i,
unsigned int j, Utils::DerivativeOrder order);
96 #endif // SPARROW_TWOCENTERINTEGRALCONTAINER_H
Definition: ElementParameters.h:26
void update(Utils::DerivativeOrder order)
Updated the Global2c2eMatrix for each atom pair.
Definition: TwoCenterIntegralContainer.cpp:52
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...
Definition: TwoCenterIntegralContainer.cpp:18
This class contains smart pointers to two-center two-electron matrices for different atoms...
Definition: TwoCenterIntegralContainer.h:33
Definition: Global2c2eTerms.h:34
void initialize()
Initializes the Global2c2eMatrix for each atom pair. Their size depend on the element pair in questio...
Definition: TwoCenterIntegralContainer.cpp:23
void set(unsigned int a, unsigned int b, integralMatrix_t mat)
sets a Global2c2eMatrix to correspond to a certain atom pair.
Definition: TwoCenterIntegralContainer.h:63