The non-Hermitian Bethe-Salpeter eigenvalue problem is a structured eigenproblem, with real eigenvalues coming in pairs $\{\lambda,-\lambda\}$ where the corresponding pair of eigenvectors are closely related, and furthermore the left eigenvectors can be trivially obtained from the right ones. We exploit these properties to devise three variants of structure-preserving Lanczos eigensolvers to compute a subset of eigenvalues (those of either smallest or largest magnitude) together with their corresponding right and left eigenvectors. For this to be effective in real applications, we need to incorporate a thick-restart technique in a way that the overall computation preserves the problem structure. The new methods are validated in an implementation within the SLEPc library using several test matrices, some of them coming from the Yambo materials science code.
翻译:暂无翻译