What exactly smoother is in OpenFOAM's matrix solver
Hi, everyone
I am reading the code of matrix solvers of OpenFOAM, however, I found the implementation of smoothSolver is difficult to understand because the so-called smoother cannot be found in math textbooks and internet. Could anyone give me some hint on what exactly smoother is and how a smoothSolver works? |
Smoother is another name for sparse linear solver like Jacobi, Gauss Seidel and all.
It is called smoother because we do not use this to solve the linear system but rather quickly remove some part of error. Other than Jacobi, openfoam also uses ILU based smoother. |
Thanks, I just figured out that "smooth" means to smooth out some "spikes" in residual and decrease the residual. And the smoothSolver is just a class of iterative solver in which the iterative steps are implemented in "smoother". Comparing with Krylov-type solver, I think smoothSolver may need diagoal dominance as a sufficent condtion to work effectively.
|
All times are GMT -4. The time now is 13:31. |