CubbyFlow::FDMJacobiSolver2 Class Referencefinal
2-D finite difference-type linear system solver using Jacobi method. More...
#include <Core/Solver/FDM/FDMJacobiSolver2.hpp>
Inheritance diagram for CubbyFlow::FDMJacobiSolver2:
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 | |
FDMLinearSystemSolver2 ()=default | |
Default constructor. More... | |
FDMLinearSystemSolver2 (const FDMLinearSystemSolver2 &)=delete | |
Deleted copy constructor. More... | |
FDMLinearSystemSolver2 (FDMLinearSystemSolver2 &&) noexcept=delete | |
Deleted move constructor. More... | |
virtual | ~FDMLinearSystemSolver2 ()=default |
Default virtual destructor. More... | |
FDMLinearSystemSolver2 & | operator= (const FDMLinearSystemSolver2 &)=delete |
Deleted copy assignment operator. More... | |
FDMLinearSystemSolver2 & | operator= (FDMLinearSystemSolver2 &&) noexcept=delete |
Deleted move assignment operator. More... | |
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 |
Performs single Jacobi relaxation step.
◆ Relax() [2/2]
|
static |
Performs single Jacobi relaxation step for compressed sys.
◆ Solve()
|
overridevirtual |
Solves the given linear system.
Implements CubbyFlow::FDMLinearSystemSolver2.
◆ SolveCompressed()
|
overridevirtual |
Solves the given compressed linear system.
Reimplemented from CubbyFlow::FDMLinearSystemSolver2.
The documentation for this class was generated from the following file:
- Core/Solver/FDM/FDMJacobiSolver2.hpp