OpenVDB: JacobiPreconditioner< MatrixType > Class Template Reference

OpenVDB 13.0.0

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

Diagonal preconditioner. More...

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

Inheritance diagram for JacobiPreconditioner< MatrixType >:

## 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.
bool | isFinite () const
| Return `true` if all values along the diagonal are finite.
virtual bool | isValid () const

## Detailed Description

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

Diagonal preconditioner.

## Member Typedef Documentation

## ◆ BaseType

template<typename MatrixType>

using BaseType = Preconditioner<ValueType>

## ◆ Ptr

template<typename MatrixType>

using Ptr = SharedPtr<JacobiPreconditioner>

## ◆ ValueType

template<typename MatrixType>

using ValueType = typename MatrixType::ValueType

## ◆ VectorType

template<typename MatrixType>

using VectorType = Vector<ValueType>

## Constructor & Destructor Documentation

## ◆ JacobiPreconditioner()

template<typename MatrixType>

JacobiPreconditioner | ( | const MatrixType & | A | ) |
| inline

## ◆ ~JacobiPreconditioner()

template<typename MatrixType>

~JacobiPreconditioner | ( |  | ) |
| overridedefault

## Member Function Documentation

## ◆ apply()

template<typename MatrixType>

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

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

Parameters

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

Implements Preconditioner< MatrixType::ValueType >.

## ◆ isFinite()

template<typename MatrixType>

bool isFinite | ( |  | ) | const
| inline

Return `true` if all values along the diagonal are finite.

## ◆ isValid()

virtual bool isValid | ( |  | ) | const
| inlinevirtualinherited

Reimplemented in IncompleteCholeskyPreconditioner< MatrixType >.