Scine::Sparrow  5.1.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Scine::Sparrow::nddo::TwoCenterIntegralContainer Class Reference

This class contains smart pointers to two-center two-electron matrices for different atoms. More...

#include <TwoCenterIntegralContainer.h>

Collaboration diagram for Scine::Sparrow::nddo::TwoCenterIntegralContainer:
Collaboration graph

Public Types

using integralMatrix_t = std::shared_ptr< multipole::Global2c2eMatrix >
 
using Container = std::vector< std::vector< integralMatrix_t >>
 

Public Member 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. More...
 
void initialize ()
 Initializes the Global2c2eMatrix for each atom pair. Their size depend on the element pair in question.
 
void update (Utils::DerivativeOrder order)
 Updated the Global2c2eMatrix for each atom pair. More...
 
void set (unsigned int a, unsigned int b, integralMatrix_t mat)
 sets a Global2c2eMatrix to correspond to a certain atom pair. More...
 
integralMatrix_t get (unsigned int a, unsigned int b) const
 Getter for the ERIs corresponding to an atom pair. More...
 

Detailed Description

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.

Constructor & Destructor Documentation

Scine::Sparrow::nddo::TwoCenterIntegralContainer::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
elementsvector specifying the elements of the molecule.
positionsvector of the position in cartesian coordinates of the nuclei.
epparameters of the elements. Contain, for istance, the AO composition of each element.

Member Function Documentation

integralMatrix_t Scine::Sparrow::nddo::TwoCenterIntegralContainer::get ( unsigned int  a,
unsigned int  b 
) const
inline

Getter for the ERIs corresponding to an atom pair.

Parameters
aindex of the first atom. Must be smaller than b.
bindex of the second atom. Must be bigger than a.
Returns
a std::shared_ptr<Global2c2eMatrix> containing the ERIs corresponding to the atom pair.
void Scine::Sparrow::nddo::TwoCenterIntegralContainer::set ( unsigned int  a,
unsigned int  b,
integralMatrix_t  mat 
)
inline

sets a Global2c2eMatrix to correspond to a certain atom pair.

Parameters
aindex of the first atom.
bindex of the second atom.
matstd::shared_ptr<multipole::Global2c2eMatrix> containing the ERIs corresponding to the atom pair.
void Scine::Sparrow::nddo::TwoCenterIntegralContainer::update ( Utils::DerivativeOrder  order)

Updated the Global2c2eMatrix for each atom pair.

Parameters
orderspecify up to which derivative the integral has to be calculated.

The documentation for this class was generated from the following files: