ViennaCL - The Vienna Computing Library  1.7.1
Free open-source GPU-accelerated linear algebra and solver library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ilu_operations.hpp File Reference

Implementations of specialized routines for the Chow-Patel parallel ILU preconditioner. More...

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.
 

Functions

template<typename NumericT >
void viennacl::linalg::extract_L (compressed_matrix< NumericT > const &A, compressed_matrix< NumericT > &L)
 Extracts the lower triangular part L from A. More...
 
template<typename NumericT >
void viennacl::linalg::icc_scale (compressed_matrix< NumericT > const &A, compressed_matrix< NumericT > &L)
 Scales the values extracted from A such that A' = DAD has unit diagonal. Updates values from A in L accordingly. More...
 
template<typename NumericT >
void viennacl::linalg::icc_chow_patel_sweep (compressed_matrix< NumericT > &L, vector< NumericT > &aij_L)
 Performs one nonlinear relaxation step in the Chow-Patel-ICC (cf. Algorithm 3 in paper, but for L rather than U) More...
 
template<typename NumericT >
void viennacl::linalg::extract_LU (compressed_matrix< NumericT > const &A, compressed_matrix< NumericT > &L, compressed_matrix< NumericT > &U)
 Extracts the lower triangular part L and the upper triangular part U from A. More...
 
template<typename NumericT >
void viennacl::linalg::ilu_scale (compressed_matrix< NumericT > const &A, compressed_matrix< NumericT > &L, compressed_matrix< NumericT > &U)
 Scales the values extracted from A such that A' = DAD has unit diagonal. Updates values from A in L and U accordingly. More...
 
template<typename NumericT >
void viennacl::linalg::ilu_transpose (compressed_matrix< NumericT > const &A, compressed_matrix< NumericT > &B)
 Transposition B <- A^T, where the aij-vector is permuted in the same way as the value array in A when assigned to B. More...
 
template<typename NumericT >
void viennacl::linalg::ilu_chow_patel_sweep (compressed_matrix< NumericT > &L, vector< NumericT > const &aij_L, compressed_matrix< NumericT > &U_trans, vector< NumericT > const &aij_U_trans)
 Performs one nonlinear relaxation step in the Chow-Patel-ILU (cf. Algorithm 2 in paper) More...
 
template<typename NumericT >
void viennacl::linalg::ilu_form_neumann_matrix (compressed_matrix< NumericT > &R, vector< NumericT > &diag_R)
 Extracts the lower triangular part L and the upper triangular part U from A. More...
 

Detailed Description

Implementations of specialized routines for the Chow-Patel parallel ILU preconditioner.

Definition in file ilu_operations.hpp.