File OverlapMatrix.h¶
- Copyright
This code is licensed under the 3-clause BSD license.
Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.
See LICENSE.txt for details.
-
namespace
Scine
-
namespace
Sparrow
-
namespace
nddo
-
class
OverlapMatrix
: public OverlapCalculator - #include <OverlapMatrix.h>
This class computes the whole overlap matrix and returns it in lower diagonal form.
The basis function overlap, as well as its first and second order derivatives with respect to the nuclear cartesian coordinates is calculated. It inherits from OverlapCalculator in order to make this class compatible with its polymorphic useage.
Public Functions
-
OverlapMatrix
(const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const Utils::AtomsOrbitalsIndexes &aoIndexes, const ElementParameters &elementParameters) Constructor.
-
void
calculateOverlap
(Utils::derivOrder highestRequiredOrder) Function calculating the overlap between the AO basis functions up to the desired derivative order.
-
const Utils::MatrixWithDerivatives &
getOverlap
() const Getter for the overlap matrix with its derivatives.
-
void
reset
() (Re)-initializes the overlap matrix with its derivatives.
Private Members
-
const Utils::ElementTypeCollection &
elementTypes_
¶
-
const Utils::PositionCollection &
positions_
¶
-
const Utils::AtomsOrbitalsIndexes &
aoIndexes_
¶
-
const ElementParameters &
elementParameters_
¶
-
AtomPairOverlap<Utils::derivOrder::one>
pairOverlapFirstOrder_
¶
-
AtomPairOverlap<Utils::derivOrder::zero>
pairOverlapZeroOrder_
¶
-
AtomPairOverlap<Utils::derivOrder::two>
pairOverlapSecondOrder_
¶
-
int
nAOs_
= 0¶
-
int
nAtoms_
= 0¶
-
-
class
-
namespace
-
namespace