
[Sponsors] 
June 22, 2005, 03:04 
Types of solvers

#1 
Guest
Posts: n/a

Hi I wish to find out about the different types of solvers that can be implemented in a CFD code. For example: CFX uses a Algebraic Multigrid solver Fluent uses either a segregated solver or a coupled implicit/explicit solver. I do not know what the difference between the two are?
Thanks 

June 22, 2005, 05:09 
Re: Types of solvers

#2 
Guest
Posts: n/a

A coupled solver solves for the Energy Equation at the same time it is solving the Momentum Equation The segregated solver solves the Energy equation after solving the momentum equation. If that is too short, ok, think of a time marching scheme and a SIMPLE type scheme


June 22, 2005, 11:17 
Re: Types of solvers

#3 
Guest
Posts: n/a

So what's an algebraic multigrid solver?
What type of solver would provide quick answers (though they must be right) what are structured solvers and unstructured solvers. are multigrid solvers and structured solvers interlinked by some chance? 

June 22, 2005, 11:48 
Re: Types of solvers

#4 
Guest
Posts: n/a

>> So what's an algebraic multigrid solver?
Algebraic Multigrid only refers to the numerical method used to invert a linear system of equations, such as one arising when solving a Poisson equation for the pressure. It does not refer to a specific strategy to solve the equations of Fluid Dynamics, such as SIMPLE. Other types of numerical methods that can be used are GaussSiedel, Successive over/under relaxation, conjugate gradient, etc. >> What type of solver would provide quick answers (though they must be right) In the limit, all convergent solvers must give you the same result. Some iterative techniques and their corresponding numerical methods are faster than some others, but it is difficult to generalize this to all problems of Fluid Mechanics. Most of the CFD community would agree that Multigrid Methods are fast in solving the Laplace / Poisson equation. >> what are structured solvers and unstructured solvers. I'm not sure of my answer, so please double check. I think: Structured / unstructured solvers refer to the ability of the solver to handle structured / unstructred grids. >> are multigrid solvers and structured solvers interlinked by some chance? The Multigrid algorithm can easily (and has) been adapted to problems on unstructured grids. I'm not sure of any interlinking. 

June 22, 2005, 22:29 
Re: Types of solvers

#5 
Guest
Posts: n/a

multigrids are more a strategy than a solver.
first of all the basic question is what do we solve when we talk about solvers. what we solve is set of linear equations we get after descretisation. that is for each variable i get the equation like this sum(A * phi) = source. A is coefficient and phi is variable, this variable could be u, v,w, p, kinetic energy, its dissipation etc. so after descretisation we get a set of such linear equations that we want to solve, for this purpose we need solver. so the solvers could be classified in three categories 1. segregated 2. coupled 3. krylov subspace solvers in segregated solvers, first we solve for u then for v then for w then for pressure (correction), then other things , in a segregated way , that is one by one. in coupled solvers, we make a set of such equations that involves (u,v,w,p) and we solve them together or coupled, hence the name coupled solvers. krylov subspace solvers like bicongigate gradient, GMRES etc. (i won't be able to write them in detail), for this you can search for some numerical method book. now what is multigrid, and why do we need it. the main reason we need multigrid is that the above mentioned solvers they can remove the local errors very fast but they are very slow to remove global errors (that is the errors those you find on larger grid scales). so the effect of this is that the solver stalls or it stops to remove errors (since all the local erros is gone and now the only errors are global erros, for which this is inefficient). to overcome this problem, what we do is to solve the equations on more coarser level (so when you go to more coarser levels, the global errors for finest level are now local errors), so we then again solve them with similar solvers thus reducing the errors further. and after we have the solution on coarser level , we can transfer the correction back to finest level. so a multigrid cyle would be : solve at finest level for some n1 iterations move to coaarser grid level solve here again transfer back the correction to finer level solve again at finer level repeat this till you get converged solution. , now at finest level or at anylevel you are free to use any solver u want: it could be gauss seidel, it could be Bicongigate stablised etc. now about structured and unstructured grids, usually gauss seidel works on both of them and so does krylov solvers. but on structured grids we have Stone's strongly implicit procedure that we do not have on unstructured grids. 

April 14, 2019, 10:51 

#6 
Member
Join Date: Aug 2018
Posts: 90
Rep Power: 8 
I come to know as I am reading about CFD different solvers are used to solve physical models under certain conditions. But I want to know as my teacher asked me that what is common in between all of these? what is the main purpose of a CFD solver?


April 14, 2019, 17:25 

#7 
Senior Member
Join Date: Aug 2014
Location: UK
Posts: 213
Rep Power: 13 
My answer may be too general but judging by your teacher's question it seems like there's an effort to provoke fundamental insight. I would welcome any corrections to my humble understanding.
On a very broad scale, the fundamental commonality between (and purpose of) all CFD solvers is to solve the mathematical relations (system of partial differential equations) encapsulating chosen/ all physical characteristics of fluid motion; mapped on spatial (grid) and temporal dimensions, while minimizing the error (maximizing accuracy) as well as computational expense. As maximization of accuracy and minimization of computational expense are known to be in a zerosum contest. Different CFD solvers differ mainly in choosing available mathematical algorithms to efficiently solve the system of equations and in performing justified trade offs between error and computational expense. The error is defined by the difference between an ideal continuous function on infinitely smooth space and time, and, its closest approximation performed on discrete set of data (i.e. predefined intervals of space and time). 

Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Reaction solvers  megacrout  OpenFOAM  5  July 8, 2011 10:54 
List/documentation of all BC/patch types of the OF solvers  kriz  OpenFOAM  7  May 8, 2010 16:54 
ODETest.C Compiling failed in version 1.6  sxhdhi  OpenFOAM Bugs  4  April 27, 2010 05:36 
unlocking material types in ICEM CFD  Evan  CFX  0  July 19, 2006 16:26 
PHOENICS Solvers  Hu  Phoenics  0  June 28, 2002 07:37 