OpenVDB  9.0.1
Public Types | Public Member Functions | List of all members
Preconditioner< T > Class Template Referenceabstract

Base class for conjugate gradient preconditioners. More...

#include <openvdb/math/ConjGradient.h>

Public Types

using ValueType = T
 
using Ptr = SharedPtr< Preconditioner >
 

Public Member Functions

template<SizeType STENCIL_SIZE>
 Preconditioner (const SparseStencilMatrix< T, STENCIL_SIZE > &)
 
virtual ~Preconditioner ()=default
 
virtual bool isValid () const
 
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 T>
class openvdb::v9_0::math::pcg::Preconditioner< T >

Base class for conjugate gradient preconditioners.

Member Typedef Documentation

using ValueType = T

Constructor & Destructor Documentation

Preconditioner ( const SparseStencilMatrix< T, STENCIL_SIZE > &  )
inline
virtual ~Preconditioner ( )
virtualdefault

Member Function Documentation

virtual void apply ( const Vector< T > &  r,
Vector< T > &  z 
)
pure virtual

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

Parameters
rresidue vector
[out]zpreconditioned residue vector

Implemented in IncompleteCholeskyPreconditioner< MatrixType >, and JacobiPreconditioner< MatrixType >.

virtual bool isValid ( ) const
inlinevirtual