11 #ifndef OBSERVABLE_PARITYOPERATOR_HPP
12 #define OBSERVABLE_PARITYOPERATOR_HPP
31 template <
template <
typename>
class T1,
typename T2>
60 arma::SpMat<T2> mu = arma::eye<arma::SpMat<T2>>(
L,
L);
68 std::cout <<
"parity pre-process..." << std::endl;
69 matrixElements.diag() = arma::Col<T2>(matrixElements.diag()).transform([](T2 val) {
return std::pow(-1, val); });
Observable parent class.
Definition: Observable.hpp:75
implementation of the ParityOperator
Definition: ParityOperator.hpp:32
interface for Observable class
Definition: Observable.hpp:29
static void Preprocessing(T1< T2 > &matrixElements)
Definition: ParityOperator.hpp:66
void FillParameters() override
Filling the Parameters.
Definition: ParityOperator.hpp:58
Parameters< T2 > parameters
parameters for Observable
Definition: Observable.hpp:85
int L
Definition: ParityOperator.hpp:51
Interface and class parent for Observables.
Operator< T1, T2 > _operator
container for matrixElements
Definition: Observable.hpp:81
void PreprocessingVirtual(T1< T2 > &matrixElements) override
virtual link for static Postprocessing
Definition: ParityOperator.hpp:65
void SelectTerms()
Definition: ParityOperator.hpp:53