VMPS++
Loading...
Searching...
No Matches
SpinlessFermionBase< Symmetry_ > Class Template Reference

Detailed Description

template<typename Symmetry_>
class SpinlessFermionBase< Symmetry_ >

Definition at line 30 of file SpinlessFermionBase.h.

#include <SpinlessFermionBase.h>

Inheritance diagram for SpinlessFermionBase< Symmetry_ >:

Public Types

typedef Symmetry_ Symmetry
 
typedef SiteOperatorQ< Symmetry, Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > > OperatorType
 
typedef Symmetry::qType qType
 

Public Member Functions

 SpinlessFermionBase ()
 
 SpinlessFermionBase (size_t L_input)
 
size_t dim () const
 
size_t orbitals () const
 
ArrayXd ZeroField () const
 
ArrayXXd ZeroHopping () const
 
Qbasis< Symmetryget_basis () const
 
OperatorType c (std::size_t orbital=0) const
 
OperatorType cdag (std::size_t orbital=0) const
 
OperatorType n (std::size_t orbital=0) const
 
OperatorType nph (std::size_t orbital=0) const
 
OperatorType sign (std::size_t orb1=0, std::size_t orb2=0) const
 
OperatorType Id (std::size_t orbital=0) const
 
- Public Member Functions inherited from SpinlessFermionSite< Symmetry_ >
 SpinlessFermionSite ()
 
OperatorType Id_1s () const
 
OperatorType F_1s () const
 
OperatorType c_1s () const
 
OperatorType cdag_1s () const
 
OperatorType n_1s () const
 
OperatorType nph_1s () const
 
Qbasis< Symmetrybasis_1s () const
 

Private Types

typedef Eigen::Index Index
 
typedef double Scalar
 

Private Member Functions

OperatorType make_operator (const OperatorType &Op_1s, size_t orbital=0, bool FERMIONIC=false, string label="") const
 

Private Attributes

size_t N_orbitals
 
size_t N_states
 
Qbasis< SymmetryTensorBasis
 
OperatorType Id_vac
 
OperatorType Zero_vac
 

Additional Inherited Members

- Protected Member Functions inherited from SpinlessFermionSite< Symmetry_ >
void fill_basis ()
 
void fill_SiteOps ()
 
Symmetry_::qType getQ (int Delta) const
 
- Protected Attributes inherited from SpinlessFermionSite< Symmetry_ >
Qbasis< Symmetrybasis_1s_
 
OperatorType Id_1s_
 
OperatorType F_1s_
 
OperatorType c_1s_
 
OperatorType cdag_1s_
 
OperatorType n_1s_
 
OperatorType nph_1s_
 

Member Typedef Documentation

◆ Index

template<typename Symmetry_ >
typedef Eigen::Index SpinlessFermionBase< Symmetry_ >::Index
private

Definition at line 32 of file SpinlessFermionBase.h.

◆ OperatorType

template<typename Symmetry_ >
typedef SiteOperatorQ<Symmetry,Eigen::Matrix<Scalar,Eigen::Dynamic,Eigen::Dynamic> > SpinlessFermionBase< Symmetry_ >::OperatorType

Definition at line 38 of file SpinlessFermionBase.h.

◆ qType

template<typename Symmetry_ >
typedef Symmetry::qType SpinlessFermionBase< Symmetry_ >::qType

Definition at line 39 of file SpinlessFermionBase.h.

◆ Scalar

template<typename Symmetry_ >
typedef double SpinlessFermionBase< Symmetry_ >::Scalar
private

Definition at line 33 of file SpinlessFermionBase.h.

◆ Symmetry

template<typename Symmetry_ >
typedef Symmetry_ SpinlessFermionBase< Symmetry_ >::Symmetry

Definition at line 37 of file SpinlessFermionBase.h.

Constructor & Destructor Documentation

◆ SpinlessFermionBase() [1/2]

template<typename Symmetry_ >
SpinlessFermionBase< Symmetry_ >::SpinlessFermionBase ( )
inline

