###
EP25: Sparse symmetric: Lanczos for the spectrum

This subroutine uses the Lanczos algorithm to compute in parallel the part of the spectrum of a large symmetric matrix \(\mathbf{A}\) that lies in a specified interval, that is, it computes eigenvalues without regard to multiplicities. The user is required to partition the vectors into contiguous sections of similar sizes, each residing on a separate process. He or she must provide parallel code that computes \(\mathbf{u}+\mathbf{Av}\) for any given vectors \(\mathbf{u}\) and \(\mathbf{v}\). The partitions should be chosen to make this computation straightforward and rapid.

Auxiliary calls allow corresponding eigenvectors to be found. In this case, the user is responsible for storing each vector \(\mathbf{v}\) and restoring it during the eigenvector calculation.

MPI is used for message passing. The system must be homogeneous, that is, all the processes must be identical.