VMPS++
Loading...
Searching...
No Matches
Basis Class Reference

Detailed Description

Class for a plain basis without symmetries. A basis with symmetries is a collection of plain bases for each Symmetry entry

Definition at line 11 of file Basis.h.

#include <Basis.h>

Classes

struct  fuseData
 

Public Member Functions

 Basis ()
 
 Basis (std::vector< std::string > idents, Eigen::Index dim)
 
 Basis (Eigen::Index dim)
 
Eigen::Index size () const
 
void push_back (const std::string &ident)
 
void push_back (const std::vector< std::string > &idents)
 
bool find (std::string ident_in)
 
Eigen::Index location (std::string ident_in)
 
Basis add (const Basis &other) const
 
Basis combine (const Basis &other) const
 
std::string print () const
 
std::vector< std::tuple< std::string, Eigen::Index > >::iterator begin ()
 
std::vector< std::tuple< std::string, Eigen::Index > >::iterator end ()
 
std::vector< std::tuple< std::string, Eigen::Index > >::const_iterator cbegin () const
 
std::vector< std::tuple< std::string, Eigen::Index > >::const_iterator cend () const
 
bool operator== (const Basis &other) const
 

Public Attributes

std::vector< std::tuple< std::string, Eigen::Index > > data_
 
Eigen::Index curr_dim = 0
 
Basis::fuseData history
 

Friends

ostream & operator<< (ostream &os, const Basis &basis)
 

Constructor & Destructor Documentation

◆ Basis() [1/3]

Basis::Basis ( )
inline

Does nothing.

Definition at line 15 of file Basis.h.

◆ Basis() [2/3]

Basis::Basis ( std::vector< std::string >  idents,
Eigen::Index  dim 
)
inline

Definition at line 17 of file Basis.h.

◆ Basis() [3/3]

Basis::Basis ( Eigen::Index  dim)
inline

Definition at line 27 of file Basis.h.

Member Function Documentation

◆ add()

Basis Basis::add ( const Basis other) const

Adds to bases together.

Definition at line 94 of file Basis.h.

◆ begin()

std::vector< std::tuple< std::string, Eigen::Index > >::iterator Basis::begin ( )
inline

Definition at line 68 of file Basis.h.

◆ cbegin()

std::vector< std::tuple< std::string, Eigen::Index > >::const_iterator Basis::cbegin ( ) const
inline

Definition at line 71 of file Basis.h.

◆ cend()

std::vector< std::tuple< std::string, Eigen::Index > >::const_iterator Basis::cend ( ) const
inline

Definition at line 72 of file Basis.h.

◆ combine()

Basis Basis::combine ( const Basis other) const

Returns the tensor product basis. This function also saves the history of the combination process for later use. See leftAmount() and rightAmount().

Definition at line 110 of file Basis.h.

◆ end()

std::vector< std::tuple< std::string, Eigen::Index > >::iterator Basis::end ( )
inline

Definition at line 69 of file Basis.h.

◆ find()

bool Basis::find ( std::string  ident_in)
inline

Definition at line 47 of file Basis.h.

◆ location()

Eigen::Index Basis::location ( std::string  ident_in)
inline

Definition at line 51 of file Basis.h.

◆ operator==()

bool Basis::operator== ( const Basis other) const
inline

Definition at line 74 of file Basis.h.

◆ print()

std::string Basis::print ( ) const

Prints the basis.

Definition at line 126 of file Basis.h.

◆ push_back() [1/2]

void Basis::push_back ( const std::string &  ident)
inline

Definition at line 34 of file Basis.h.

◆ push_back() [2/2]

void Basis::push_back ( const std::vector< std::string > &  idents)
inline

Definition at line 39 of file Basis.h.

◆ size()

Eigen::Index Basis::size ( ) const
inline

Definition at line 32 of file Basis.h.

Friends And Related Function Documentation

◆ operator<<

ostream & operator<< ( ostream &  os,
const Basis basis 
)
friend

Member Data Documentation

◆ curr_dim

Eigen::Index Basis::curr_dim = 0

Definition at line 90 of file Basis.h.

◆ data_

std::vector<std::tuple<std::string,Eigen::Index> > Basis::data_

Definition at line 89 of file Basis.h.

◆ history

Basis::fuseData Basis::history

Definition at line 91 of file Basis.h.


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