Loading...
Searching...
No Matches
IncompleteCholeskyPreconditioner< MatrixType > Class Template Reference

Preconditioner using incomplete Cholesky factorization. More...

`#include <openvdb/math/ConjGradient.h>`

Inheritance diagram for IncompleteCholeskyPreconditioner< MatrixType >:

## Public Types

using | ValueType = typename MatrixType::ValueType
using | BaseType = Preconditioner<ValueType>
using | VectorType = Vector<ValueType>
using | Ptr = SharedPtr<IncompleteCholeskyPreconditioner>
using | TriangularMatrix = SparseStencilMatrix<ValueType, 4>
using | TriangleConstRow = typename TriangularMatrix::ConstRow
using | TriangleRowEditor = typename TriangularMatrix::RowEditor

## Public Member Functions

| IncompleteCholeskyPreconditioner (const MatrixType &matrix)
| ~IncompleteCholeskyPreconditioner () override=default
bool | isValid () const override
void | apply (const Vector< ValueType > &rVec, Vector< ValueType > &zVec) override
| Apply this preconditioner to a residue vector: z = M−1r.
const TriangularMatrix & | lowerMatrix () const
const TriangularMatrix & | upperMatrix () const

## Detailed Description

template<typename MatrixType>
class openvdb::v10_0::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >

Preconditioner using incomplete Cholesky factorization.

## Member Typedef Documentation

## BaseType

template<typename MatrixType>

using BaseType = Preconditioner<ValueType>

## Ptr

template<typename MatrixType>

using Ptr = SharedPtr<IncompleteCholeskyPreconditioner>

## TriangleConstRow

template<typename MatrixType>

using TriangleConstRow = typename TriangularMatrix::ConstRow

## TriangleRowEditor

template<typename MatrixType>

using TriangleRowEditor = typename TriangularMatrix::RowEditor

## TriangularMatrix

template<typename MatrixType>

using TriangularMatrix = SparseStencilMatrix<ValueType, 4>

## ValueType

template<typename MatrixType>

using ValueType = typename MatrixType::ValueType

## VectorType

template<typename MatrixType>

using VectorType = Vector<ValueType>

## Constructor & Destructor Documentation

## IncompleteCholeskyPreconditioner()

template<typename MatrixType>

IncompleteCholeskyPreconditioner | ( | const MatrixType & | matrix | ) |

inline

## ~IncompleteCholeskyPreconditioner()

template<typename MatrixType>

~IncompleteCholeskyPreconditioner | ( |  | ) |

override default

## Member Function Documentation

## apply()

template<typename MatrixType>

void apply | ( | const Vector< ValueType > & | r,
|  | Vector< ValueType > & | z )

inline override virtual

Apply this preconditioner to a residue vector: z = M−1r.

Parameters

  | r | residue vector
  [out] | z | preconditioned residue vector

Implements Preconditioner< MatrixType::ValueType >.

## isValid()

template<typename MatrixType>

bool isValid | ( |  | ) | const

inline override virtual

Reimplemented from Preconditioner< MatrixType::ValueType >.

## lowerMatrix()

template<typename MatrixType>

const TriangularMatrix & lowerMatrix | ( |  | ) | const

inline

## upperMatrix()

template<typename MatrixType>

const TriangularMatrix & upperMatrix | ( |  | ) | const

inline