Finding the lowest root(s) of the Hamiltonian is a necessary step in CI methods. Standard diagonalization algorithms scale as O(N 3 det ) and O(N 2 det ) in terms of computation and storage, respectively. Hence, their cost is prohibitive as N det is usually, at least, of the order of few millions. Fortunately, not all the spectrum of Ĥ is required: only the rst few lowest eigenstates are of interest. e Davidson diagonalization 105-109 is an iterative algorithm which aims at extracting the rst N states lowest eigenstates of a large matrix. is algorithm reduces the cost of both the computation and storage to O(N states N 2 det ) and O(N states N det ), respectively. It is presented as Algorithm 2 and further details about the present Davidson algorithm implementation are gathered in Appendix A 3.