OpenVDB 11.0.0

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | List of all members
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::v11_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 | ( |  | ) |
| 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 >.

## ◆ isFinite()

template<typename MatrixType >

bool isFinite | ( |  | ) | const
| inline

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

## ◆ isValid()

virtual bool isValid | ( |  | ) | const
| inline virtual inherited

Reimplemented in IncompleteCholeskyPreconditioner< MatrixType >.