lambda-lanczos 2.0.0
Loading...
Searching...
No Matches
lambda_lanczos Namespace Reference

Namespaces

namespace  eigenpair_manager
 
namespace  tridiagonal
 
namespace  tridiagonal_impl
 
namespace  tridiagonal_lapack
 
namespace  util
 

Classes

class  Exponentiator
 Calculation engine for Lanczos exponentiation. More...
 
class  LambdaLanczos
 Calculation engine for Lanczos algorithm. More...
 
struct  VectorRandomInitializer
 Template class to implement random vector initializer. More...
 
struct  VectorRandomInitializer< std::complex< T > >
 

Functions

template<typename T , typename LT >
auto compute_eigenvectors (const std::vector< T > &alpha, const std::vector< T > &beta, const std::vector< std::vector< LT > > &u, const bool find_maximum, const size_t num_of_eigenvalues) -> std::vector< std::vector< decltype(T()+LT())> >
 Computes the eigenvectors from Krylov subspace information. More...
 

Function Documentation

◆ compute_eigenvectors()

template<typename T , typename LT >
auto lambda_lanczos::compute_eigenvectors ( const std::vector< T > &  alpha,
const std::vector< T > &  beta,
const std::vector< std::vector< LT > > &  u,
const bool  find_maximum,
const size_t  num_of_eigenvalues 
) -> std::vector<std::vector<decltype(T()+LT())>>
inline

Computes the eigenvectors from Krylov subspace information.

Parameters
[in]alphaDiagonal elements of the tridiagonal matrix.
[in]betaSub-diagonal elements of the tridiagonal matrix.
[in]uLanczos vectors.
[in]find_maximumTrue to calculate maximum eigenvalues. False to calculate minimum eigenvalues.
[in]num_of_eigenvaluesNumber of eigenvalues to be calculated.
Returns
Calculated eigenvectors.