Symmetry is a guiding principle in physics that allows us to generalize conclusions between many physical systems. In the ongoing search for new topological phases of matter, symmetry plays a crucial role by protecting topological phases. We address two converse questions relevant to the symmetry classification of systems: is it possible to generate all possible single-body Hamiltonians compatible with a given symmetry group? Is it possible to find all the symmetries of a given family of Hamiltonians? We present numerically stable, deterministic polynomial time algorithms to solve both of these problems. Our treatment extends to all continuous or discrete symmetries of non-interacting lattice or continuum Hamiltonians. We implement the algorithms in the Qsymm Python package, and demonstrate their usefulness through applications in active research areas of condensed matter physics, including Majorana wires and Kekule graphene. continuous spatial rotations, space groups, discrete onsite symmetries (such as time reversal, particle-hole and chiral symmetries), and arbitrary combinations of these. Besides static fermionic systems, our methods are also applicable to band structures in photonic crystals [25,26], magnon spectra, classical mechanical [27, 28] and electronic systems [29], and driven Floquet systems [30].The paper is structured as follows: first we review the general symmetry structure of single-particle Hamiltonians. Then we present our algorithm to find Hamiltonians with such symmetries. After that we review the symmetry finding algorithm, which, by factoring out onsite unitary symmetries, makes finding all other symmetries more efficient and guaranteed. We implement our algorithms in the Qsymm Python package [31, 32]. Finally we provide a set of examples where our method was used on problems in active areas of research. We show that Majorana wire devices may be protected against band-tilting by a magnetic symmetry, and double Dirac cones in Kekule distorted graphene are protected by point group and sublattice symmetry. We also construct model Hamiltonians for transition metal dichalcogenides and distorted spin-orbit coupled SnTe.
Hamiltonian families and symmetries 2.1. Continuum and tight-binding HamiltoniansWe focus on non-interacting Hamiltonians. The quadratic Hamilton operator of a finite (zero-dimensional) system can be written as New J. Phys. 20 (2018) 093026 D Varjas et al