CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > General Forums > Main CFD Forum

Biconjugate AND Gauss-Seidel

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By LuckyTran

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   February 25, 2019, 08:59
Default Biconjugate AND Gauss-Seidel
  #1
Member
 
Join Date: Jan 2012
Location: Edmonton, CA
Posts: 87
Rep Power: 14
Torque_Converter is on a distinguished road
Send a message via AIM to Torque_Converter
Krylov methods like Biconjugate Gradient Stabilized method and stationary methods like Gauss-Seidel seem like different approaches to the same problem of solving a system of linear equations.

However, both methods seem to be employed simultaneously in commercial CFD codes. Is one sort of "wrapped" around the other?

The Krylov method is often labeled an acceleration technique, does that mean the system is solved first with Gauss then with Biconjugate? Is Biconjugate used only to generate a preconditioner matrix to then multiply into the system, which is then solved with Gauss?
Torque_Converter is offline   Reply With Quote

Old   February 25, 2019, 09:53
Default
  #2
Senior Member
 
Lucky
Join Date: Apr 2011
Location: Orlando, FL USA
Posts: 5,674
Rep Power: 65
LuckyTran has a spectacular aura aboutLuckyTran has a spectacular aura aboutLuckyTran has a spectacular aura about
They are different approaches (out of many many many) for solving linear systems, yes. Both are wholesome methods, meaning they are whole solvers.

Commercial codes often use an algebraic multi-grid method. And here, different equations often utilize different AMG styles which then use different linear solvers. Equations that use a fixed number of sweeps (V,W,F cycle) will often use a conjugate gradient method. Here I am not sure if Gauss-Siedel is used as a smoother or not, I would have to check, and it can vary depending on who writes the software. Equations that used a variable number of sweeps (flex cycle in Fluent and Star-CCM) will use Gauss-Siedel till the end.
Torque_Converter likes this.
LuckyTran is offline   Reply With Quote

Old   February 25, 2019, 09:56
Default
  #3
Senior Member
 
Join Date: Dec 2017
Posts: 153
Rep Power: 8
AliE is on a distinguished road
Quote:
Originally Posted by Torque_Converter View Post
Krylov methods like Biconjugate Gradient Stabilized method and stationary methods like Gauss-Seidel seem like different approaches to the same problem of solving a system of linear equations.

However, both methods seem to be employed simultaneously in commercial CFD codes. Is one sort of "wrapped" around the other?

The Krylov method is often labeled an acceleration technique, does that mean the system is solved first with Gauss then with Biconjugate? Is Biconjugate used only to generate a preconditioner matrix to then multiply into the system, which is then solved with Gauss?

Hi, I think it is not as you are actually writing.

Krilov methods are widely used to solve sparse linear systems and they improve drammatically the speed of your solver. Thus , yes, they do the same, but krilov methods are much more powerful!

Gauss Siedel is a very basics solver which can be often used as preconditioner. But also in this case you have much better.

What you usually do is build a preconditioner somehow (Jacobi, DILU, Gauss-Siedel like) and the solve the system with a krilov method.
AliE is offline   Reply With Quote

Old   February 25, 2019, 10:20
Default
  #4
Member
 
Join Date: Jan 2012
Location: Edmonton, CA
Posts: 87
Rep Power: 14
Torque_Converter is on a distinguished road
Send a message via AIM to Torque_Converter
Thanks, I think I see. So if solving the coupled mass+momenta+energy equations with something like the standard V-cycle, the Gauss-Seidel method may never be called, and instead the system is solved, at each grid level, via biconjugate gradient stabilized method? (I'm assuming here there isn't a convergence issue with biconjugate).

Then perhaps something like Gauss or ILU would be utilized by a solver which often utilizes flex cycle, like the segregated turbulence system?
Torque_Converter is offline   Reply With Quote

Old   February 25, 2019, 13:43
Default
  #5
Senior Member
 
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,768
Rep Power: 71
FMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura aboutFMDenaro has a spectacular aura about
GS method, but specifically the SOR method can be the best choice when you approach solutions of elliptic equations on structured grids. I can say that if you are looking for the lesser computational CPU time, it is suitable to use ad hoc programmed SOR rather than Krylov methods. Do not forget that you can write a parallel code also with the SOR method.
For more general algebric equations preconditioned Krylov methods are the best
FMDenaro is offline   Reply With Quote

Reply

Tags
biconjugate gradient, gauss-seidel, iterative methods


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On



All times are GMT -4. The time now is 22:31.