Xped
|
#include <SU2.hpp>
Public Types | |
typedef Scalar_ | Scalar |
typedef SymBase< SU2< Kind, Scalar > > | Base |
typedef qarray< Nq > | qType |
Public Types inherited from Xped::Sym::SymBase< Derived > | |
typedef SymTraits< Derived >::qType | qType |
typedef SymTraits< Derived >::Scalar | Scalar |
Public Member Functions | |
SU2 () | |
Static Public Member Functions | |
static constexpr bool | IS_CHARGE_SU2 () |
static constexpr bool | IS_SPIN_SU2 () |
static constexpr bool | IS_SPIN_U1 () |
static constexpr bool | NO_SPIN_SYM () |
static constexpr bool | NO_CHARGE_SYM () |
static std::string | name () |
static constexpr std::array< KIND, Nq > | kind () |
static constexpr qType | qvacuum () |
static constexpr std::array< qType, 1 > | lowest_qs () |
static qType | conj (const qType &q) |
static int | degeneracy (const qType &q) |
static qType | random_q () |
static std::vector< qType > | basis_combine (const qType &ql, const qType &qr) |
static std::size_t | multiplicity (const qType &q1, const qType &q2, const qType &q3) |
static bool | triangle (const qType &q1, const qType &q2, const qType &q3) |
static Scalar | coeff_dot (const qType &q1) |
static Scalar | coeff_twist (const qType &q) |
static Scalar | coeff_FS (const qType &q1) |
template<typename PlainLib > | |
static PlainLib::template TType< Scalar_, 2 > | one_j_tensor (const qType &q1, const mpi::XpedWorld &world=mpi::getUniverse()) |
static Scalar | coeff_rightOrtho (const qType &q1, const qType &q2) |
static Scalar | coeff_3j (const qType &q1, const qType &q2, const qType &q3, int q1_z, int q2_z, int q3_z) |
static Scalar | coeff_turn (const qType &ql, const qType &qr, const qType &qf) |
template<typename PlainLib > | |
static PlainLib::template TType< Scalar_, 3 > | CGC (const qType &q1, const qType &q2, const qType &q3, const std::size_t, const mpi::XpedWorld &world=mpi::getUniverse()) |
static Scalar | coeff_6j (const qType &q1, const qType &q2, const qType &q3, const qType &q4, const qType &q5, const qType &q6) |
static Scalar | coeff_9j (const qType &q1, const qType &q2, const qType &q3, const qType &q4, const qType &q5, const qType &q6, const qType &q7, const qType &q8, const qType &q9) |
static Scalar | coeff_recouple (const qType &q1, const qType &q2, const qType &q3, const qType &Q, const qType &Q12, const qType &Q23) |
static Scalar | coeff_swap (const qType &ql, const qType &qr, const qType &qf) |
Static Public Member Functions inherited from Xped::Sym::SymBase< Derived > | |
static std::vector< qType > | reduceSilent (const qType &ql, const qType &qr) |
static std::vector< qType > | reduceSilent (const std::vector< qType > &ql, const qType &qr) |
static std::set< qType > | reduceSilent (const std::vector< qType > &ql, const std::vector< qType > &qr) |
static std::vector< qType > | reduceSilent (const qType &ql, const qType &qm, const qType &qr) |
static std::set< qType > | reduceSilent (const std::set< qType > &ql, const std::vector< qType > &qr) |
static std::set< qType > | reduceSilent (const std::unordered_set< qType > &ql, const std::vector< qType > &qr) |
static Scalar | coeff_FS (const qType &q) |
static Scalar | coeff_turn (const qType &ql, const qType &qr, const qType &qf) |
template<std::size_t M> | |
static bool | compare (const std::array< qType, M > &q1, const std::array< qType, M > &q2) |
static bool | compare (const qType &q1, const qType &q2) |
static bool | triangle (const qType &q1, const qType &q2, const qType &q3) |
Static Public Attributes | |
static constexpr std::size_t | Nq = 1 |
static constexpr std::array< bool, Nq > | HAS_MULTIPLICITIES = {false} |
static constexpr std::array< bool, Nq > | NON_ABELIAN = {true} |
static constexpr std::array< bool, Nq > | ABELIAN = {false} |
static constexpr std::array< bool, Nq > | IS_TRIVIAL = {false} |
static constexpr std::array< bool, Nq > | IS_MODULAR = {false} |
static constexpr std::array< bool, Nq > | IS_FERMIONIC = {(Kind::name == KIND::FT)} |
static constexpr std::array< bool, Nq > | IS_BOSONIC = {(Kind::name == KIND::T)} |
static constexpr std::array< bool, Nq > | IS_SPIN = {(Kind::name == KIND::S)} |
static constexpr std::array< int, Nq > | MOD_N = {1} |
static constexpr bool | ANY_HAS_MULTIPLICITIES = HAS_MULTIPLICITIES[0] |
static constexpr bool | ANY_NON_ABELIAN = NON_ABELIAN[0] |
static constexpr bool | ANY_ABELIAN = ABELIAN[0] |
static constexpr bool | ANY_IS_TRIVIAL = IS_TRIVIAL[0] |
static constexpr bool | ANY_IS_MODULAR = IS_MODULAR[0] |
static constexpr bool | ANY_IS_FERMIONIC = IS_FERMIONIC[0] |
static constexpr bool | ANY_IS_BOSONIC = IS_BOSONIC[0] |
static constexpr bool | ANY_IS_SPIN = IS_SPIN[0] |
static constexpr bool | ALL_HAS_MULTIPLICITIES = HAS_MULTIPLICITIES[0] |
static constexpr bool | ALL_NON_ABELIAN = NON_ABELIAN[0] |
static constexpr bool | ALL_ABELIAN = ABELIAN[0] |
static constexpr bool | ALL_IS_TRIVIAL = IS_TRIVIAL[0] |
static constexpr bool | ALL_IS_MODULAR = IS_MODULAR[0] |
static constexpr bool | ALL_IS_FERMIONIC = IS_FERMIONIC[0] |
static constexpr bool | ALL_IS_BOSONIC = IS_BOSONIC[0] |
static constexpr bool | ALL_IS_SPIN = IS_SPIN[0] |
Class for handling a SU(2) symmetry of a Hamiltonian without explicitly store the Clebsch-Gordon coefficients but with computing \((3n)j\)-symbols.
\describe_Scalar
typedef SymBase<SU2<Kind, Scalar> > Xped::Sym::SU2< Kind, Scalar_ >::Base |
typedef qarray<Nq> Xped::Sym::SU2< Kind, Scalar_ >::qType |
typedef Scalar_ Xped::Sym::SU2< Kind, Scalar_ >::Scalar |
|
inline |
|
static |
Calculate the irreps of the tensor product of ql
and qr
.
|
static |
|
static |
|
static |
|
static |
|
static |
Various coeffecients, all resulting from contractions or traces of the Clebsch-Gordon coefficients.
|
static |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestatic |
|
inlinestatic |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
static |
|
inlinestaticconstexpr |
|
static |
|
static |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |