|
Scine::Sparrow
4.0.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
|
This class generates the one-electron matrix H for semi-empirical methods. More...
#include <OneElectronMatrix.h>

Public Member Functions | |
| OneElectronMatrix (const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const Eigen::MatrixXd &densityMatrix, const TwoCenterIntegralContainer &twoCIntegrals, const ElementParameters &elementPar, const Utils::AtomsOrbitalsIndexes &aoIndexes) | |
| Constructor. | |
| void | initialize () |
| Initializes one-electron matrix H and the used data structures. | |
| void | calculate (const Utils::MatrixWithDerivatives &S) |
| Fills the one-electron matrix H by reading and calculating the required integrals. | |
| void | calculateSameAtomBlocks () |
| Calculates all the blocks on the same atoms. | |
| void | calculateSameAtomBlock (int a, int startIndex, int nAOs) |
| Calculates a specific block on an atom. | |
| void | calculateDifferentAtomsBlocks (const Utils::MatrixWithDerivatives &S) |
| Calculates all the blocks on different atom pairs. | |
| void | calculateDifferentAtomsBlock (int startRow, int startCol, const AtomicParameters &pA, const AtomicParameters &pB, const Utils::MatrixWithDerivatives &S) |
| Calculates a block between a specific atom pair. | |
| template<Utils::Derivative O> | |
| void | addDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< O > &derivativeContainer, const Utils::MatrixWithDerivatives &S) const |
| Calculates the derivative contribution up to the order. More... | |
| const Eigen::MatrixXd & | operator() () const |
| Getter for the one-electron matrix H. | |
| const Eigen::MatrixXd & | getMatrix () const |
| template<Utils::Derivative O> | |
| void | addDerivatives (DerivativeContainerType< O > &derivativeContainer, const Utils::MatrixWithDerivatives &S) const |
| template<Utils::Derivative O> | |
| void | addDerivativesContribution1 (DerivativeContainerType< O > &derivativeContainer, int a, int startIndex, int nAOs) const |
| template<Utils::Derivative O> | |
| void | addDerivativesContribution2 (DerivativeContainerType< O > &derivativeContainer, int a, int b, int indexA, int indexB, int nAOsA, int nAOsB, const Utils::MatrixWithDerivatives &S) const |
This class generates the one-electron matrix H for semi-empirical methods.
| void Scine::Sparrow::nddo::OneElectronMatrix::addDerivatives | ( | Utils::AutomaticDifferentiation::DerivativeContainerType< O > & | derivativeContainer, |
| const Utils::MatrixWithDerivatives & | S | ||
| ) | const |
Calculates the derivative contribution up to the order.
| O. |