Spectra  1.0.1
Header-only C++ Library for Large Scale Eigenvalue Problems
Spectra::SymGEigsSolver< OpType, BOpType, Mode > Class Template Reference

#include <Spectra/SymGEigsSolver.h>

Detailed Description

template<typename OpType, typename BOpType, GEigsMode Mode>
class Spectra::SymGEigsSolver< OpType, BOpType, Mode >

This class implements the generalized eigen solver for real symmetric matrices, i.e., to solve \(Ax=\lambda Bx\) where \(A\) is symmetric and \(B\) is positive definite.

There are two modes of this solver, specified by the template parameter Mode. See the pages for the specialized classes for details.

  • The Cholesky mode assumes that \(B\) can be factorized using Cholesky decomposition, which is the preferred mode when the decomposition is available. (This can be easily done in Eigen using the dense or sparse Cholesky solver.) See SymGEigsSolver (Cholesky mode) for more details.
  • The regular inverse mode requires the matrix-vector product \(Bv\) and the linear equation solving operation \(B^{-1}v\). This mode should only be used when the Cholesky decomposition of \(B\) is hard to implement, or when computing \(B^{-1}v\) is much faster than the Cholesky decomposition. See SymGEigsSolver (Regular inverse mode) for more details.

Definition at line 45 of file SymGEigsSolver.h.


The documentation for this class was generated from the following file: