ViennaCL - The Vienna Computing Library
1.5.1
|
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 <boost/random.hpp>
#include <boost/random/mersenne_twister.hpp>
#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/matrix_proxy.hpp>
#include <boost/numeric/ublas/matrix_expression.hpp>
#include <boost/numeric/ublas/matrix_sparse.hpp>
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/operation.hpp>
#include <boost/numeric/ublas/vector_expression.hpp>
#include <boost/numeric/ublas/io.hpp>
Go to the source code of this file.
Data Structures | |
class | lanczos_tag |
A tag for the lanczos algorithm. More... | |
Namespaces | |
namespace | viennacl |
Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them. | |
namespace | viennacl::linalg |
Provides all linear algebra operations which are not covered by operator overloads. | |
namespace | viennacl::linalg::detail |
Namespace holding implementation details for linear algebra routines. Usually not of interest for a library user. | |
Functions | |
template<typename MatrixT , typename VectorT > | |
std::vector< typename viennacl::result_of::cpu_value_type < typename MatrixT::value_type > ::type > | lanczosPRO (MatrixT const &A, VectorT &r, vcl_size_t size, lanczos_tag const &tag) |
Implementation of the Lanczos PRO algorithm. | |
template<typename MatrixT , typename VectorT > | |
std::vector< typename viennacl::result_of::cpu_value_type < typename MatrixT::value_type > ::type > | lanczos (MatrixT const &A, VectorT &r, vcl_size_t size, lanczos_tag) |
Implementation of the lanczos algorithm without reorthogonalization. | |
template<typename MatrixT , typename VectorT > | |
std::vector< typename viennacl::result_of::cpu_value_type < typename MatrixT::value_type > ::type > | lanczosFRO (MatrixT const &A, VectorT &r, vcl_size_t size, lanczos_tag) |
Implementation of the Lanczos FRO algorithm. | |
template<typename MatrixT > | |
std::vector< typename viennacl::result_of::cpu_value_type < typename MatrixT::value_type > ::type > | eig (MatrixT const &matrix, lanczos_tag const &tag) |
Implementation of the calculation of eigenvalues using lanczos. |
Generic interface for the Lanczos algorithm.
Contributed by Guenther Mader and Astrid Rupp.