SyTen

◆ parseSector()

Sector syten::parseSector ( Sector const &  systemReps,
std::string  desc 
)

Parse a string defining a Sector into a Sector.

Parameters
systemRepsvector of the irreps of the corresponding group
desclabels for all irreps. The special string "vac" describes the vacuum sector.
Returns
a Sector with labels as defined by desc belonging to groups defined by systemReps.
Example\n
If the system has symmetry groups \( U(1)_\mathrm{N} \times SU(3)_\mathrm{T} \times SU(2)_\mathrm{S} \), the vector systemReps should contain three irreps, the first with physical description "N", the second with "T" and the third with "S", groups being Group::U1, Group::SU3 and Group::SU2. The first label in desc would then be interpreted as the label of the \( U(1)_\mathrm{N} \) irrep, the second and third as the two labels of the \( SU(3) \) irrep and the fourth as the label of the \( SU(2) \) group. For \( U(1) \), we can directly construct the irrep as all irreps are essentially trivial. For \( SU(N \neq 1) \), we consecutively construct the first \( x \) irreps using genRepsSU2() and genRepsSU3() for increasing values of \( x \) until we find the corresponding label. Suggested format for the description string is (with N symmetries each of degree Di) is s1_1,…,s1_D1;…;sN_1,…,sN_DN but the simple numbers separated by spaces is perfectly fine, too.

References make_vacuum(), and SYTEN_ASSERT_MSG.

Referenced by do_apply_op(), syten::T3N::RandomState::generateCompleteState(), syten::MPS::RandomState::generateSampledState(), syten::Pyten::init_mp_proj_pur(), syten::Pyten::init_mps_random(), and syten::Pyten::init_t3n_proj_pur().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: