Description: |
Implementation of the SU(2) Hamiltonian symmetry for the DMRG algorithm. In the Density Matrix Renormalization Group (DMRG) algorithm [S. White, Phys. Rev. Lett. 69, 2863 (1992) and Phys. Rev. B 48, 345 (1993)], Hamiltonian symmetries play an important rôle. Using symmetries, the matrix representation of the Hamiltonian can be blocked. Diagonalizing each matrix block is more efficient than diagonalizing the original matrix. This paper explains how the the DMRG++ code [G. Alvarez, Comput. Phys. Comm. 180, No. 9, 1572–1578 (2009)] has been extended to handle the non-local SU(2) symmetry in a model independent way. Improvements in CPU times compared to runs with only local symmetries are discussed for the one-orbital Hubbard model, and for a two-orbital Hubbard model for iron-based superconductors. The computational bottleneck of the algorithm and the use of shared memory parallelization are also addressed. |