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: