OpenVDB  12.0.0
Classes | Public Types | Public Member Functions | List of all members
JacobiPreconditioner< MatrixType > Class Template Reference

Diagonal preconditioner. More...

#include <openvdb/math/ConjGradient.h>

Inherits Preconditioner< MatrixType::ValueType >.

Public Types

using ValueType = typename MatrixType::ValueType
 
using BaseType = Preconditioner< ValueType >
 
using VectorType = Vector< ValueType >
 
using Ptr = SharedPtr< JacobiPreconditioner >
 

Public Member Functions

 JacobiPreconditioner (const MatrixType &A)
 
 ~JacobiPreconditioner () override=default
 
void apply (const Vector< ValueType > &r, Vector< ValueType > &z) override
 Apply this preconditioner to a residue vector: z = M−1r More...
 
bool isFinite () const
 Return true if all values along the diagonal are finite. More...
 
virtual bool isValid () const
 

Detailed Description

template<typename MatrixType>
class openvdb::v12_0::math::pcg::JacobiPreconditioner< MatrixType >

Diagonal preconditioner.

Member Typedef Documentation

using ValueType = typename MatrixType::ValueType

Constructor & Destructor Documentation

JacobiPreconditioner ( const MatrixType &  A)
inline
~JacobiPreconditioner ( )
overridedefault

Member Function Documentation

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

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

Parameters
rresidue vector
[out]zpreconditioned residue vector

Implements Preconditioner< MatrixType::ValueType >.

bool isFinite ( ) const
inline

Return true if all values along the diagonal are finite.

virtual bool isValid ( ) const
inlinevirtualinherited