GraceQ/MPS2
A high-performance matrix product state algorithms library based on GraceQ/tensor
Public Types | Public Member Functions | Public Attributes | List of all members
gqmps2::SiteVec< TenElemT, QNT > Class Template Reference

Vector of the local Hilbert spaces of the system. More...

#include <site_vec.h>

Public Types

using TenT = GQTensor< TenElemT, QNT >
 

Public Member Functions

 SiteVec (const size_t N, const Index< QNT > &local_hilbert_space)
 Create a system with N identical sites. More...
 
 SiteVec (const IndexVec< QNT > &local_hilbert_spaces)
 Create a sites vector using a vector of arbitrary Indexes. More...
 
 SiteVec (const SiteVec &site_vec)
 The copy constructor. More...
 
SiteVec< TenElemT, QNT > & operator= (const SiteVec &rhs)
 Copy a SiteVec. More...
 

Public Attributes

size_t size
 The size of the SiteVec, i.e. the size of the system.
 
IndexVec< QNT > sites
 Local Hilbert spaces represented by a vector of Index with OUT direction.
 
std::vector< TenT > id_ops
 Identity operators on each site.
 

Detailed Description

template<typename TenElemT, typename QNT>
class gqmps2::SiteVec< TenElemT, QNT >

Vector of the local Hilbert spaces of the system.

Template Parameters
TenTThe type of tensor used in the system.
Since
version 0.2.0

Constructor & Destructor Documentation

◆ SiteVec() [1/3]

template<typename TenElemT, typename QNT>
gqmps2::SiteVec< TenElemT, QNT >::SiteVec ( const size_t  N,
const Index< QNT > &  local_hilbert_space 
)
inline

Create a system with N identical sites.

Parameters
NTotal number of sites (> 0) of the system.
local_hilbert_spaceLocal (on-site) Hilbert space represented by a Index.
Since
version 0.2.0

◆ SiteVec() [2/3]

template<typename TenElemT, typename QNT>
gqmps2::SiteVec< TenElemT, QNT >::SiteVec ( const IndexVec< QNT > &  local_hilbert_spaces)
inline

Create a sites vector using a vector of arbitrary Indexes.

Parameters
local_hilbert_spacesLocal (on-site) Hilbert spaces on the each site.
Since
version 0.2.0

◆ SiteVec() [3/3]

template<typename TenElemT, typename QNT>
gqmps2::SiteVec< TenElemT, QNT >::SiteVec ( const SiteVec< TenElemT, QNT > &  site_vec)
inline

The copy constructor.

Parameters
site_vecA SiteVec instance.
Since
version 0.2.0

Member Function Documentation

◆ operator=()

template<typename TenElemT, typename QNT>
SiteVec<TenElemT, QNT>& gqmps2::SiteVec< TenElemT, QNT >::operator= ( const SiteVec< TenElemT, QNT > &  rhs)
inline

Copy a SiteVec.

Parameters
rhsA SiteVec instance.
Since
version 0.2.0

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