An accurate and efficient algorithm for the computation of the characteristic polynomial of a general square matrix
S. Rombouts, K. Heyde
TL;DR
The paper addresses the problem of accurately and efficiently computing the coefficients of the characteristic polynomial $P_U(x)$ for general $N\times N$ matrices, motivated by the needs of determinant quantum Monte Carlo methods in the canonical ensemble. It introduces an algorithm that treats $I+xU$ as a polynomial-matrix and computes $\bar{P}_U(x)=\det(I+xU)$ by first reducing $U$ to upper Hessenberg form via Householder transformations and then performing Gaussian elimination with polynomial entries to obtain $\bar{P}_U(x)$; the coefficients are then mapped to the coefficients $a_A$ of $P_U(x)$. The method achieves $N^3/2+N^2-N/2$ flops and can be tailored to compute only up to degree $A$, reducing cost to below $4N^3$, while offering superior accuracy and numerical stability compared to the Faddeev-Leverrier approach and avoiding full diagonalization. Numerical tests indicate substantial speedups over complete diagonalization across matrix sizes and higher accuracy, making it particularly advantageous for the many-matrix evaluations required in determinant QMC simulations at低 temperatures. The work thus provides a practical, robust tool for canonical-trace calculations in quantum many-body contexts.
Abstract
An algorithm is presented for the efficient and accurate computation of the coefficients of the characteristic polynomial of a general square matrix. The algorithm is especially suited for the evaluation of canonical traces in determinant quantum Monte-Carlo methods.
