kwant.physics.DiscreteSymmetry(projectors=None, time_reversal=None, particle_hole=None, chiral=None)[source]¶Bases: object
A collection of discrete symmetries and conservation laws.
| Parameters: | projectors : iterable of rectangular or square sparse matrices
time_reversal : square sparse matrix
particle_hole : square sparse matrix
chiral : square sparse matrix
|
|---|
Notes
Whenever one or more discrete symmetry is declared in conjunction with a conservation law, the symmetry operators and projectors must be declared in canonical form. This means that each block of the Hamiltonian is transformed either to itself by a discrete symmetry or to a single other block.
More formally, consider a discrete symmetry S. The symmetry projection that maps from block i to block j of the Hamiltonian with projectors \(P_i\) and \(P_j\) is \(S_{ji} = P_j^+ S P_i\). If \(S_{ji}\) is nonzero, a symmetry relation exists between blocks i and j. Canonical form means that for each j, the block \(S_{ji}\) is nonzero at most for one i, while all other blocks vanish.
If the operators are not in canonical form, they can be made so by further splitting the Hamiltonian into smaller blocks, i.e. by adding more projectors.
Methods
validate(matrix)[source]¶Check if a matrix satisfies the discrete symmetries.
| Parameters: | matrix : sparse or dense matrix
|
|---|---|
| Returns: | broken_symmetry : string or
|