45template <
typename _Shell,
size_t _N,
typename _IntegralScalar>
50 static constexpr auto N = _N;
78 shell_set {shell_set},
79 scaling_factor {-1.0} {
93 shell_set {shell_set} {}
104 shell_set {shell_set} {}
115 shell_set {shell_set} {}
129 int shell_indices[2];
137 double libcint_buffer[2 *
N * nbf1 * nbf2];
143 const std::vector<double> buffer_converted {libcint_buffer, libcint_buffer +
N * nbf1 * nbf2};
145 return std::make_shared<LibcintOneElectronIntegralBuffer<IntegralScalar, N>>(buffer_converted, nbf1, nbf2, result, this->scaling_factor);
Definition: BaseOneElectronIntegralEngine.hpp:37
const Vector< double, 3 > & reference() const
Definition: BaseReferenceDependentOperator.hpp:66
Definition: ElectronicDipoleOperator.hpp:33
Definition: GTOShell.hpp:32
size_t numberOfBasisFunctions() const
Definition: GTOShell.cpp:173
Definition: KineticOperator.hpp:31
Definition: LibcintInterfacer.hpp:86
void setCommonOrigin(libcint::RawContainer &raw_container, const Vector< double, 3 > &origin) const
Definition: LibcintInterfacer.cpp:116
Definition: LibcintOneElectronIntegralEngine.hpp:46
static constexpr auto N
Definition: LibcintOneElectronIntegralEngine.hpp:50
std::shared_ptr< BaseOneElectronIntegralBuffer< IntegralScalar, N > > calculate(const GTOShell &shell1, const GTOShell &shell2) override
Definition: LibcintOneElectronIntegralEngine.hpp:126
LibcintOneElectronIntegralEngine(const NuclearAttractionOperator &op, const ShellSet< Shell > &shell_set)
Definition: LibcintOneElectronIntegralEngine.hpp:101
LibcintOneElectronIntegralEngine(const KineticOperator &op, const ShellSet< Shell > &shell_set)
Definition: LibcintOneElectronIntegralEngine.hpp:90
LibcintOneElectronIntegralEngine(const ElectronicDipoleOperator &op, const ShellSet< Shell > &shell_set)
Definition: LibcintOneElectronIntegralEngine.hpp:75
_Shell Shell
Definition: LibcintOneElectronIntegralEngine.hpp:48
_IntegralScalar IntegralScalar
Definition: LibcintOneElectronIntegralEngine.hpp:49
LibcintOneElectronIntegralEngine(const OverlapOperator &op, const ShellSet< Shell > &shell_set)
Definition: LibcintOneElectronIntegralEngine.hpp:112
Definition: NuclearAttractionOperator.hpp:33
Definition: OverlapOperator.hpp:31
Definition: ShellSet.hpp:41
const std::vector< Shell > & asVector() const
Definition: ShellSet.hpp:180
Definition: LibcintInterfacer.hpp:180
const int * atmData() const
Definition: LibcintInterfacer.hpp:233
const int * basData() const
Definition: LibcintInterfacer.hpp:238
int numberOfAtoms() const
Definition: LibcintInterfacer.hpp:248
const double * envData() const
Definition: LibcintInterfacer.hpp:243
int numberOfBasisFunctions() const
Definition: LibcintInterfacer.hpp:253
Definition: BaseOneElectronIntegralBuffer.hpp:25
size_t findElementIndex(const std::vector< T > &vector, const T &value)
Definition: miscellaneous.hpp:44
std::function< int(double *, const int *, const int *, int, const int *, int, const double *)> Libcint1eFunction
Definition: LibcintInterfacer.hpp:65