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
TDDFTBData.h
Go to the documentation of this file.
1 
7 #ifndef SPARROW_TDDFTBDATA_H
8 #define SPARROW_TDDFTBDATA_H
9 
14 #include <Utils/Typenames.h>
15 #include <memory>
16 
17 namespace Scine {
18 namespace Sparrow {
19 
28  public:
30  std::shared_ptr<Eigen::MatrixXd> gammaMatrix;
32  std::shared_ptr<Eigen::VectorXd> spinConstants;
33 
34  TDDFTBData(const Utils::MolecularOrbitals& MOs, const Utils::SingleParticleEnergies& orbitalEnergies,
36  const Utils::LcaoUtils::ElectronicOccupation& occupation, const Eigen::MatrixXd& overlapMatrix,
37  const Eigen::MatrixXd& gMatrix, std::shared_ptr<Eigen::VectorXd> spinConstantVector)
38  : LinearResponseData(MOs, orbitalEnergies, std::move(aoIndex), elements, occupation, overlapMatrix) {
39  gammaMatrix = std::make_shared<Eigen::MatrixXd>(gMatrix);
40  spinConstants = std::move(spinConstantVector);
41  }
42 
43  template<class DFTBMethod>
44  static TDDFTBData constructTDDFTBDataFromDFTBMethod(const DFTBMethod& method) {
45  return TDDFTBData(method.getMolecularOrbitals(), method.getSingleParticleEnergies(),
46  method.getInitializer()->getAtomsOrbitalsIndexes(), method.getElementTypes(),
47  method.getElectronicOccupation(), method.getOverlapMatrix(), method.calculateGammaMatrix(),
48  method.calculateSpinConstantVector());
49  }
50 };
51 } // namespace Sparrow
52 } // namespace Scine
53 
54 #endif // SPARROW_TDDFTBDATA_H
This class contains the infos needed to perform a linear response calculation. This way excited state...
Definition: LinearResponseData.h:28
This class contains the infos needed to perform a TD-DFTB calculation. This way excited states proper...
Definition: TDDFTBData.h:27
std::shared_ptr< Eigen::MatrixXd > gammaMatrix
Gamma parameters size: nAtoms x nAtoms.
Definition: TDDFTBData.h:30
std::shared_ptr< Eigen::VectorXd > spinConstants
Magnetic Hubbard parameters (spin constants) size: nAtoms.
Definition: TDDFTBData.h:32