JDCG

JDCG is a Matlab® package for the computation of a few of the smallest eigenvalues and associated eigenvectors of a (large sparse) real symmetric matrix. A version is also provided that handle generalized eigenproblems.

It implements the Jacobi-Davidson method with preconditioned conjugate gradient solution of the arising linear systems.

It is a modified version of the JDQR by Gerard Sleijpen, based on the results in the paper

Y. Notay,
Combination of Jacobi-Davidson and conjugate gradients for the partial symmetric eigenproblem,
Numer. Lin. Alg. Appl., vol. 9, pp. 21-44, 2002.  [ pdf ]
The sptopping criterion for inner iterations is based on the report
Y. Notay,
Inner iterations in eigenvalue solvers,
Report GANMN 05-01, Université Libre de Bruxelles, Brussels, Belgium, 2005.  [ pdf ]


JDRPCG is a version of JDCG that uses regular preconditioning as documented in this latter report


File: jdcg.m
Requires: Matlab Version 5.1. or higher
Function: [X,Lambda,HISTORY] = jdcg(matrix/filename,K,SIGMA,OPTIONS);

Main function with dependencies for standard eigenproblems. Enter help jdcg within a Matlab session for information on input and output arguments.


File: jdrpcg.m
Requires: Matlab Version 5.1. or higher
Function: [X,Lambda,HISTORY] = jdrpcg(matrix/filename,K,SIGMA,OPTIONS);

Main function with dependencies for standard eigenproblems. Enter help jdrpcg within a Matlab session for information on input and output arguments.



File: jdcg_gep.m
Requires: Matlab Version 5.1. or higher
Function: [X,Lambda,HISTORY] = jdcg(matrix/filename,matrix/filename,K,SIGMA,OPTIONS);

Main function with dependencies for generalized eigenproblems. Enter help jdcg_gep within a Matlab session for information on input and output arguments.