Combined Symmetry Sectors
High-level helpers to build configuration tables satisfying combined global, link, and optional additional constraints.
Combined symmetry-sector configuration builders.
This module combines global, link, and optional string/n-body constraints to construct symmetry-reduced configuration tables used by the Hamiltonian and observable builders.
- edlgt.symmetries.symmetry_sector.symmetry_sector_configs(loc_dims, glob_op_diags, glob_sectors, sym_type_flag, link_op_diags, link_sectors, pair_list, string_op_diags=None, string_sectors=None)[source]
Build configurations satisfying combined global and link symmetries.
- Parameters:
loc_dims (
numpy.ndarray) – Local Hilbert-space dimensions.glob_op_diags (
numpy.ndarray) – Site-resolved diagonals of global symmetry generators.glob_sectors (
numpy.ndarrayortyping.Sequence) – Target sector values for global symmetries.sym_type_flag (
str) – Global symmetry type (typically “U” or “Z”).link_op_diags (
numpy.ndarray) – Site-resolved diagonals of link symmetry generators.link_sectors (
numpy.ndarrayortyping.Sequence) – Target sector values for link symmetries.pair_list (
typing.Sequence) – Link pair definitions, grouped by lattice direction.string_op_diags (
numpy.ndarray, optional) – Site-resolved diagonals for additional string constraints.string_sectors (
numpy.ndarray, optional) – Target values for the string constraints.
- Returns:
Configurations satisfying all requested constraints.
- Return type:
- edlgt.symmetries.symmetry_sector.get_symmetry_sector_generators(op_list, action)[source]
Extract site-resolved diagonals of symmetry generators.
- Parameters:
op_list (
listornumpy.ndarray) – Operators grouped according to action. For “global”, “link”, and “nbody” it is a list of per-site operator stacks. For “bound” it is either a one-element list or a bare per-site stack of the single bound operator.action (
str) – One of “global”, “link”, “nbody”, or “bound”. The “bound” action collapses the leading “symmetry index” axis since only one bound operator is supported at a time.
- Returns:
Array of real diagonals formatted for the corresponding symmetry routines.
- Return type:
- edlgt.symmetries.symmetry_sector.get_link_sector_configs(loc_dims, link_op_diags, link_sectors, pair_list, nbody_op_diags=None, nbody_sectors=None, nbody_sites_list=None, nbody_sym_type='U')[source]
Build configurations satisfying link symmetries and optional n-body constraints.
- Parameters:
loc_dims (
numpy.ndarray) – Local Hilbert-space dimensions.link_op_diags (
numpy.ndarray) – Site-resolved diagonals of link symmetry generators.link_sectors (
numpy.ndarrayortyping.Sequence) – Target sector values for link symmetries.pair_list (
typing.Sequence) – Per-direction arrays of site-index pairs.nbody_op_diags (
numpy.ndarray, optional) – Site-resolved diagonals of additional n-body generators.nbody_sectors (
numpy.ndarrayortyping.Sequence, optional) – Target sector values for the n-body generators.nbody_sites_list (
typing.Sequence, optional) – Site-index lists for each n-body symmetry generator.nbody_sym_type (
strorNone, optional) – “U” or “Z” for additive/multiplicative n-body constraints.
- Returns:
Configurations satisfying the requested constraints.
- Return type: