39template <
typename Scalar>
43 double s_squared = -sz;
45 for (
size_t p = 0; p < K; p++) {
48 for (
size_t q = 0; q < K; q++) {
50 s_squared += (two_DMs.
alphaAlpha().
tensor()(p, p, q, q) + two_DMs.
betaBeta().
tensor()(p, p, q, q) - two_DMs.
alphaBeta().
tensor()(p, p, q, q) - two_DMs.
betaAlpha().
tensor()(p, p, q, q)) / 4;
66template <
typename Scalar>
const Mixed & betaAlpha() const
Definition: DoublySpinResolvedBase.hpp:112
const Mixed & alphaBeta() const
Definition: DoublySpinResolvedBase.hpp:102
const Pure & alphaAlpha() const
Definition: DoublySpinResolvedBase.hpp:92
const Pure & betaBeta() const
Definition: DoublySpinResolvedBase.hpp:122
const SquareRankFourTensor< Scalar > & tensor() const
Definition: MixedSpinResolved2DMComponent.hpp:79
size_t numberOfOrbitals() const
Definition: Simple1DM.hpp:111
const SquareMatrix< Scalar > & matrix() const
Definition: Simple1DM.hpp:96
const SquareRankFourTensor< Scalar > & tensor() const
Definition: Simple2DM.hpp:98
Definition: SpinResolved1DM.hpp:44
SpinDensity1DM< Scalar > spinDensity() const
Definition: SpinResolved1DM.hpp:123
Definition: SpinResolved2DM.hpp:44
const Of & beta() const
Definition: SpinResolvedBase.hpp:140
const Of & alpha() const
Definition: SpinResolvedBase.hpp:130
Definition: BaseOneElectronIntegralBuffer.hpp:25
double calculateSpinSquared(const SpinResolved1DM< Scalar > &one_DMs, const SpinResolved2DM< Scalar > &two_DMs)
Definition: expectation_values.hpp:40
double calculateSpinZ(const SpinResolved1DM< Scalar > &one_DMs)
Definition: expectation_values.hpp:67