ViennaCL - The Vienna Computing Library  1.5.0
Data Structures | Namespaces | Functions
viennacl/linalg/lanczos.hpp File Reference

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.

Detailed Description

Generic interface for the Lanczos algorithm.

Contributed by Guenther Mader and Astrid Rupp.