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

Implementations of the generalized minimum residual method are in this file. More...

#include <vector>
#include <cmath>
#include <limits>
#include "viennacl/forwards.h"
#include "viennacl/tools/tools.hpp"
#include "viennacl/linalg/norm_2.hpp"
#include "viennacl/linalg/prod.hpp"
#include "viennacl/linalg/inner_prod.hpp"
#include "viennacl/traits/clear.hpp"
#include "viennacl/traits/size.hpp"
#include "viennacl/meta/result_of.hpp"

Go to the source code of this file.

Data Structures

class  gmres_tag
 A tag for the solver GMRES. Used for supplying solver parameters and for dispatching the solve() function. 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 SRC_VECTOR , typename DEST_VECTOR >
void gmres_copy_helper (SRC_VECTOR const &src, DEST_VECTOR &dest, vcl_size_t len, vcl_size_t start=0)
template<typename ScalarType , typename DEST_VECTOR >
void gmres_copy_helper (viennacl::vector< ScalarType > const &src, DEST_VECTOR &dest, vcl_size_t len, vcl_size_t start=0)
template<typename VectorType , typename ScalarType >
void gmres_setup_householder_vector (VectorType const &input_vec, VectorType &hh_vec, ScalarType &beta, ScalarType &mu, vcl_size_t j)
 Computes the householder vector 'hh_vec' which rotates 'input_vec' such that all entries below the j-th entry of 'v' become zero.
template<typename VectorType , typename ScalarType >
void gmres_householder_reflect (VectorType &x, VectorType const &h, ScalarType beta)
template<typename MatrixType , typename VectorType , typename PreconditionerType >
VectorType solve (const MatrixType &matrix, VectorType const &rhs, gmres_tag const &tag, PreconditionerType const &precond)
 Implementation of the GMRES solver.
template<typename MatrixType , typename VectorType >
VectorType solve (const MatrixType &matrix, VectorType const &rhs, gmres_tag const &tag)
 Convenience overload of the solve() function using GMRES. Per default, no preconditioner is used.

Detailed Description

Implementations of the generalized minimum residual method are in this file.