Public Member Functions | Private Types | Private Attributes | List of all members
Spectra::RitzPairs< Scalar > Class Template Reference

#include <RitzPairs.h>

Public Member Functions

bool check_convergence (Scalar tol, Index number_eigenvalues)
 
Eigen::ComputationInfo compute_eigen_pairs (const SearchSpace< Scalar > &search_space)
 
const BoolArrayconverged_eigenvalues () const
 
const Matrixresidues () const
 
const Vectorritz_values () const
 
const Matrixritz_vectors () const
 
 RitzPairs ()=default
 
Index size () const
 
const Matrixsmall_ritz_vectors () const
 
void sort (SortRule selection)
 

Private Types

using Array = Eigen::Array< Scalar, Eigen::Dynamic, 1 >
 
using BoolArray = Eigen::Array< bool, Eigen::Dynamic, 1 >
 
using Index = Eigen::Index
 
using Matrix = Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic >
 
using Vector = Eigen::Matrix< Scalar, Eigen::Dynamic, 1 >
 

Private Attributes

Matrix m_residues
 
BoolArray m_root_converged
 
Matrix m_small_vectors
 
Vector m_values
 
Matrix m_vectors
 

Detailed Description

template<typename Scalar>
class Spectra::RitzPairs< Scalar >

This class handles the creation and manipulation of Ritz eigen pairs for iterative eigensolvers such as Davidson, Jacobi-Davidson, etc.

Definition at line 23 of file RitzPairs.h.

Member Typedef Documentation

◆ Array

template<typename Scalar >
using Spectra::RitzPairs< Scalar >::Array = Eigen::Array<Scalar, Eigen::Dynamic, 1>
private

Definition at line 29 of file RitzPairs.h.

◆ BoolArray

template<typename Scalar >
using Spectra::RitzPairs< Scalar >::BoolArray = Eigen::Array<bool, Eigen::Dynamic, 1>
private

Definition at line 30 of file RitzPairs.h.

◆ Index

template<typename Scalar >
using Spectra::RitzPairs< Scalar >::Index = Eigen::Index
private

Definition at line 26 of file RitzPairs.h.

◆ Matrix

template<typename Scalar >
using Spectra::RitzPairs< Scalar >::Matrix = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>
private

Definition at line 27 of file RitzPairs.h.

◆ Vector

template<typename Scalar >
using Spectra::RitzPairs< Scalar >::Vector = Eigen::Matrix<Scalar, Eigen::Dynamic, 1>
private

Definition at line 28 of file RitzPairs.h.

Constructor & Destructor Documentation

◆ RitzPairs()

template<typename Scalar >
Spectra::RitzPairs< Scalar >::RitzPairs ( )
default

Member Function Documentation

◆ check_convergence()

template<typename Scalar >
bool Spectra::RitzPairs< Scalar >::check_convergence ( Scalar  tol,
Index  number_eigenvalues 
)
inline

Checks if the algorithm has converged and updates root_converged

Parameters
tolTolerance for convergence
number_eigenvalueNumber of request eigenvalues
Returns
bool true if all eigenvalues are converged

Definition at line 73 of file RitzPairs.h.

◆ compute_eigen_pairs()

template<typename Scalar >
Eigen::ComputationInfo Spectra::RitzPairs< Scalar >::compute_eigen_pairs ( const SearchSpace< Scalar > &  search_space)

Compute the eigen values/vectors

Parameters
search_spaceInstance of the class handling the search space
Returns
Eigen::ComputationalInfo Whether small eigenvalue problem worked

Creates the small space matrix and computes its eigen pairs Also computes the ritz vectors and residues

Parameters
search_spaceInstance of the SearchSpace class

Definition at line 107 of file RitzPairs.h.

◆ converged_eigenvalues()

template<typename Scalar >
const BoolArray& Spectra::RitzPairs< Scalar >::converged_eigenvalues ( ) const
inline

Definition at line 93 of file RitzPairs.h.

◆ residues()

template<typename Scalar >
const Matrix& Spectra::RitzPairs< Scalar >::residues ( ) const
inline

Definition at line 92 of file RitzPairs.h.

◆ ritz_values()

template<typename Scalar >
const Vector& Spectra::RitzPairs< Scalar >::ritz_values ( ) const
inline

Definition at line 90 of file RitzPairs.h.

◆ ritz_vectors()

template<typename Scalar >
const Matrix& Spectra::RitzPairs< Scalar >::ritz_vectors ( ) const
inline

Definition at line 89 of file RitzPairs.h.

◆ size()

template<typename Scalar >
Index Spectra::RitzPairs< Scalar >::size ( ) const
inline

Returns the size of the ritz eigen pairs

Returns
Eigen::Index Number of pairs

Definition at line 50 of file RitzPairs.h.

◆ small_ritz_vectors()

template<typename Scalar >
const Matrix& Spectra::RitzPairs< Scalar >::small_ritz_vectors ( ) const
inline

Definition at line 91 of file RitzPairs.h.

◆ sort()

template<typename Scalar >
void Spectra::RitzPairs< Scalar >::sort ( SortRule  selection)
inline

Sort the eigen pairs according to the selection rule

Parameters
selectionSorting rule

Definition at line 55 of file RitzPairs.h.

Member Data Documentation

◆ m_residues

template<typename Scalar >
Matrix Spectra::RitzPairs< Scalar >::m_residues
private

Definition at line 35 of file RitzPairs.h.

◆ m_root_converged

template<typename Scalar >
BoolArray Spectra::RitzPairs< Scalar >::m_root_converged
private

Definition at line 36 of file RitzPairs.h.

◆ m_small_vectors

template<typename Scalar >
Matrix Spectra::RitzPairs< Scalar >::m_small_vectors
private

Definition at line 33 of file RitzPairs.h.

◆ m_values

template<typename Scalar >
Vector Spectra::RitzPairs< Scalar >::m_values
private

Definition at line 32 of file RitzPairs.h.

◆ m_vectors

template<typename Scalar >
Matrix Spectra::RitzPairs< Scalar >::m_vectors
private

Definition at line 34 of file RitzPairs.h.


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


gtsam
Author(s):
autogenerated on Wed May 28 2025 03:15:49