File DFTBCommon.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
dftb -
class
DFTBCommon: public StructureDependentInitializer Public Types
-
using
DiatomicParameterContainer= std::array<SKPairLine, 110>¶
Public Functions
-
DFTBCommon(const Utils::ElementTypeCollection &elements, int &nEl, int &charge, AtomicParameterContainer &atomicPar, DiatomicParameterContainer &diatomicPar)¶
-
~DFTBCommon()¶
-
void
initialize(const std::string &path, unsigned dftbType)¶
-
void
setMethodDetails(const std::string &path, unsigned dftbType)¶
-
void
initialize(const Utils::ElementTypeCollection &elementTypes)¶
-
void
reinitializeParameters()¶
-
unsigned int
getnAOs() const¶
-
bool
hasHubbardDerivatives() const¶
-
bool
unrestrictedCalculationPossible() const¶
-
const DiatomicParameterContainer &
getPairParameters() const¶
-
std::vector<double>
getCoreCharges() const¶
-
Utils::AtomsOrbitalsIndexes
getAtomsOrbitalsIndexes() const¶
-
unsigned
getNumberElectronsForUnchargedSpecies() const¶
Private Functions
-
void
readSpinConstants(const std::string &path)¶
-
void
readHubbardDerivatives(const std::string &path)¶
Private Members
-
const int
nElements_¶
-
std::vector<bool>
atomTypePresent¶
-
std::vector<std::string>
listAtomTypes¶
-
AtomicParameterContainer &
atomParameters¶
-
DiatomicParameterContainer &
pairParameters¶
-
unsigned int
nAOs¶
-
unsigned int
nAtoms¶
-
int &
nElectrons_¶
-
unsigned int
nInitialElectrons_¶
-
int &
molecularCharge_¶
-
double
noInteractionEnergy¶
-
bool
spinPolarizedPossible¶
-
bool
DFTB3Possible¶
-
std::vector<double>
coreCharges_¶
-
Utils::AtomsOrbitalsIndexes
aoIndexes_¶
-
const Utils::ElementTypeCollection &
elementTypes_¶
-
std::string
path_¶
-
unsigned
dftbType_¶
-
using
-
class
-
namespace
-
namespace