All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
direct_solve.hpp File Reference

Implementations of dense direct triangular solvers are found here. More...

`#include "viennacl/vector.hpp"`
`#include "viennacl/matrix.hpp"`
`#include "viennacl/linalg/host_based/common.hpp"`

Go to the source code of this file.

## 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::host_based
| Holds all compute kernels with conventional host-based execution (buffers in CPU RAM).
| viennacl::linalg::host_based::detail
| Helper functions for the host-based linear algebra backend.

## Functions

template<typename MatrixT1 , typename MatrixT2 >
void | viennacl::linalg::host_based::detail::upper_inplace_solve_matrix (MatrixT1 &A, MatrixT2 &B, vcl_size_t A_size, vcl_size_t B_size, bool unit_diagonal)
template<typename MatrixT1 , typename MatrixT2 >
void | viennacl::linalg::host_based::detail::inplace_solve_matrix (MatrixT1 &A, MatrixT2 &B, vcl_size_t A_size, vcl_size_t B_size, viennacl::linalg::unit_upper_tag)
template<typename MatrixT1 , typename MatrixT2 >
void | viennacl::linalg::host_based::detail::inplace_solve_matrix (MatrixT1 &A, MatrixT2 &B, vcl_size_t A_size, vcl_size_t B_size, viennacl::linalg::upper_tag)
template<typename MatrixT1 , typename MatrixT2 >
void | viennacl::linalg::host_based::detail::lower_inplace_solve_matrix (MatrixT1 &A, MatrixT2 &B, vcl_size_t A_size, vcl_size_t B_size, bool unit_diagonal)
template<typename MatrixT1 , typename MatrixT2 >
void | viennacl::linalg::host_based::detail::inplace_solve_matrix (MatrixT1 &A, MatrixT2 &B, vcl_size_t A_size, vcl_size_t B_size, viennacl::linalg::unit_lower_tag)
template<typename MatrixT1 , typename MatrixT2 >
void | viennacl::linalg::host_based::detail::inplace_solve_matrix (MatrixT1 &A, MatrixT2 &B, vcl_size_t A_size, vcl_size_t B_size, viennacl::linalg::lower_tag)
template<typename NumericT , typename SolverTagT >
void | viennacl::linalg::host_based::inplace_solve (matrix_base< NumericT > const &A, matrix_base< NumericT > &B, SolverTagT)
| Direct inplace solver for triangular systems with multiple right hand sides, i.e. A \ B (MATLAB notation) More...
template<typename MatrixT , typename VectorT >
void | viennacl::linalg::host_based::detail::upper_inplace_solve_vector (MatrixT &A, VectorT &b, vcl_size_t A_size, bool unit_diagonal)
template<typename MatrixT , typename VectorT >
void | viennacl::linalg::host_based::detail::inplace_solve_vector (MatrixT &A, VectorT &b, vcl_size_t A_size, viennacl::linalg::unit_upper_tag)
template<typename MatrixT , typename VectorT >
void | viennacl::linalg::host_based::detail::inplace_solve_vector (MatrixT &A, VectorT &b, vcl_size_t A_size, viennacl::linalg::upper_tag)
template<typename MatrixT , typename VectorT >
void | viennacl::linalg::host_based::detail::lower_inplace_solve_vector (MatrixT &A, VectorT &b, vcl_size_t A_size, bool unit_diagonal)
template<typename MatrixT , typename VectorT >
void | viennacl::linalg::host_based::detail::inplace_solve_vector (MatrixT &A, VectorT &b, vcl_size_t A_size, viennacl::linalg::unit_lower_tag)
template<typename MatrixT , typename VectorT >
void | viennacl::linalg::host_based::detail::inplace_solve_vector (MatrixT &A, VectorT &b, vcl_size_t A_size, viennacl::linalg::lower_tag)
template<typename NumericT , typename SolverTagT >
void | viennacl::linalg::host_based::inplace_solve (matrix_base< NumericT > const &mat, vector_base< NumericT > &vec, SolverTagT)

## Detailed Description

Implementations of dense direct triangular solvers are found here.

Definition in file direct_solve.hpp.