8 #ifndef SPARROW_DFTB_ZEROORDERFOCK_H 
    9 #define SPARROW_DFTB_ZEROORDERFOCK_H 
   17 class SingleParticleEnergies;
 
   18 class AdditiveElectronicContribution;
 
   24 class ZeroOrderMatricesCalculator;
 
   33                          const Eigen::MatrixXd& energyWeightedDensityMatrix, 
const int& nElectrons);
 
   35   void initialize() 
override;
 
   36   void calculateDensityIndependentPart(Utils::DerivativeOrder order) 
override;
 
   37   void calculateDensityDependentPart(Utils::DerivativeOrder order) 
override;
 
   38   void finalize(Utils::DerivativeOrder )
 override {
 
   41   double calculateElectronicEnergy() 
const override;
 
   42   void addDerivatives(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::Derivative::First>& derivatives) 
const override;
 
   43   void addDerivatives(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::Derivative::SecondAtomic>& derivatives) 
const override;
 
   44   void addDerivatives(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::Derivative::SecondFull>& derivatives) 
const override;
 
   60   const Eigen::MatrixXd& energyWeightedDensityMatrix_;
 
   61   const int& nElectrons_;
 
   62   std::vector<std::shared_ptr<Utils::AdditiveElectronicContribution>> densityIndependentContributions_;
 
   69 #endif // SPARROW_DFTB_ZEROORDERFOCK_H 
void addDensityDependentElectronicContribution(std::shared_ptr< Utils::AdditiveElectronicContribution > contribution) final
Definition: ZeroOrderFock.cpp:104
Definition: ZeroOrderFock.h:29
This class calculates the matrices resulting from the zeroth order expansion of the DFT energy for th...
Definition: ZeroOrderMatricesCalculator.h:32
void addDensityIndependentElectronicContribution(std::shared_ptr< Utils::AdditiveElectronicContribution > contribution) final
Definition: ZeroOrderFock.cpp:108