Scine::Sparrow
5.1.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
|
This class calculates the matrices resulting from the zeroth order expansion of the DFT energy for the DFTB methods. More...
#include <ZeroOrderMatricesCalculator.h>
Public Member Functions | |
ZeroOrderMatricesCalculator (const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const Utils::AtomsOrbitalsIndexes &aoIndexes, const DFTBCommon::AtomicParameterContainer &atomicPar, const DFTBCommon::DiatomicParameterContainer &diatomicPar, const Utils::DensityMatrix &densityMatrix) | |
void | initializeH0S () |
Initializes the zeroth order corrected Hamiltonian and the overlap matrices. Furthermore, the one-center blocks are already pre-calculated, as they remain constant. | |
void | constructH0S (Utils::DerivativeOrder order) |
Calculate the remaining parts of the Hamiltonian and overlap matrices. | |
void | initializeFockCalculator () |
Correspond to functions from ElectronicContributionCalculator Some of these functions do nothing to avoid double initialization (also called for the overlap) | |
void | calculateFockMatrix (Utils::DerivativeOrder) |
void | addDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< Utils::Derivative::First > &derivatives, const Eigen::MatrixXd &overlapDerivativeMultiplier) const |
void | addDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< Utils::Derivative::SecondAtomic > &derivatives, const Eigen::MatrixXd &overlapDerivativeMultiplier) const |
void | addDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< Utils::Derivative::SecondFull > &derivatives, const Eigen::MatrixXd &overlapDerivativeMultiplier) const |
void | calculateOverlap (Utils::DerivativeOrder highestRequiredOrder) |
const Utils::MatrixWithDerivatives & | getOverlap () const |
const Utils::MatrixWithDerivatives & | getZeroOrderHamiltonian () const |
void | resetOverlap () |
template<Utils::Derivative O> | |
void | addDerivativesImpl (DerivativeContainerType< O > &derivatives, const Eigen::MatrixXd &overlapDerivativeMultiplier) const |
This class calculates the matrices resulting from the zeroth order expansion of the DFT energy for the DFTB methods.