HOME

TheInfoList



OR:

SLEPc is a
software library In computing, a library is a collection of resources that can be leveraged during software development to implement a computer program. Commonly, a library consists of executable code such as compiled functions and classes, or a library can ...
for the parallel computation of
eigenvalues and eigenvectors In linear algebra, an eigenvector ( ) or characteristic vector is a vector that has its direction unchanged (or reversed) by a given linear transformation. More precisely, an eigenvector \mathbf v of a linear transformation T is scaled by a ...
of large, sparse matrices. It can be seen as a module of PETSc that provides solvers for different types of eigenproblems, including linear (standard and generalized) and nonlinear ( quadratic, polynomial and
general A general officer is an Officer (armed forces), officer of high rank in the army, armies, and in some nations' air force, air and space forces, marines or naval infantry. In some usages, the term "general officer" refers to a rank above colone ...
), as well as the SVD. Recent versions also include support for
matrix function In mathematics, every analytic function can be used for defining a matrix function that maps square matrices with complex entries to square matrices of the same size. This is used for defining the exponential of a matrix, which is involved in th ...
s. It uses the
MPI MPI or Mpi may refer to: Science and technology Biology and medicine * Magnetic particle imaging, a tomographic technique * Myocardial perfusion imaging, a medical procedure that illustrates heart function * Mannose phosphate isomerase, an enzyme ...
standard for parallelization. Both real and complex arithmetic are supported, with single, double and quadruple precision. When using SLEPc, the application programmer can use any of the PETSc's data structures and solvers. Other PETSc features are incorporated into SLEPc as well, such as command-line option setting, automatic profiling, error checking, portability to virtually all computing platforms, etc.


Components

EPS provides iterative algorithms for linear eigenvalue problems. * Krylov methods such as Krylov-Schur, Arnoldi and Lanczos. * Davidson methods such as Generalized Davidson and Jacobi-Davidson. * Conjugate gradient methods such as LOBPCG. * A contour integral solver (CISS). * Interface to some external eigensolvers, such as ARPACK and BLOPEX. * Customization options include: number of wanted eigenvalues, tolerance, size of the employed subspaces, part of the spectrum of interest. ST encapsulates spectral transformations and other preconditioners for eigenvalue problems. * Shift-and-invert and Cayley spectral transformations. * Support for preconditioned eigensolvers (such as Jacobi-Davidson) by using the preconditioners provided by PETSc. * Polynomial filters for interior eigenvalues. SVD contains solvers for the
singular value decomposition In linear algebra, the singular value decomposition (SVD) is a Matrix decomposition, factorization of a real number, real or complex number, complex matrix (mathematics), matrix into a rotation, followed by a rescaling followed by another rota ...
as well as the generalized singular value decomposition. * Solvers based on the cross-product matrix or the cyclic matrix, that rely on EPS solvers. * Specific solvers based on bidiagonalization such as Golub-Kahan-Lanczos and a thick-restarted variant. PEP is intended for polynomial eigenproblems, including the quadratic eigenvalue problem. * Solvers based on explicit linearization, that rely on EPS solvers. * Solvers that perform the linearization implicitly in a memory-efficient way, such as TOAR. * A Jacobi-Davidson solver for PEP. NEP provides functionality for the solution of the nonlinear eigenproblem. * Basic solvers such as residual inverse iteration and successive linear problems. * A solver based on polynomial interpolation that relies on PEP solvers. * A solver based on rational interpolation (NLEIGS). MFN can be used to compute the action of a
matrix function In mathematics, every analytic function can be used for defining a matrix function that maps square matrices with complex entries to square matrices of the same size. This is used for defining the exponential of a matrix, which is involved in th ...
on a vector. * A restarted Krylov solver.


See also

* Portable, Extensible Toolkit for Scientific Computation (PETSc) * List of numerical libraries


References

{{Reflist


External links


The Official SLEPc web site
Numerical libraries Numerical linear algebra Scientific simulation software