naginterfaces.library.sparseig.feast_symm_contour(handle, emin, emax)[source]

feast_symm_contour is a setup function in a suite of functions consisting of feast_init(), feast_option(), feast_symm_contour, feast_real_symm_solve() and feast_complex_herm_solve(). It is used to find some of the eigenvalues, and the corresponding eigenvectors, of a standard or generalized eigenvalue problem defined by real symmetric or complex Hermitian matrices. The initialization function feast_init() must have been called prior to calling feast_symm_contour. In addition calls to feast_option() can be made to supply individual options to feast_symm_contour.

The suite of functions is suitable for the solution of large sparse eigenproblems where only a few eigenvalues from a selected range of the spectrum are required.

For full information please refer to the NAG Library document for f12je


The handle to the internal data structure used by the NAG FEAST suite. It needs to be initialized by feast_init(). It must not be changed between calls to the NAG FEAST suite.


The lower bound of the eigenvalue search interval.


The upper bound of the eigenvalue search interval.

(errno )

has not been initialized properly or is corrupted.

(errno )

An invalid number of integration points was specified. For Gauss or Zolotarev integration, the values permitted are , , , , , .

(errno )

On entry, and .

Constraint: .


The suite of functions is designed to calculate some of the eigenvalues, , and the corresponding eigenvectors, , of a standard eigenvalue problem , or a generalized eigenvalue problem , where the coefficient matrices and are sparse, real symmetric or complex Hermitian. The suite can also be used to find selected eigenvalues/eigenvectors of smaller scale dense, real symmetric or complex Hermitian problems.

feast_symm_contour is used to specify a search interval on the real line, , within which eigenvalues will be sought (note that the eigenvalues of real symmetric and complex Hermitian eigenproblems are themselves real). feast_symm_contour uses this interval to define nodes and weights for an elliptical contour to be used by the solvers feast_real_symm_solve() or feast_complex_herm_solve(). Since this contour is symmetric when reflected in the real line, the function needs only to define the nodes and weights for the upper half-contour.


Polizzi, E, 2009, Density-Matrix-Based Algorithms for Solving Eigenvalue Problems, Phys. Rev. B. (79), 115112