CubbyFlow::FDMJacobiSolver3 Class Referencefinal
3-D finite difference-type linear system solver using Jacobi method. More...
#include <Core/Solver/FDM/FDMJacobiSolver3.hpp>
Inheritance diagram for CubbyFlow::FDMJacobiSolver3:
Public Member Functions | |
FDMJacobiSolver3 (unsigned int maxNumberOfIterations, unsigned int residualCheckInterval, double tolerance) | |
Constructs the solver with given parameters. More... | |
bool | Solve (FDMLinearSystem3 *system) override |
Solves the given linear system. More... | |
bool | SolveCompressed (FDMCompressedLinearSystem3 *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::FDMLinearSystemSolver3 | |
FDMLinearSystemSolver3 ()=default | |
Default constructor. More... | |
FDMLinearSystemSolver3 (const FDMLinearSystemSolver3 &)=delete | |
Deleted copy constructor. More... | |
FDMLinearSystemSolver3 (FDMLinearSystemSolver3 &&) noexcept=delete | |
Deleted move constructor. More... | |
virtual | ~FDMLinearSystemSolver3 ()=default |
Default virtual destructor. More... | |
FDMLinearSystemSolver3 & | operator= (const FDMLinearSystemSolver3 &)=delete |
Deleted copy assignment operator. More... | |
FDMLinearSystemSolver3 & | operator= (FDMLinearSystemSolver3 &&) noexcept=delete |
Deleted move assignment operator. More... | |
Static Public Member Functions | |
static void | Relax (const FDMMatrix3 &A, const FDMVector3 &b, FDMVector3 *x, FDMVector3 *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
3-D finite difference-type linear system solver using Jacobi method.
Constructor & Destructor Documentation
◆ FDMJacobiSolver3()
CubbyFlow::FDMJacobiSolver3::FDMJacobiSolver3 | ( | unsigned int | maxNumberOfIterations, |
unsigned int | residualCheckInterval, | ||
double | tolerance | ||
) |
Constructs the solver with given parameters.
Member Function Documentation
◆ GetLastNumberOfIterations()
unsigned int CubbyFlow::FDMJacobiSolver3::GetLastNumberOfIterations | ( | ) | const |
Returns the last number of Jacobi iterations the solver made.
◆ GetLastResidual()
double CubbyFlow::FDMJacobiSolver3::GetLastResidual | ( | ) | const |
Returns the last residual after the Jacobi iterations.
◆ GetMaxNumberOfIterations()
unsigned int CubbyFlow::FDMJacobiSolver3::GetMaxNumberOfIterations | ( | ) | const |
Returns the max number of Jacobi iterations.
◆ GetTolerance()
double CubbyFlow::FDMJacobiSolver3::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::FDMLinearSystemSolver3.
◆ SolveCompressed()
|
overridevirtual |
Solves the given compressed linear system.
Reimplemented from CubbyFlow::FDMLinearSystemSolver3.
The documentation for this class was generated from the following file:
- Core/Solver/FDM/FDMJacobiSolver3.hpp