CubbyFlow::FDMMGSolver2 Class Reference
2-D finite difference-type linear system solver using Multigrid. More...
#include <Core/Solver/FDM/FDMMGSolver2.hpp>
Inheritance diagram for CubbyFlow::FDMMGSolver2:
Public Member Functions | |
FDMMGSolver2 (size_t maxNumberOfLevels, unsigned int numberOfRestrictionIter=5, unsigned int numberOfCorrectionIter=5, unsigned int numberOfCoarsestIter=20, unsigned int numberOfFinalIter=20, double maxTolerance=1e-9, double sorFactor=1.5, bool useRedBlackOrdering=false) | |
Constructs the solver with given parameters. More... | |
const MGParameters< FDMBLAS2 > & | GetParams () const |
Returns the Multigrid parameters. More... | |
double | GetSORFactor () const |
Returns the SOR (Successive Over Relaxation) factor. More... | |
bool | GetUseRedBlackOrdering () const |
Returns true if red-black ordering is enabled. More... | |
bool | Solve (FDMLinearSystem2 *system) final |
No-op. Multigrid-type solvers do not solve FDMLinearSystem2. More... | |
virtual bool | Solve (FDMMGLinearSystem2 *system) |
Solves Multigrid linear system. 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... | |
virtual bool | SolveCompressed (FDMCompressedLinearSystem2 *) |
Solves the given compressed linear system. More... | |
Detailed Description
2-D finite difference-type linear system solver using Multigrid.
Constructor & Destructor Documentation
◆ FDMMGSolver2()
CubbyFlow::FDMMGSolver2::FDMMGSolver2 | ( | size_t | maxNumberOfLevels, |
unsigned int | numberOfRestrictionIter = 5 , |
||
unsigned int | numberOfCorrectionIter = 5 , |
||
unsigned int | numberOfCoarsestIter = 20 , |
||
unsigned int | numberOfFinalIter = 20 , |
||
double | maxTolerance = 1e-9 , |
||
double | sorFactor = 1.5 , |
||
bool | useRedBlackOrdering = false |
||
) |
Constructs the solver with given parameters.
Member Function Documentation
◆ GetParams()
const MGParameters<FDMBLAS2>& CubbyFlow::FDMMGSolver2::GetParams | ( | ) | const |
Returns the Multigrid parameters.
◆ GetSORFactor()
double CubbyFlow::FDMMGSolver2::GetSORFactor | ( | ) | const |
Returns the SOR (Successive Over Relaxation) factor.
◆ GetUseRedBlackOrdering()
bool CubbyFlow::FDMMGSolver2::GetUseRedBlackOrdering | ( | ) | const |
Returns true if red-black ordering is enabled.
◆ Solve() [1/2]
|
finalvirtual |
No-op. Multigrid-type solvers do not solve FDMLinearSystem2.
Implements CubbyFlow::FDMLinearSystemSolver2.
◆ Solve() [2/2]
|
virtual |
Solves Multigrid linear system.
Reimplemented in CubbyFlow::FDMMGPCGSolver2.
The documentation for this class was generated from the following file:
- Core/Solver/FDM/FDMMGSolver2.hpp