VMPS++
|
Classes | |
struct | AltSpinSU2 |
struct | ChargeDn |
struct | ChargeSU2 |
struct | ChargeU1 |
struct | ChargeUp |
struct | ChargeZ2 |
struct | Momentum |
class | S1xS2 |
struct | SpinSU2 |
struct | SpinU1 |
class | SU2 |
class | SUN |
class | U0 |
class | U1 |
class | ZN |
Enumerations | |
enum | KIND { S , Salt , T , N , M , Nup , Ndn , Nparity , K , S , Salt , T , N , M , Nup , Ndn , Nparity , K } |
enum | KIND { S , Salt , T , N , M , Nup , Ndn , Nparity , K , S , Salt , T , N , M , Nup , Ndn , Nparity , K } |
Functions | |
template<typename Symmetry > | |
std::string | format (qarray< Symmetry::Nq > qnum) |
template<typename Scalar > | |
Scalar | phase (int q) |
template<typename Symmetry > | |
std::vector< std::pair< typename Symmetry::qType, typename Symmetry::qType > > | split (const typename Symmetry::qType Q, const std::vector< typename Symmetry::qType > &ql, const std::vector< typename Symmetry::qType > qr) |
template<typename Symmetry > | |
std::vector< std::pair< std::size_t, std::size_t > > | split (const typename Symmetry::qType Q, const std::vector< typename Symmetry::qType > &ql, const std::vector< typename Symmetry::qType > qr, bool INDEX) |
void | initialize (int maxJ=1, std::string f_3j="", std::string f_6j="", std::string f_9j="") |
void | finalize (bool PRINT_STATS=false) |
template<std::size_t N, typename Scalar > | |
bool | operator== (const typename SUN< N, Scalar >::qType &lhs, const typename SUN< N, Scalar >::qType &rhs) |
enum Sym::KIND |
Enumerator | |
---|---|
S | |
Salt | |
T | |
N | |
M | |
Nup | |
Ndn | |
Nparity | |
K | |
S | |
Salt | |
T | |
N | |
M | |
Nup | |
Ndn | |
Nparity | |
K |
Definition at line 110 of file DmrgTypedefs.h.
enum Sym::KIND |
Enumerator | |
---|---|
S | |
Salt | |
T | |
N | |
M | |
Nup | |
Ndn | |
Nparity | |
K | |
S | |
Salt | |
T | |
N | |
M | |
Nup | |
Ndn | |
Nparity | |
K |
Definition at line 13 of file functions.h.
void Sym::finalize | ( | bool | PRINT_STATS = false | ) |
Definition at line 127 of file functions.h.
std::string Sym::format | ( | qarray< Symmetry::Nq > | qnum | ) |
Returns a formatted string for qnum
.
Symmetry | : A class providing all relevant functions and infos that are determined by the Symmetry. Click here for more information. |
qnum | : quantum number for formatting. |
Definition at line 23 of file functions.h.
void Sym::initialize | ( | int | maxJ = 1 , |
std::string | f_3j = "" , |
||
std::string | f_6j = "" , |
||
std::string | f_9j = "" |
||
) |
This routine initializes the relevant objects for the calculation of -symbols. The specific code varies from library to library:
maxJ
is the maximum angular momentum. It should be chosen high enough. The required memory for the prime factorization table is negligible.maxJ
). Additionaly the filenames to the precalculated symbols are required. f_3j
for -symbol, f_6j
for -symbol and f_9j
for -symbol. For the creation of the precomputed values see manual http://fy.chalmers.se/subatom/fastwigxj/README. The precomputed symbols (especially 9j) can be quite large in memory. Therefore, this library should only be used when performance gains are clearly present.Definition at line 110 of file functions.h.
Scalar Sym::phase | ( | int | q | ) |
Definition at line 51 of file functions.h.
std::vector< std::pair< typename Symmetry::qType, typename Symmetry::qType > > Sym::split | ( | const typename Symmetry::qType | Q, |
const std::vector< typename Symmetry::qType > & | ql, | ||
const std::vector< typename Symmetry::qType > | qr | ||
) |
Splits the quantum number Q
into pairs q1,q2 with . q1 and q2 can take all values from the given parameters ql
and qr
, respectively.
ql
and qr
, there exist infinity solutions. Definition at line 64 of file functions.h.
std::vector< std::pair< std::size_t, std::size_t > > Sym::split | ( | const typename Symmetry::qType | Q, |
const std::vector< typename Symmetry::qType > & | ql, | ||
const std::vector< typename Symmetry::qType > | qr, | ||
bool | INDEX | ||
) |
Definition at line 80 of file functions.h.