File oneCenterTwoElectronIntegrals.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
nddo -
class
OneCenterTwoElectronIntegrals - #include <oneCenterTwoElectronIntegrals.h>
This class calculates all the unique one-center two-electron integrals for a given element.
Public Types
-
using
orb_index_t= int¶
Public Functions
-
void
setElement(Utils::ElementType e, BasisFunctions basisFunctions = BasisFunctions::spd)¶
-
void
calculateIntegrals()¶
-
int
getNumberIntegrals() const¶
-
void
set(orb_index_t a, orb_index_t b, orb_index_t c, orb_index_t d, double value)¶
-
double
get(orb_index_t a, orb_index_t b, orb_index_t c, orb_index_t d) const¶
-
double
get(int index) const¶
-
void
setSlaterCondonParameters(const SlaterCondonParameters *slaterCondonParameters)¶
Private Functions
-
void
initialize(BasisFunctions basisFunctions)¶
-
void
setExchangePIntegral()¶
-
void
calculateIntegralsFromExponents()¶
-
bool
needsIntegralsFromSlaterCondonParameters()¶
Private Members
-
Utils::ElementType
element_¶
-
int
nIntegrals_¶
-
std::vector<double>
integrals_¶
-
std::vector<bool>
alreadyGiven_¶
-
const SlaterCondonParameters *
scPar_= {nullptr}¶
-
OneCenterTwoElectronCalculator
calculator_¶
-
bool
elementHasBeenSet_= {false}¶
-
using
-
class
-
namespace
-
namespace