VMPS++
Loading...
Searching...
No Matches
SiteOperator< Symmetry, Scalar_ > Struct Template Reference

Detailed Description

template<typename Symmetry, typename Scalar_>
struct SiteOperator< Symmetry, Scalar_ >

Just a struct to add a quantum number to a matrix which forms a plain SiteOperator. For a SiteOperator blocked into different symmetry sectors, see SiteOperatorQ.

Template Parameters
Symmetry: A class providing all relevant functions and infos that are determined by the Symmetry. Click here for more information.
Scalar: double or complex<double>

Definition at line 31 of file SiteOperator.h.

#include <SiteOperator.h>

Public Types

typedef Scalar_ Scalar
 

Public Member Functions

 SiteOperator ()
 
 SiteOperator (const Eigen::SparseMatrix< Scalar_ > &data_input, const typename Symmetry::qType &Q_input, std::string label_input="")
 
void setZero ()
 
template<typename OtherScalar >
SiteOperator< Symmetry, OtherScalar > cast () const
 
SiteOperator< Symmetry, Scalar_ > & operator+= (const SiteOperator< Symmetry, Scalar_ > &Op)
 
SiteOperator< Symmetry, Scalar_ > & operator-= (const SiteOperator< Symmetry, Scalar_ > &Op)
 
SiteOperatorQ< Symmetry, Eigen::Matrix< Scalar_, Eigen::Dynamic, Eigen::Dynamic > > structured ()
 
void setIdentity ()
 

Public Attributes

Symmetry::qType Q = Symmetry::qvacuum()
 
Eigen::SparseMatrix< Scalar_ > data
 
std::string label = ""
 

Member Typedef Documentation

◆ Scalar

template<typename Symmetry , typename Scalar_ >
typedef Scalar_ SiteOperator< Symmetry, Scalar_ >::Scalar

Definition at line 33 of file SiteOperator.h.

Constructor & Destructor Documentation

◆ SiteOperator() [1/2]

template<typename Symmetry , typename Scalar_ >
SiteOperator< Symmetry, Scalar_ >::SiteOperator ( )
inline

Definition at line 35 of file SiteOperator.h.

◆ SiteOperator() [2/2]

template<typename Symmetry , typename Scalar_ >
SiteOperator< Symmetry, Scalar_ >::SiteOperator ( const Eigen::SparseMatrix< Scalar_ > &  data_input,
const typename Symmetry::qType &  Q_input,
std::string  label_input = "" 
)
inline

Definition at line 36 of file SiteOperator.h.

Member Function Documentation

◆ cast()

template<typename Symmetry , typename Scalar_ >
template<typename OtherScalar >
SiteOperator< Symmetry, OtherScalar > SiteOperator< Symmetry, Scalar_ >::cast ( ) const
inline

Definition at line 50 of file SiteOperator.h.

◆ operator+=()

template<typename Symmetry , typename Scalar_ >
SiteOperator< Symmetry, Scalar_ > & SiteOperator< Symmetry, Scalar_ >::operator+= ( const SiteOperator< Symmetry, Scalar_ > &  Op)

Definition at line 85 of file SiteOperator.h.

◆ operator-=()

template<typename Symmetry , typename Scalar_ >
SiteOperator< Symmetry, Scalar_ > & SiteOperator< Symmetry, Scalar_ >::operator-= ( const SiteOperator< Symmetry, Scalar_ > &  Op)

Definition at line 92 of file SiteOperator.h.

◆ setIdentity()

template<typename Symmetry , typename Scalar_ >
void SiteOperator< Symmetry, Scalar_ >::setIdentity

Definition at line 189 of file SiteOperator.h.

◆ setZero()

template<typename Symmetry , typename Scalar_ >
void SiteOperator< Symmetry, Scalar_ >::setZero ( )
inline

Definition at line 43 of file SiteOperator.h.

◆ structured()

template<typename Symmetry , typename Scalar_ >
SiteOperatorQ< Symmetry, Eigen::Matrix< Scalar_, Eigen::Dynamic, Eigen::Dynamic > > SiteOperator< Symmetry, Scalar_ >::structured

Returns a trivial SiteOperatorQ for an object with has essentialy no symmetry.

Definition at line 75 of file SiteOperator.h.

Member Data Documentation

◆ data

template<typename Symmetry , typename Scalar_ >
Eigen::SparseMatrix<Scalar_> SiteOperator< Symmetry, Scalar_ >::data

Definition at line 41 of file SiteOperator.h.

◆ label

template<typename Symmetry , typename Scalar_ >
std::string SiteOperator< Symmetry, Scalar_ >::label = ""

Definition at line 71 of file SiteOperator.h.

◆ Q

template<typename Symmetry , typename Scalar_ >
Symmetry::qType SiteOperator< Symmetry, Scalar_ >::Q = Symmetry::qvacuum()

Definition at line 40 of file SiteOperator.h.


The documentation for this struct was generated from the following file: