CFD Online Logo CFD Online URL
Home > Forums > General Forums > Main CFD Forum

Types of solvers

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree2Likes
  • 1 Post By zxaar
  • 1 Post By fresty

LinkBack Thread Tools Search this Thread Display Modes
Old   June 22, 2005, 03:04
Default Types of solvers
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?

  Reply With Quote

Old   June 22, 2005, 05:09
Default Re: Types of solvers
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
  Reply With Quote

Old   June 22, 2005, 11:17
Default Re: Types of solvers
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?
  Reply With Quote

Old   June 22, 2005, 11:48
Default Re: Types of solvers
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 Gauss-Siedel, 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.
  Reply With Quote

Old   June 22, 2005, 22:29
Default Re: Types of solvers
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.
aerosayan likes this.
  Reply With Quote

Old   April 14, 2019, 10:51
Join Date: Aug 2018
Posts: 78
Rep Power: 7
esha is on a distinguished road
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?
esha is offline   Reply With Quote

Old   April 14, 2019, 17:25
Senior Member
Join Date: Aug 2014
Location: UK
Posts: 213
Rep Power: 12
fresty is on a distinguished road
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 zero-sum 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. pre-defined intervals of space and time).
esha likes this.
fresty is offline   Reply With Quote


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

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

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

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