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