triqs.lattice.super_lattice.TBSuperLattice
- class triqs.lattice.super_lattice.TBSuperLattice(tb_lattice, super_lattice_units, cluster_sites=None, remove_internal_hoppings=False)[source]
Bases:
TBLatticeA tight-binding superlattice built on top of a base
TBLattice.- Parameters:
- tb_latticeTBLattice
The base tight-binding
TBLattice.- super_lattice_unitsnumpy.ndarray
Two-dimensional
(ndim, ndim)array giving the superlattice basis vectors in thetb_lattice(integer) coordinates.- cluster_siteslist of array-like of int, optional
Coordinates of the cluster in
tb_latticecoordinates. IfNone, cluster positions are computed automatically as all points whose coordinates in the superlattice basis lie in[0, 1)along each dimension.- remove_internal_hoppingsbool, default False
If
True, hopping terms inside the cluster are removed. Useful e.g. when adding Hartree-Fock terms at a cluster boundary.
Attributes
Norb
(int) Total number of orbitals in the supercell (
n_orbitals * Ncluster_sites).Ncluster_sites
(int) Number of sites in the cluster.
Methods
Map a base-lattice point
x(in lattice coordinates) to its superlattice coordinates(R, alpha).change_coordinates_SL_to_L(R, alpha)Map a superlattice point
(R, alpha)to its position on the base lattice in lattice coordinates.Yield each cluster-site position in base-lattice coordinates.
fold(D1[, remove_internal, create_zero])Fold a real-space function defined on the base lattice onto the superlattice.
pack_index_site_orbital(n_site, n_orbital)Combine a (site, orbital) index pair into a single superlattice orbital index.
unpack_index_site_orbital(index)Split a superlattice orbital index back into a
(n_site, n_orbital)pair (inverse ofpack_index_site_orbital()).