Class Scine::Sparrow::nddo::multipole::Local2c2eIntegralCalculator¶
-
class
Local2c2eIntegralCalculator
¶ This class is responsible for the calculation of the 2-center-2-electron integrals in the local coordinate system.
Public Types
-
using
LocalTerms
= std::list<LocalTerm>¶ Each charge distribution might be expanded in more than just one multipole (so, more than one LocalTerm possible).
-
using
LocalTermArray
= std::array<std::array<LocalTerms, 40>, 40>¶ There are 40 possible charge distributions.
Public Static Functions
-
template<Utils::derivOrder
O
>
static Utils::AutomaticDifferentiation::Value1DType<O>getIntegral
(GeneralTypes::twoElIntegral_t t1, GeneralTypes::twoElIntegral_t t2, double R, const ChargeSeparationParameter &D1, const ChargeSeparationParameter &d2, const KlopmanParameter &rho1, const KlopmanParameter &rho2)¶ Wrapper around the next overload. It enables the reference of the twoElIntegral_t without the need to cast them.
-
template<Utils::derivOrder
O
>
static Utils::AutomaticDifferentiation::Value1DType<O>getIntegral
(int t1, int t2, double R, const ChargeSeparationParameter &D1, const ChargeSeparationParameter &d2, const KlopmanParameter &rho1, const KlopmanParameter &rho2)¶ Calculates the integral value (up to the derivative order O) of the repulsion integral.
- Return
The 2-center-2-electron value up to the O-th derivative in the local coordinates system.
- Template Parameters
O
: the derivative order, defines up to which derivative the value must be computed.
- Parameters
t1
: the index referring to the first GeneralTypes::twoElIntegral_t orbital pair.t2
: the index referring to the second GeneralTypes::twoElIntegral_t orbital pair.R
: the distance between the two centers at which the multipoles are located.D1
: the charge separation parameter belonging to the first multipole.d2
: the charge separation parameter belonging to the second multipole.rho1
: the Klopman parameter for the first center.rho2
: the Klopman parameter for the second center.
-
struct
LocalTerm
¶ Struct defining an interaction between two multipoles.
It consists of a prefactor, f, the charge distributions and the corresponding multipoles. It thus uniquely defines an interaction.
-
using