pomerol  2.1
Namespaces | Functions
Operator expressions

Namespaces

 Pomerol::Operators
 Expressions of quantum-mechanical operators.
 

Functions

template<typename... IndexTypes>
expression< double, IndexTypes... > Pomerol::Operators::N (std::vector< std::tuple< IndexTypes... >> const &Indices)
 
template<typename... IndexTypes>
expression< double, IndexTypes... > Pomerol::Operators::Sz (std::vector< std::tuple< IndexTypes... >> const &SpinUpIndices, std::vector< std::tuple< IndexTypes... >> const &SpinDownIndices)
 

Detailed Description

Function Documentation

◆ N()

template<typename... IndexTypes>
expression<double, IndexTypes...> Pomerol::Operators::N ( std::vector< std::tuple< IndexTypes... >> const &  Indices)

Construct a real-valued expression for the full occupation number operator

\[ \hat N = \sum_{i\in\{I\}} \hat n_i. \]

Template Parameters
IndexTypesTypes of indices of creation/annihilation operators in the resulting expression.
Parameters
[in]IndicesList of index tuples corresponding to the selected degrees of freedom \(\{I\}\).
Returns
Constructed expression.

Definition at line 128 of file Operators.hpp.

◆ Sz()

template<typename... IndexTypes>
expression<double, IndexTypes...> Pomerol::Operators::Sz ( std::vector< std::tuple< IndexTypes... >> const &  SpinUpIndices,
std::vector< std::tuple< IndexTypes... >> const &  SpinDownIndices 
)

Construct a real-valued expression for the full spin z-projection operator

\[ \hat S_z = \frac{1}{2}\sum_{i\in\{I_\uparrow\}}\hat n_i - \frac{1}{2}\sum_{i\in\{I_\downarrow\}}\hat n_i. \]

Template Parameters
IndexTypesTypes of indices of creation/annihilation operators in the resulting expression.
Parameters
[in]SpinUpIndicesList of index tuples corresponding to the spin-up degrees of freedom \(\{I_\uparrow\}\).
[in]SpinDownIndicesList of index tuples corresponding to the spin-down degrees of freedom \(\{I_\downarrow\}\).
Returns
Constructed expression.

Definition at line 146 of file Operators.hpp.