Journal of Chemical Physics, Vol.121, No.19, 9220-9229, 2004
An efficient method for calculating maxima of homogeneous functions of orthogonal matrices: Applications to localized occupied orbitals
We present here three new algorithms (one purely iterative and two DIIS-like [Direct Inversion in the Iteractive Subspace]) to compute maxima of homogeneous functions of orthogonal matrices. These algorithms revolve around the mathematical lemma that, given an invertible matrix A, the function f(U)=Tr(AU) has exactly one local (and global) maximum for U special orthogonal [i.e., UUT=1 and det(U)=1]. This is proved in the Appendix. One application of these algorithms is the computation of localized orbitals, including, for example, Boys and Edmiston-Ruedenberg (ER) orbitals. The Boys orbitals are defined as the set of orthonormal orbitals which, for a given vector space of orbitals, maximize the sum of the distances between orbital centers. The ER orbitals maximize total self-interaction energy. The algorithm presented here computes Boys orbitals roughly as fast as the traditional method (Jacobi sweeps), while, for large systems, it finds ER orbitals potentially much more quickly than traditional Jacobi sweeps. In fact, the required time for convergence of our algorithm scales quadratically in the region of a few hundred basis functions (though cubicly asymptotically), while Jacobi sweeps for the ER orbitals traditionally scale as the number of occupied orbitals to the fifth power. As an example of the utility of the method, we provide below the ER orbitals of nitrated and nitrosated benzene, and we discuss the chemical implications. (C) 2004 American Institute of Physics.