ViennaCL - The Vienna Computing Library  1.5.1
Data Structures | Namespaces | Functions
viennacl/linalg/detail/ilu/ilu0.hpp File Reference

Implementations of incomplete factorization preconditioners with static nonzero pattern. More...

#include <vector>
#include <cmath>
#include <iostream>
#include "viennacl/forwards.h"
#include "viennacl/tools/tools.hpp"
#include "viennacl/linalg/detail/ilu/common.hpp"
#include "viennacl/compressed_matrix.hpp"
#include "viennacl/backend/memory.hpp"
#include "viennacl/linalg/host_based/common.hpp"
#include <map>

Go to the source code of this file.

Data Structures

class  ilu0_tag
 A tag for incomplete LU factorization with static pattern (ILU0) More...
class  ilu0_precond< MatrixType >
 ILU0 preconditioner class, can be supplied to solve()-routines. More...
class  ilu0_precond< compressed_matrix< ScalarType, MAT_ALIGNMENT > >
 ILU0 preconditioner class, can be supplied to solve()-routines. 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.


Functions

template<typename ScalarType >
void precondition (viennacl::compressed_matrix< ScalarType > &A, ilu0_tag const &)
 Implementation of a ILU-preconditioner with static pattern. Optimized version for CSR matrices.

Detailed Description

Implementations of incomplete factorization preconditioners with static nonzero pattern.

Contributed by Evan Bollig.

ILU0 (Incomplete LU with zero fill-in)

Evan Bollig 3/30/12

Adapted from viennacl/linalg/detail/ilut.hpp

Low-level reimplementation by Karl Rupp in Nov 2012, increasing performance substantially. Also added level-scheduling.