Generic interface for the Lanczos algorithm. More...
#include <cmath>#include <vector>#include "viennacl/vector.hpp"#include "viennacl/compressed_matrix.hpp"#include "viennacl/linalg/prod.hpp"#include "viennacl/linalg/inner_prod.hpp"#include "viennacl/linalg/norm_2.hpp"#include "viennacl/io/matrix_market.hpp"#include "viennacl/linalg/bisect.hpp"#include "viennacl/tools/random.hpp"Go to the source code of this file.
| Classes | |
| class | viennacl::linalg::lanczos_tag | 
| A tag for the lanczos algorithm.  More... | |
| Namespaces | |
| viennacl | |
| Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them. | |
| viennacl::linalg | |
| Provides all linear algebra operations which are not covered by operator overloads. | |
| viennacl::linalg::detail | |
| Namespace holding implementation details for linear algebra routines. Usually not of interest for a library user. | |
| Functions | |
| template<typename NumericT > | |
| void | viennacl::linalg::detail::inverse_iteration (std::vector< NumericT > const &alphas, std::vector< NumericT > const &betas, NumericT &eigenvalue, std::vector< NumericT > &eigenvector) | 
| Inverse iteration for finding an eigenvector for an eigenvalue.  More... | |
| template<typename MatrixT , typename DenseMatrixT , typename NumericT > | |
| std::vector< NumericT > | viennacl::linalg::detail::lanczosPRO (MatrixT const &A, vector_base< NumericT > &r, DenseMatrixT &eigenvectors_A, vcl_size_t size, lanczos_tag const &tag, bool compute_eigenvectors) | 
| Implementation of the Lanczos PRO algorithm (partial reorthogonalization)  More... | |
| template<typename MatrixT , typename DenseMatrixT , typename NumericT > | |
| std::vector< NumericT > | viennacl::linalg::detail::lanczos (MatrixT const &A, vector_base< NumericT > &r, DenseMatrixT &eigenvectors_A, vcl_size_t krylov_dim, lanczos_tag const &tag, bool compute_eigenvectors) | 
| Implementation of the Lanczos FRO algorithm.  More... | |
| template<typename MatrixT , typename DenseMatrixT > | |
| std::vector< typename viennacl::result_of::cpu_value_type < typename MatrixT::value_type > ::type > | viennacl::linalg::eig (MatrixT const &matrix, DenseMatrixT &eigenvectors_A, lanczos_tag const &tag, bool compute_eigenvectors=true) | 
| Implementation of the calculation of eigenvalues using lanczos (with and without reorthogonalization).  More... | |
| template<typename MatrixT > | |
| std::vector< typename viennacl::result_of::cpu_value_type < typename MatrixT::value_type > ::type > | viennacl::linalg::eig (MatrixT const &matrix, lanczos_tag const &tag) | 
| Implementation of the calculation of eigenvalues using lanczos (with and without reorthogonalization).  More... | |
Generic interface for the Lanczos algorithm.
Contributed by Guenther Mader and Astrid Rupp.
Definition in file lanczos.hpp.