GQCP
|
#include <JacobiRotatable.hpp>
Public Types | |
using | JacobiRotationType = typename JacobiRotatableTraits< T >::JacobiRotationType |
Public Member Functions | |
virtual T | rotated (const JacobiRotationType &jacobi_rotation) const =0 |
void | rotate (const JacobiRotationType &jacobi_rotation) |
An (abstract) interface for types that may be transformed from one orbital basis to another, using a Jacobi rotation.
T | The type that should be Jacobi-transformable. It is given as a template argument, enabling CRTP. |
using GQCP::JacobiRotatable< T >::JacobiRotationType = typename JacobiRotatableTraits<T>::JacobiRotationType |
|
inline |
In-place apply the Jacobi rotation.
jacobi_rotation | The Jacobi rotation. |
|
pure virtual |
Apply the Jacobi rotation and return the result.
jacobi_rotation | The Jacobi rotation. |
Implemented in GQCP::SimpleSpinorBasis< _ExpansionScalar, _FinalSpinorBasis >, GQCP::SimpleSpinorBasis< _ExpansionScalar, GSpinorBasis< _ExpansionScalar, _Shell > >, GQCP::SimpleSpinorBasis< _ExpansionScalar, RSpinOrbitalBasis< _ExpansionScalar, _Shell > >, GQCP::SimpleSpinorBasis< _ExpansionScalar, _DerivedSpinOrbitalBasis >, GQCP::SimpleSpinorBasis< _ExpansionScalar, USpinOrbitalBasisComponent< _ExpansionScalar, _Shell > >, GQCP::SQHamiltonian< _ScalarSQOneElectronOperator, _ScalarSQTwoElectronOperator >, GQCP::SQHamiltonian< Scalar >, and GQCP::SQHamiltonian< double >.