Definition at line 41 of file SpinlessFermionBase.h.

◆ SpinlessFermionBase() [2/2]

template<typename Symmetry_ >
SpinlessFermionBase< Symmetry_ >::SpinlessFermionBase ( size_t  L_input)
Parameters
L_input: the amount of orbitals

Definition at line 99 of file SpinlessFermionBase.h.

Member Function Documentation

◆ c()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::c ( std::size_t  orbital = 0) const

Definition at line 163 of file SpinlessFermionBase.h.

◆ cdag()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::cdag ( std::size_t  orbital = 0) const

Definition at line 171 of file SpinlessFermionBase.h.

◆ dim()

template<typename Symmetry_ >
size_t SpinlessFermionBase< Symmetry_ >::dim ( ) const
inline

number of states = $2^L$

Definition at line 49 of file SpinlessFermionBase.h.

◆ get_basis()

template<typename Symmetry_ >
Qbasis< Symmetry > SpinlessFermionBase< Symmetry_ >::get_basis ( ) const
inline

Returns the basis.

Definition at line 73 of file SpinlessFermionBase.h.

◆ Id()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::Id ( std::size_t  orbital = 0) const

Definition at line 219 of file SpinlessFermionBase.h.

◆ make_operator()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::make_operator ( const OperatorType Op_1s,
size_t  orbital = 0,
bool  FERMIONIC = false,
string  label = "" 
) const
private

Definition at line 132 of file SpinlessFermionBase.h.

◆ n()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::n ( std::size_t  orbital = 0) const

Definition at line 179 of file SpinlessFermionBase.h.

◆ nph()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::nph ( std::size_t  orbital = 0) const

Definition at line 187 of file SpinlessFermionBase.h.

◆ orbitals()

template<typename Symmetry_ >
size_t SpinlessFermionBase< Symmetry_ >::orbitals ( ) const
inline

number of orbitals

Definition at line 52 of file SpinlessFermionBase.h.

◆ sign()

template<typename Symmetry_ >
SiteOperatorQ< Symmetry_, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > > SpinlessFermionBase< Symmetry_ >::sign ( std::size_t  orb1 = 0,
std::size_t  orb2 = 0 
) const

Definition at line 195 of file SpinlessFermionBase.h.

◆ ZeroField()

template<typename Symmetry_ >
ArrayXd SpinlessFermionBase< Symmetry_ >::ZeroField ( ) const
inline

Returns an array of size dim() with zeros.

Definition at line 65 of file SpinlessFermionBase.h.

◆ ZeroHopping()

template<typename Symmetry_ >
ArrayXXd SpinlessFermionBase< Symmetry_ >::ZeroHopping ( ) const
inline

Returns an array of size dim()xdim() with zeros.

Definition at line 68 of file SpinlessFermionBase.h.

Member Data Documentation

◆ Id_vac

template<typename Symmetry_ >
OperatorType SpinlessFermionBase< Symmetry_ >::Id_vac
private

Definition at line 95 of file SpinlessFermionBase.h.

◆ N_orbitals

template<typename Symmetry_ >
size_t SpinlessFermionBase< Symmetry_ >::N_orbitals
private

Definition at line 79 of file SpinlessFermionBase.h.

◆ N_states

template<typename Symmetry_ >
size_t SpinlessFermionBase< Symmetry_ >::N_states
private

Definition at line 80 of file SpinlessFermionBase.h.

◆ TensorBasis

template<typename Symmetry_ >
Qbasis<Symmetry> SpinlessFermionBase< Symmetry_ >::TensorBasis
private

Returns the qarray for a given index of the basis

Parameters
index

Definition at line 90 of file SpinlessFermionBase.h.

◆ Zero_vac

template<typename Symmetry_ >
OperatorType SpinlessFermionBase< Symmetry_ >::Zero_vac
private

Definition at line 95 of file SpinlessFermionBase.h.


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