41template <
typename _Scalar,
typename _Vectorizer>
87template <
typename Scalar>
91template <
typename Scalar>
95template <
typename Scalar>
99template <
typename Scalar,
size_t N>
113template <
typename Scalar,
typename Vectorizer>
143template <
typename Scalar,
typename Vectorizer>
158template <
typename Scalar,
typename Vectorizer>
175template <
typename _Scalar>
284 result.twoElectron().transform(T);
314 result.twoElectron().rotate(jacobi_rotation);
338 return this->
oneElectron().calculateExpectationValue(D)() + this->
twoElectron().calculateExpectationValue(d)();
352template <
typename Scalar>
369template <
typename Scalar>
384template <
typename Scalar>
397 const auto dim = lhs.
parameters().dimension();
399 for (
size_t p = 0; p < dim; p++) {
400 for (
size_t q = 0; q < dim; q++) {
401 for (
size_t r = 0; r < dim; r++) {
402 for (
size_t s = 0; s < dim; s++) {
403 T(p, q, r, s) = 2.0 * L(p, q) * R(r, s);
Definition: GSQOneElectronOperator.hpp:42
Definition: GSQTwoElectronOperator.hpp:43
_Scalar Scalar
Definition: GSQTwoElectronOperator.hpp:46
_Vectorizer Vectorizer
Definition: GSQTwoElectronOperator.hpp:49
static GSQTwoElectronOperator< Scalar, Vectorizer > FromUnrestrictedComponent(const PureUSQTwoElectronOperatorComponent< Scalar, Vectorizer > &g_component)
Definition: GSQTwoElectronOperator.hpp:73
Definition: spinor_tags.hpp:47
Definition: JacobiRotatable.hpp:50
Definition: JacobiRotation.hpp:33
Definition: PureUSQTwoElectronOperatorComponent.hpp:39
const MatrixRepresentation & parameters(const Indices &... indices) const
Definition: SQOperatorStorageBase.hpp:236
const std::vector< MatrixRepresentation > & allParameters() const
Definition: SQOperatorStorageBase.hpp:221
const Vectorizer & vectorizer() const
Definition: SQOperatorStorageBase.hpp:282
StorageArray< MatrixRepresentation, Vectorizer > array
Definition: SQOperatorStorageBase.hpp:68
Definition: GSQTwoElectronOperator.hpp:179
ScalarGSQOneElectronOperatorProduct & operator*=(const Scalar &a) override
Definition: GSQTwoElectronOperator.hpp:257
const ScalarGSQOneElectronOperator< Scalar > & oneElectron() const
Definition: GSQTwoElectronOperator.hpp:219
Self transformed(const GTransformation< Scalar > &T) const override
Definition: GSQTwoElectronOperator.hpp:278
Scalar calculateExpectationValue(const G1DM< Scalar > &D, const G2DM< Scalar > &d) const
Definition: GSQTwoElectronOperator.hpp:335
ScalarGSQOneElectronOperatorProduct & operator+=(const ScalarGSQOneElectronOperatorProduct &rhs) override
Definition: GSQTwoElectronOperator.hpp:244
_Scalar Scalar
Definition: GSQTwoElectronOperator.hpp:182
Self rotated(const JacobiRotation &jacobi_rotation) const override
Definition: GSQTwoElectronOperator.hpp:308
ScalarGSQTwoElectronOperator< Scalar > & twoElectron()
Definition: GSQTwoElectronOperator.hpp:234
ScalarGSQOneElectronOperator< Scalar > & oneElectron()
Definition: GSQTwoElectronOperator.hpp:229
ScalarGSQOneElectronOperatorProduct< Scalar > Self
Definition: GSQTwoElectronOperator.hpp:185
const ScalarGSQTwoElectronOperator< Scalar > & twoElectron() const
Definition: GSQTwoElectronOperator.hpp:224
ScalarGSQOneElectronOperatorProduct(const ScalarGSQOneElectronOperator< Scalar > &o, const ScalarGSQTwoElectronOperator< Scalar > &t)
Definition: GSQTwoElectronOperator.hpp:207
Definition: SimpleSQTwoElectronOperator.hpp:46
Definition: SquareMatrix.hpp:39
Definition: SquareRankFourTensor.hpp:36
static Self Zero(const size_t dim)
Definition: SquareRankFourTensor.hpp:147
Definition: StorageArray.hpp:38
Definition: VectorSpaceArithmetic.hpp:35
Definition: BaseOneElectronIntegralBuffer.hpp:25
FunctionProduct< F1, F2 > operator*(const F1 &lhs, const F2 &rhs)
Definition: Function.hpp:208
Definition: JacobiRotatable.hpp:37
Definition: OperatorTraits.hpp:28