HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType > Class Template Reference

Preconditioner using incomplete Cholesky factorization. More...

#include <ConjGradient.h>

+ Inheritance diagram for openvdb::OPENVDB_VERSION_NAME::math::pcg::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 Types inherited from openvdb::OPENVDB_VERSION_NAME::math::pcg::Preconditioner< MatrixType::ValueType >
using ValueType = T
 
using Ptr = SharedPtr< Preconditioner >
 

Public Member Functions

 IncompleteCholeskyPreconditioner (const MatrixType &matrix)
 
 ~IncompleteCholeskyPreconditioner () override=default
 
bool isValid () const override
 
void apply (const Vector< ValueType > &rVec, Vector< ValueType > &zVec) override
 
const TriangularMatrixlowerMatrix () const
 
const TriangularMatrixupperMatrix () const
 
- Public Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::math::pcg::Preconditioner< MatrixType::ValueType >
 Preconditioner (const SparseStencilMatrix< T, STENCIL_SIZE > &)
 
virtual ~Preconditioner ()=default
 
virtual void apply (const Vector< T > &r, Vector< T > &z)=0
 Apply this preconditioner to a residue vector: z = M−1r More...
 

Detailed Description

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

Preconditioner using incomplete Cholesky factorization.

Definition at line 43 of file ConjGradient.h.

Member Typedef Documentation

Definition at line 1350 of file ConjGradient.h.

template<typename MatrixType >
using openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::TriangleConstRow = typename TriangularMatrix::ConstRow

Definition at line 1354 of file ConjGradient.h.

template<typename MatrixType >
using openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::TriangleRowEditor = typename TriangularMatrix::RowEditor

Definition at line 1355 of file ConjGradient.h.

Definition at line 1353 of file ConjGradient.h.

template<typename MatrixType >
using openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::ValueType = typename MatrixType::ValueType

Definition at line 1349 of file ConjGradient.h.

Definition at line 1351 of file ConjGradient.h.

Constructor & Destructor Documentation

template<typename MatrixType >
openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::IncompleteCholeskyPreconditioner ( const MatrixType &  matrix)
inline

Definition at line 1357 of file ConjGradient.h.

Member Function Documentation

template<typename MatrixType >
void openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::apply ( const Vector< ValueType > &  rVec,
Vector< ValueType > &  zVec 
)
inlineoverride

Definition at line 1454 of file ConjGradient.h.

template<typename MatrixType >
bool openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::isValid ( ) const
inlineoverridevirtual
template<typename MatrixType >
const TriangularMatrix& openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::lowerMatrix ( ) const
inline

Definition at line 1502 of file ConjGradient.h.

template<typename MatrixType >
const TriangularMatrix& openvdb::OPENVDB_VERSION_NAME::math::pcg::IncompleteCholeskyPreconditioner< MatrixType >::upperMatrix ( ) const
inline

Definition at line 1503 of file ConjGradient.h.


The documentation for this class was generated from the following file: