CubbyFlow::FDMJacobiSolver2 Class Referencefinal

2-D finite difference-type linear system solver using Jacobi method. More...

#include <Core/Solver/FDM/FDMJacobiSolver2.h>

Inheritance diagram for CubbyFlow::FDMJacobiSolver2:
CubbyFlow::FDMLinearSystemSolver2

Public Member Functions

 FDMJacobiSolver2 (unsigned int maxNumberOfIterations, unsigned int residualCheckInterval, double tolerance)
 Constructs the solver with given parameters. More...
 
bool Solve (FDMLinearSystem2 *system) override
 Solves the given linear system. More...
 
bool SolveCompressed (FDMCompressedLinearSystem2 *system) override
 Solves the given compressed linear system. More...
 
unsigned int GetMaxNumberOfIterations () const
 Returns the max number of Jacobi iterations. More...
 
unsigned int GetLastNumberOfIterations () const
 Returns the last number of Jacobi iterations the solver made. More...
 
double GetTolerance () const
 Returns the max residual tolerance for the Jacobi method. More...
 
double GetLastResidual () const
 Returns the last residual after the Jacobi iterations. More...
 
- Public Member Functions inherited from CubbyFlow::FDMLinearSystemSolver2
virtual ~FDMLinearSystemSolver2 ()=default
 

Static Public Member Functions

static void Relax (const FDMMatrix2 &A, const FDMVector2 &b, FDMVector2 *x, FDMVector2 *xTemp)
 Performs single Jacobi relaxation step. More...
 
static void Relax (const MatrixCSRD &A, const VectorND &b, VectorND *x, VectorND *xTemp)
 Performs single Jacobi relaxation step for compressed sys. More...
 

Detailed Description

2-D finite difference-type linear system solver using Jacobi method.

Constructor & Destructor Documentation

◆ FDMJacobiSolver2()

CubbyFlow::FDMJacobiSolver2::FDMJacobiSolver2 ( unsigned int  maxNumberOfIterations,
unsigned int  residualCheckInterval,
double  tolerance 
)

Constructs the solver with given parameters.

Member Function Documentation

◆ GetLastNumberOfIterations()

unsigned int CubbyFlow::FDMJacobiSolver2::GetLastNumberOfIterations ( ) const

Returns the last number of Jacobi iterations the solver made.

◆ GetLastResidual()

double CubbyFlow::FDMJacobiSolver2::GetLastResidual ( ) const

Returns the last residual after the Jacobi iterations.

◆ GetMaxNumberOfIterations()

unsigned int CubbyFlow::FDMJacobiSolver2::GetMaxNumberOfIterations ( ) const

Returns the max number of Jacobi iterations.

◆ GetTolerance()

double CubbyFlow::FDMJacobiSolver2::GetTolerance ( ) const

Returns the max residual tolerance for the Jacobi method.

◆ Relax() [1/2]

static void CubbyFlow::FDMJacobiSolver2::Relax ( const FDMMatrix2 A,
const FDMVector2 b,
FDMVector2 x,
FDMVector2 xTemp 
)
static

Performs single Jacobi relaxation step.

◆ Relax() [2/2]

static void CubbyFlow::FDMJacobiSolver2::Relax ( const MatrixCSRD A,
const VectorND b,
VectorND x,
VectorND xTemp 
)
static

Performs single Jacobi relaxation step for compressed sys.

◆ Solve()

bool CubbyFlow::FDMJacobiSolver2::Solve ( FDMLinearSystem2 system)
overridevirtual

Solves the given linear system.

Implements CubbyFlow::FDMLinearSystemSolver2.

◆ SolveCompressed()

bool CubbyFlow::FDMJacobiSolver2::SolveCompressed ( FDMCompressedLinearSystem2 system)
overridevirtual

Solves the given compressed linear system.

Reimplemented from CubbyFlow::FDMLinearSystemSolver2.


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